hacktricks/pentesting-web/http-connection-request-smuggling.md
2024-02-10 13:03:23 +00:00

4.3 KiB

HTTP Connection Request Smuggling

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

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'intestazione Host per determinare il server di destinazione di back-end, spesso basandosi su una whitelist di host che hanno accesso consentito. Tuttavia, esiste una vulnerabilità in alcuni proxy 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 successivamente richiedendo un sito interno attraverso la stessa connessione:

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

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

Questa vulnerabilità fortunatamente non è diffusa.

Instradamento della prima richiesta

In alcune configurazioni, un server front-end può 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 può potenzialmente essere combinato con attacchi all'intestazione dell'host, come l'avvelenamento del reset della password o l'avvelenamento della cache web, per sfruttare altre vulnerabilità o ottenere accesso non autorizzato ad altri host virtuali.

{% hint style="info" %} Per identificare queste vulnerabilità, è possibile utilizzare la funzionalità 'connection-state probe' in HTTP Request Smuggler. {% endhint %}

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