hacktricks/pentesting-web/http-connection-request-smuggling.md

4 KiB

HTTP Connection Request Smuggling

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

To jest podsumowanie posta https://portswigger.net/research/browser-powered-desync-attacks

Ataki stanu połączenia

Walidacja pierwszego żądania

Podczas routingu żądań, serwery proxy mogą polegać na nagłówku Host, aby określić docelowy serwer zaplecza, często opierając się na białej liście hostów, którym zezwolono na dostęp. Jednak w niektórych proxy istnieje luka, w której biała lista jest egzekwowana tylko w przypadku początkowego żądania w połączeniu. W związku z tym, atakujący mogą to wykorzystać, najpierw wysyłając żądanie do dozwolonego hosta, a następnie żądając dostępu do wewnętrznej strony przez to samo połączenie:

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

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

First-request Routing

W niektórych konfiguracjach serwer front-end może używać nagłówka Host pierwszego żądania do określenia routingu back-end dla tego żądania, a następnie trwale kierować wszystkie kolejne żądania z tego samego połączenia klienta do tego samego połączenia back-end. Można to zademonstrować jako:

GET / HTTP/1.1
Host: example.com

POST /pwreset HTTP/1.1
Host: psres.net

To zagadnienie może być potencjalnie połączone z atakami na nagłówek Host, takimi jak złośliwe resetowanie hasła lub zatrucie pamięci podręcznej, aby wykorzystać inne luki lub uzyskać nieautoryzowany dostęp do dodatkowych wirtualnych hostów.

{% hint style="info" %} Aby zidentyfikować te luki, można wykorzystać funkcję 'connection-state probe' w HTTP Request Smuggler. {% endhint %}

{% hint style="success" %} Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Wsparcie dla HackTricks
{% endhint %}