hacktricks/pentesting-web/abusing-hop-by-hop-headers.md

80 lines
6.7 KiB
Markdown

# hop-by-hop headers
{% hint style="success" %}
Leer & oefen 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">\
Leer & oefen 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>
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>
{% endhint %}
<figure><img src="https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-L_2uGJGU7AVNRcqRvEi%2Fuploads%2FelPCTwoecVdnsfjxCZtN%2Fimage.png?alt=media&#x26;token=9ee4ff3e-92dc-471c-abfe-1c25e446a6ed" alt=""><figcaption></figcaption></figure>
[**RootedCON**](https://www.rootedcon.com/) is die mees relevante kuberveiligheid gebeurtenis in **Spanje** en een van die belangrikste in **Europa**. Met **die missie om tegniese kennis te bevorder**, is hierdie kongres 'n bruisende ontmoetingspunt vir tegnologie en kuberveiligheid professionele in elke dissipline.
{% embed url="https://www.rootedcon.com/" %}
***
**Dit is 'n opsomming van die pos** [**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 headers is spesifiek vir 'n enkele vervoer-niveau verbinding, hoofsaaklik gebruik in HTTP/1.1 vir die bestuur van data tussen twee knope (soos kliënt-proxy of proxy-proxy), en is nie bedoel om voortgegee te word nie. Standaard hop-by-hop headers sluit `Keep-Alive`, `Transfer-Encoding`, `TE`, `Connection`, `Trailer`, `Upgrade`, `Proxy-Authorization`, en `Proxy-Authenticate` in, soos gedefinieer in [RFC 2616](https://tools.ietf.org/html/rfc2616#section-13.5.1). Bykomende headers kan as hop-by-hop aangewys word via die `Connection` header.
### Misbruik van Hop-by-Hop Headers
Onbehoorlike bestuur van hop-by-hop headers deur proxies kan lei tot sekuriteitskwessies. Terwyl proxies verwag word om hierdie headers te verwyder, doen nie almal dit nie, wat potensiële kwesbaarhede skep.
### Toets vir Hop-by-Hop Header Hantering
Die hantering van hop-by-hop headers kan getoets word deur veranderinge in bediener antwoorde te observeer wanneer spesifieke headers as hop-by-hop gemerk word. Gereedskap en skripte kan hierdie proses outomatiseer, wat identifiseer hoe proxies hierdie headers bestuur en potensieel miskonfigurasies of proxy gedrag ontdek.
Misbruik van hop-by-hop headers kan lei tot verskeie sekuriteitsimplikasies. Hieronder is 'n paar voorbeelde wat demonstreer hoe hierdie headers gemanipuleer kan word vir potensiële aanvalle:
### Omseiling van Sekuriteitsbeheer met `X-Forwarded-For`
'n Aanvaller kan die `X-Forwarded-For` header manipuleer om IP-gebaseerde toegangbeheer te omseil. Hierdie header word dikwels deur proxies gebruik om die oorspronklike IP-adres van 'n kliënt te volg. As 'n proxy egter hierdie header as hop-by-hop behandel en dit sonder behoorlike validasie voortgee, kan 'n aanvaller hul IP-adres vervals.
**Aanval Scenario:**
1. Die aanvaller stuur 'n HTTP versoek na 'n webtoepassing agter 'n proxy, insluitend 'n vals IP-adres in die `X-Forwarded-For` header.
2. Die aanvaller sluit ook die `Connection: close, X-Forwarded-For` header in, wat die proxy aanmoedig om `X-Forwarded-For` as hop-by-hop te behandel.
3. Die miskonfigureerde proxy gee die versoek voort aan die webtoepassing sonder die vervalste `X-Forwarded-For` header.
4. Die webtoepassing, wat nie die oorspronklike `X-Forwarded-For` header sien nie, mag die versoek as komend direk van 'n vertroude proxy beskou, wat moontlik ongeoorloofde toegang toelaat.
### Cache Vergiftiging via Hop-by-Hop Header Inspuiting
As 'n cache bediener verkeerdelik inhoud kas op grond van hop-by-hop headers, kan 'n aanvaller kwaadwillige headers inspuit om die cache te vergiftig. Dit sou onakkurate of kwaadwillige inhoud aan gebruikers wat dieselfde hulpbron aan vra, dien.
**Aanval Scenario:**
1. 'n Aanvaller stuur 'n versoek na 'n webtoepassing met 'n hop-by-hop header wat nie gekas moet word nie (bv. `Connection: close, Cookie`).
2. Die swak geconfigureerde cache bediener verwyder nie die hop-by-hop header nie en kas die antwoord spesifiek vir die aanvaller se sessie.
3. Toekomstige gebruikers wat dieselfde hulpbron aan vra, ontvang die gekas antwoord, wat vir die aanvaller aangepas is, wat moontlik lei tot sessie oorname of blootstelling van sensitiewe inligting.
<figure><img src="https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-L_2uGJGU7AVNRcqRvEi%2Fuploads%2FelPCTwoecVdnsfjxCZtN%2Fimage.png?alt=media&#x26;token=9ee4ff3e-92dc-471c-abfe-1c25e446a6ed" alt=""><figcaption></figcaption></figure>
[**RootedCON**](https://www.rootedcon.com/) is die mees relevante kuberveiligheid gebeurtenis in **Spanje** en een van die belangrikste in **Europa**. Met **die missie om tegniese kennis te bevorder**, is hierdie kongres 'n bruisende ontmoetingspunt vir tegnologie en kuberveiligheid professionele in elke dissipline.
{% embed url="https://www.rootedcon.com/" %}
{% hint style="success" %}
Leer & oefen 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">\
Leer & oefen 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>
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>
{% endhint %}