mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-22 12:43:23 +00:00
60 lines
7.5 KiB
Markdown
60 lines
7.5 KiB
Markdown
# hop-by-hop headers
|
||
|
||
{% hint style="success" %}
|
||
Learn & practice AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||
Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||
|
||
<details>
|
||
|
||
<summary>Support HackTricks</summary>
|
||
|
||
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
|
||
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||
|
||
</details>
|
||
{% endhint %}
|
||
|
||
**Це резюме поста [https://nathandavison.com/blog/abusing-http-hop-by-hop-request-headers](https://nathandavison.com/blog/abusing-http-hop-by-hop-request-headers)**
|
||
|
||
Hop-by-hop заголовки специфічні для одного з'єднання на транспортному рівні, використовуються в основному в HTTP/1.1 для управління даними між двома вузлами (наприклад, клієнт-проксі або проксі-проксі) і не призначені для пересилання. Стандартні hop-by-hop заголовки включають `Keep-Alive`, `Transfer-Encoding`, `TE`, `Connection`, `Trailer`, `Upgrade`, `Proxy-Authorization` та `Proxy-Authenticate`, як визначено в [RFC 2616](https://tools.ietf.org/html/rfc2616#section-13.5.1). Додаткові заголовки можуть бути позначені як hop-by-hop через заголовок `Connection`.
|
||
|
||
### Зловживання Hop-by-Hop Заголовками
|
||
Неправильне управління hop-by-hop заголовками проксі може призвести до проблем з безпекою. Хоча від проксі очікується, що вони видалять ці заголовки, не всі це роблять, що створює потенційні вразливості.
|
||
|
||
### Тестування обробки Hop-by-Hop Заголовків
|
||
Обробку hop-by-hop заголовків можна протестувати, спостерігаючи за змінами у відповідях сервера, коли конкретні заголовки позначені як hop-by-hop. Інструменти та скрипти можуть автоматизувати цей процес, виявляючи, як проксі управляють цими заголовками та потенційно виявляючи неправильні налаштування або поведінку проксі.
|
||
|
||
Зловживання hop-by-hop заголовками може призвести до різних наслідків для безпеки. Нижче наведено кілька прикладів, які демонструють, як ці заголовки можуть бути маніпульовані для потенційних атак:
|
||
|
||
### Обхід Контролю Безпеки з `X-Forwarded-For`
|
||
Зловмисник може маніпулювати заголовком `X-Forwarded-For`, щоб обійти контроль доступу на основі IP. Цей заголовок часто використовується проксі для відстеження початкової IP-адреси клієнта. Однак, якщо проксі обробляє цей заголовок як hop-by-hop і пересилає його без належної перевірки, зловмисник може підробити свою IP-адресу.
|
||
|
||
**Сценарій Атаки:**
|
||
1. Зловмисник надсилає HTTP-запит до веб-додатку за проксі, включаючи підроблену IP-адресу в заголовку `X-Forwarded-For`.
|
||
2. Зловмисник також включає заголовок `Connection: close, X-Forwarded-For`, спонукаючи проксі обробляти `X-Forwarded-For` як hop-by-hop.
|
||
3. Неправильно налаштований проксі пересилає запит до веб-додатку без підробленого заголовка `X-Forwarded-For`.
|
||
4. Веб-додаток, не бачачи оригінального заголовка `X-Forwarded-For`, може вважати запит таким, що надходить безпосередньо з довіреного проксі, потенційно дозволяючи несанкціонований доступ.
|
||
|
||
### Отруєння Кешу через Впровадження Hop-by-Hop Заголовків
|
||
Якщо кеш-сервер неправильно кешує вміст на основі hop-by-hop заголовків, зловмисник може впровадити шкідливі заголовки, щоб отруїти кеш. Це призведе до надання неправильного або шкідливого вмісту користувачам, які запитують той самий ресурс.
|
||
|
||
**Сценарій Атаки:**
|
||
1. Зловмисник надсилає запит до веб-додатку з hop-by-hop заголовком, який не повинен кешуватися (наприклад, `Connection: close, Cookie`).
|
||
2. Погано налаштований кеш-сервер не видаляє hop-by-hop заголовок і кешує відповідь, специфічну для сесії зловмисника.
|
||
3. Майбутні користувачі, які запитують той самий ресурс, отримують кешовану відповідь, яка була адаптована для зловмисника, що потенційно призводить до викрадення сесії або розкриття чутливої інформації.
|
||
|
||
{% hint style="success" %}
|
||
Learn & practice AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
||
Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
||
|
||
<details>
|
||
|
||
<summary>Support HackTricks</summary>
|
||
|
||
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
|
||
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
|
||
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||
|
||
</details>
|
||
{% endhint %}
|