HTTP Connection Request Smuggling

Impara l'hacking su AWS da zero a eroe con htARTE (Esperto Red Team AWS di HackTricks)!

Questo è un riassunto del post https://portswigger.net/research/browser-powered-desync-attacks

Attacchi allo Stato di Connessione

Validazione della Prima Richiesta

Nel routing delle richieste, i proxy inversi potrebbero dipendere dall'header Host per determinare il server di destinazione back-end, spesso basandosi su una whitelist di host che hanno accesso consentito. Tuttavia, in alcuni proxy esiste una vulnerabilità in cui la whitelist viene applicata solo alla richiesta iniziale in una connessione. Di conseguenza, gli attaccanti potrebbero sfruttare ciò effettuando prima una richiesta a un host consentito e poi richiedendo un sito interno attraverso la stessa connessione:

GET / HTTP/1.1
Host: [allowed-external-host]

GET / HTTP/1.1
Host: [internal-host]

Instradamento della prima richiesta

In alcune configurazioni, un server front-end potrebbe utilizzare l'intestazione Host della prima richiesta per determinare l'instradamento del back-end per quella richiesta, e quindi instradare in modo persistente tutte le richieste successive dalla stessa connessione del client alla stessa connessione del back-end. Questo può essere dimostrato come:

GET / HTTP/1.1
Host: example.com

POST /pwreset HTTP/1.1
Host: psres.net

Questo problema potenzialmente può essere combinato con attacchi all'intestazione Host, come il veleno per il reset della password o il veleno per la cache web, per sfruttare altre vulnerabilità o ottenere accesso non autorizzato ad host virtuali aggiuntivi.

Per identificare queste vulnerabilità, può essere utilizzata la funzionalità 'connection-state probe' in HTTP Request Smuggler.

Impara l'hacking di AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!

Last updated