HTTP Connection Contamination

Support HackTricks

Questo è un riepilogo del post: https://portswigger.net/research/http-3-connection-contamination. Controllalo per ulteriori dettagli!

I browser web possono riutilizzare una singola connessione HTTP/2+ per diversi siti web attraverso HTTP connection coalescing, date indirizzi IP condivisi e un certificato TLS comune. Tuttavia, questo può confliggere con il first-request routing nei reverse proxy, dove le richieste successive sono dirette al back-end determinato dalla prima richiesta. Questo errore di instradamento può portare a vulnerabilità di sicurezza, particolarmente quando combinato con certificati TLS wildcard e domini come *.example.com.

Ad esempio, se wordpress.example.com e secure.example.com sono entrambi serviti dallo stesso reverse proxy e hanno un certificato wildcard comune, la coalescenza della connessione di un browser potrebbe portare le richieste a secure.example.com a essere elaborate erroneamente dal back-end di WordPress, sfruttando vulnerabilità come XSS.

Per osservare la coalescenza delle connessioni, si possono utilizzare la scheda Rete di Chrome o strumenti come Wireshark. Ecco un frammento per il test:

fetch('//sub1.hackxor.net/', {mode: 'no-cors', credentials: 'include'}).then(()=>{ fetch('//sub2.hackxor.net/', {mode: 'no-cors', credentials: 'include'}) })

La minaccia è attualmente limitata a causa della rarità del routing della prima richiesta e della complessità di HTTP/2. Tuttavia, le modifiche proposte in HTTP/3, che allentano il requisito di corrispondenza dell'indirizzo IP, potrebbero ampliare la superficie di attacco, rendendo i server con un certificato wildcard più vulnerabili senza necessità di un attacco MITM.

Le migliori pratiche includono l'evitare il routing della prima richiesta nei proxy inversi e prestare attenzione ai certificati TLS wildcard, specialmente con l'avvento di HTTP/3. Test regolari e consapevolezza di queste vulnerabilità complesse e interconnesse sono cruciali per mantenere la sicurezza web.

Support HackTricks

Last updated