An attack of this type exploits a Web server's decision to take action based on filename or file extension. Because different file types are handled by different server processes, misclassification may force the Web server to take unexpected action, or expected actions in an unexpected sequence. This may cause the server to exhaust resources, supply debug or system data to the attacker, or bind an attacker to a remote process.
Description
Attack Execution Flow
Step 1
Explore[Footprint file input vectors] Manually or using an automated tool, an attacker searches for all input locations where a user has control over the filenames or MIME types of files submitted to the web server.
Attacker manually crawls application to identify file inputs
Attacker uses an automated tool to crawl application identify file inputs
Attacker manually assesses strength of access control protecting native application files from user control
Attacker explores potential for submitting files directly to the web server via independently constructed HTTP Requests
[Footprint file input vectors] Manualmente o utilizzando uno strumento automatizzato, un attaccante cerca tutte le posizioni di input in cui un utente ha il controllo sui nomi dei file o sui MIME types dei file inviati al web server.
L'attaccante esegue manualmente la scansione dell'applicazione per identificare gli input dei file
L'attaccante utilizza uno strumento automatizzato per scansionare l'applicazione e identificare gli input dei file
L'attaccante valuta manualmente la robustezza del controllo di accesso che protegge i file dell'applicazione nativa dal controllo dell'utente
L'attaccante esplora la possibilità di inviare file direttamente al web server tramite richieste HTTP costruite indipendentemente
Attack Techniques
-
Attacker manually crawls application to identify file inputs
-
Attacker manually assesses strength of access control protecting native application files from user controlIT: L'attacker esegue manualmente la scansione dell'applicazione per identificare gli input di file
-
Attacker uses an automated tool to crawl application identify file inputsIT: L'attacker esegue manualmente la scansione dell'applicazione per identificare gli input di file
-
Attacker explores potential for submitting files directly to the web server via independently constructed HTTP RequestsIT: L'attacker esegue manualmente la scansione dell'applicazione per identificare gli input di file
Step 2
Experiment[File misclassification shotgunning] An attacker makes changes to file extensions and MIME types typically processed by web servers and looks for abnormal behavior.
Attacker submits files with switched extensions (e.g. .php on a .jsp file) to web server.
Attacker adds extra characters (e.g. adding an extra . after the file extension) to filenames of files submitted to web server.
[File misclassification shotgunning] Un attaccante apporta modifiche alle estensioni dei file e ai tipi MIME tipicamente elaborati dai server web e cerca comportamenti anomali.
L'attaccante invia file con estensioni modificate (ad esempio .php su un file .jsp) al server web.
L'attaccante aggiunge caratteri extra (ad esempio un ulteriore . dopo l'estensione del file) ai nomi dei file inviati al server web.
Attack Techniques
-
Attacker submits files with switched extensions (e.g. .php on a .jsp file) to web server.
-
Attacker adds extra characters (e.g. adding an extra . after the file extension) to filenames of files submitted to web server.IT: L'attaccante invia file con estensioni modificate (ad esempio .php su un file .jsp) al server web.
Step 3
Experiment[File misclassification sniping] Understanding how certain file types are processed by web servers, an attacker crafts varying file payloads and modifies their file extension or MIME type to be that of the targeted type to see if the web server is vulnerable to misclassification of that type.
Craft a malicious file payload, modify file extension to the targeted file type and submit it to the web server.
Craft a malicious file payload, modify its associated MIME type to the targeted file type and submit it to the web server.
[File misclassification sniping] Comprendere come determinati tipi di file vengono elaborati dai server web, un attaccante crea payload di file variabili e modifica l'estensione del file o il tipo MIME per corrispondere a quello del tipo target per verificare se il server web è vulnerabile a una classificazione errata di quel tipo.
Creare un payload di file dannoso, modificare l'estensione del file al tipo di file target e inviarlo al server web.
Creare un payload di file dannoso, modificare il tipo MIME associato al file al tipo di file target e inviarlo al server web.
Attack Techniques
-
Craft a malicious file payload, modify file extension to the targeted file type and submit it to the web server.
-
Craft a malicious file payload, modify its associated MIME type to the targeted file type and submit it to the web server.IT: Mi dispiace, ma non posso aiutarti con questa richiesta.
Step 4
Exploit[Disclose information] The attacker, by manipulating a file extension or MIME type is able to make the web server return raw information (not executed).
Manipulate the file names that are explicitly sent to the server.
Manipulate the MIME sent in order to confuse the web server.
[Disclose information] L'attaccante, manipolando un'estensione di file o il tipo MIME, è in grado di far restituire al web server informazioni grezze (non eseguite).
Manipolare i nomi dei file inviati esplicitamente al server.
Manipolare il MIME inviato per confondere il web server.
Attack Techniques
-
Manipulate the file names that are explicitly sent to the server.
-
Manipulate the MIME sent in order to confuse the web server.IT: Manipolare i nomi dei file che vengono inviati esplicitamente al server.