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

55 lines
4.6 KiB
Markdown

# hop-by-hop headers
{{#include ../banners/hacktricks-training.md}}
<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 nodes (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.
Die 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 aan die webtoepassing voort 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 ge-kas 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 ge-kas antwoord, wat vir die aanvaller aangepas is, wat moontlik lei tot sessie-hijacking 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/" %}
{{#include ../banners/hacktricks-training.md}}