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

4.9 KiB
Raw Blame History

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 %}

Це резюме посту https://portswigger.net/research/browser-powered-desync-attacks

Атаки на стан з'єднання

Валідація першого запиту

При маршрутизації запитів зворотні проксі можуть покладатися на заголовок Host, щоб визначити сервер призначення, часто спираючись на білий список хостів, яким дозволено доступ. Однак у деяких проксі існує вразливість, де білий список застосовується лише до початкового запиту в з'єднанні. Внаслідок цього зловмисники можуть скористатися цим, спочатку зробивши запит до дозволеного хоста, а потім запитуючи внутрішній сайт через те ж з'єднання:

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

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

First-request Routing

В деяких конфігураціях, фронтальний сервер може використовувати заголовок Host першого запиту для визначення маршрутизації на бекенді для цього запиту, а потім постійно маршрутизувати всі наступні запити з того ж клієнтського з'єднання до того ж бекенд-з'єднання. Це можна продемонструвати так:

GET / HTTP/1.1
Host: example.com

POST /pwreset HTTP/1.1
Host: psres.net

Цю проблему можна потенційно поєднати з атаками заголовка Host, такими як отруєння скидання пароля або отруєння веб-кешу, щоб експлуатувати інші вразливості або отримати несанкціонований доступ до додаткових віртуальних хостів.

{% hint style="info" %} Щоб виявити ці вразливості, можна використовувати функцію 'connection-state probe' в HTTP Request Smuggler. {% endhint %}

{% hint style="success" %} Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Підтримати HackTricks
{% endhint %}