mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
55 lines
4.5 KiB
Markdown
55 lines
4.5 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&token=9ee4ff3e-92dc-471c-abfe-1c25e446a6ed" alt=""><figcaption></figcaption></figure>
|
|
|
|
[**RootedCON**](https://www.rootedcon.com/) je najrelevantnija sajber bezbednosna manifestacija u **Španiji** i jedna od najvažnijih u **Evropi**. Sa **misijom promovisanja tehničkog znanja**, ovaj kongres je vrelo okupljalište za profesionalce u tehnologiji i sajber bezbednosti u svakoj disciplini.
|
|
|
|
{% embed url="https://www.rootedcon.com/" %}
|
|
|
|
---
|
|
|
|
**Ovo je sažetak posta** [**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 zaglavlja su specifična za jednu transportnu vezu, koriste se prvenstveno u HTTP/1.1 za upravljanje podacima između dva čvora (kao što su klijent-proxy ili proxy-proxy) i nisu namenjena za prosleđivanje. Standardna hop-by-hop zaglavlja uključuju `Keep-Alive`, `Transfer-Encoding`, `TE`, `Connection`, `Trailer`, `Upgrade`, `Proxy-Authorization` i `Proxy-Authenticate`, kako je definisano u [RFC 2616](https://tools.ietf.org/html/rfc2616#section-13.5.1). Dodatna zaglavlja mogu biti označena kao hop-by-hop putem `Connection` zaglavlja.
|
|
|
|
### Abusing Hop-by-Hop Headers
|
|
|
|
Nepravilno upravljanje hop-by-hop zaglavljima od strane proksija može dovesti do bezbednosnih problema. Dok se od proksija očekuje da uklone ova zaglavlja, ne rade svi to, što stvara potencijalne ranjivosti.
|
|
|
|
### Testing for Hop-by-Hop Header Handling
|
|
|
|
Upravljanje hop-by-hop zaglavljima može se testirati posmatranjem promena u odgovorima servera kada su određena zaglavlja označena kao hop-by-hop. Alati i skripte mogu automatizovati ovaj proces, identifikujući kako proksiji upravljaju ovim zaglavljima i potencijalno otkrivajući pogrešne konfiguracije ili ponašanja proksija.
|
|
|
|
Zloupotreba hop-by-hop zaglavlja može dovesti do različitih bezbednosnih implikacija. Ispod su dva primera koja pokazuju kako se ova zaglavlja mogu manipulisati za potencijalne napade:
|
|
|
|
### Bypassing Security Controls with `X-Forwarded-For`
|
|
|
|
Napadač može manipulisati `X-Forwarded-For` zaglavljem kako bi zaobišao IP-bazirane kontrole pristupa. Ovo zaglavlje se često koristi od strane proksija za praćenje izvorne IP adrese klijenta. Međutim, ako proksi tretira ovo zaglavlje kao hop-by-hop i prosledi ga bez pravilne validacije, napadač može lažirati svoju IP adresu.
|
|
|
|
**Scenarijo napada:**
|
|
|
|
1. Napadač šalje HTTP zahtev web aplikaciji iza proksija, uključujući lažnu IP adresu u `X-Forwarded-For` zaglavlju.
|
|
2. Napadač takođe uključuje `Connection: close, X-Forwarded-For` zaglavlje, podstičući proksi da tretira `X-Forwarded-For` kao hop-by-hop.
|
|
3. Pogrešno konfigurisani proksi prosleđuje zahtev web aplikaciji bez lažiranog `X-Forwarded-For` zaglavlja.
|
|
4. Web aplikacija, ne videći originalno `X-Forwarded-For` zaglavlje, može smatrati zahtev kao da dolazi direktno iz pouzdanog proksija, potencijalno omogućavajući neovlašćen pristup.
|
|
|
|
### Cache Poisoning via Hop-by-Hop Header Injection
|
|
|
|
Ako server za keširanje pogrešno kešira sadržaj na osnovu hop-by-hop zaglavlja, napadač može injektovati zlonamerna zaglavlja kako bi otrovao keš. Ovo bi poslužilo netačan ili zlonameran sadržaj korisnicima koji traže isti resurs.
|
|
|
|
**Scenarijo napada:**
|
|
|
|
1. Napadač šalje zahtev web aplikaciji sa hop-by-hop zaglavljem koje ne bi trebalo da se kešira (npr. `Connection: close, Cookie`).
|
|
2. Loše konfigurisani server za keširanje ne uklanja hop-by-hop zaglavlje i kešira odgovor specifičan za napadačevu sesiju.
|
|
3. Budući korisnici koji traže isti resurs dobijaju keširani odgovor, koji je bio prilagođen napadaču, potencijalno dovodeći do preuzimanja sesije ili izlaganja osetljivih informacija.
|
|
|
|
<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&token=9ee4ff3e-92dc-471c-abfe-1c25e446a6ed" alt=""><figcaption></figcaption></figure>
|
|
|
|
[**RootedCON**](https://www.rootedcon.com/) je najrelevantnija sajber bezbednosna manifestacija u **Španiji** i jedna od najvažnijih u **Evropi**. Sa **misijom promovisanja tehničkog znanja**, ovaj kongres je vrelo okupljalište za profesionalce u tehnologiji i sajber bezbednosti u svakoj disciplini.
|
|
|
|
{% embed url="https://www.rootedcon.com/" %}
|
|
|
|
{{#include ../banners/hacktricks-training.md}}
|