Cross Site Tracing (XST) enables an adversary to steal the victim's session cookie and possibly other authentication credentials transmitted in the header of the HTTP request when the victim's browser communicates to a destination system's web server.
Description
Attack Execution Flow
Step 1
Explore[Determine if HTTP Trace is enabled] Determine if HTTP Trace is enabled at the web server with which the victim has an active session
An adversary may issue an HTTP Trace request to the target web server and observe if the response arrives with the original request in the body of the response.
[Verifica se HTTP Trace è abilitato] Determina se HTTP Trace è abilitato sul server web con cui la vittima ha una sessione attiva
Un adversary può inviare una richiesta HTTP Trace al server web di destinazione e osservare se la risposta arriva con la richiesta originale nel corpo della risposta.
Attack Techniques
-
An adversary may issue an HTTP Trace request to the target web server and observe if the response arrives with the original request in the body of the response.
Step 2
Experiment[Identify mechanism to launch HTTP Trace request] The adversary attempts to force the victim to issue an HTTP Trace request to the targeted application.
The adversary probes for cross-site scripting vulnerabilities to force the victim into issuing an HTTP Trace request.
[Identificare il meccanismo per avviare una richiesta HTTP Trace] L'attaccante tenta di costringere la vittima a inviare una richiesta HTTP Trace all'applicazione target.
L'attaccante esegue sondaggi alla ricerca di vulnerabilità di cross-site scripting per indurre la vittima a inviare una richiesta HTTP Trace.
Attack Techniques
-
The adversary probes for cross-site scripting vulnerabilities to force the victim into issuing an HTTP Trace request.
Step 3
Exploit[Create a malicious script that pings the web server with HTTP TRACE request] The adversary creates a malicious script that will induce the victim's browser to issue an HTTP TRACE request to the destination system's web server. The script will further intercept the response from the web server, pick up sensitive information out of it, and forward to the site controlled by the adversary.
The adversary's malicious script circumvents the httpOnly cookie attribute that prevents from hijacking the victim's session cookie directly using document.cookie and instead leverages the HTTP TRACE to catch this information from the header of the HTTP request once it is echoed back from the web server in the body of the HTTP TRACE response.
[Creare uno script dannoso che effettua un ping al web server con una richiesta HTTP TRACE] L'attore malevolo crea uno script dannoso che induce il browser della vittima a inviare una richiesta HTTP TRACE al server web di destinazione. Lo script intercetta ulteriormente la risposta dal web server, estrae informazioni sensibili e le inoltra al sito controllato dall'attore malevolo.
Lo script dannoso dell'attore malevolo aggira l'attributo httpOnly del cookie, che impedisce di di hijacking diretto del cookie di sessione della vittima tramite document.cookie, sfruttando invece l'HTTP TRACE per catturare queste informazioni dall'intestazione della richiesta HTTP una volta che essa viene restituita dal web server nel corpo della risposta HTTP TRACE.
Attack Techniques
-
The adversary's malicious script circumvents the httpOnly cookie attribute that prevents from hijacking the victim's session cookie directly using document.cookie and instead leverages the HTTP TRACE to catch this information from the header of the HTTP request once it is echoed back from the web server in the body of the HTTP TRACE response.
Step 4
Exploit[Execute malicious HTTP Trace launching script] The adversary leverages an XSS vulnerability to force the victim to execute the malicious HTTP Trace launching script
[Esecuzione di script dannoso per lanciare HTTP Trace] L'attore adversario sfrutta una vulnerabilità XSS per costringere la vittima ad eseguire lo script dannoso per il lancio di HTTP Trace
Step 5
Exploit[Intercept HTTP TRACE response] The adversary's script intercepts the HTTP TRACE response from teh web server, glance sensitive information from it, and forward that information to a server controlled by the adversary.
[Intercetta la risposta HTTP TRACE] Lo script dell'avversario intercetta la risposta HTTP TRACE dal server web, estrae informazioni sensibili e inoltra tali informazioni a un server controllato dall'avversario.