# hop-by-hop headers
{% hint style="success" %}
Learn & practice AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
Learn & practice GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Support HackTricks
* 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.
{% endhint %}
**To jest podsumowanie posta [https://nathandavison.com/blog/abusing-http-hop-by-hop-request-headers](https://nathandavison.com/blog/abusing-http-hop-by-hop-request-headers)**
Nag艂贸wki hop-by-hop s膮 specyficzne dla pojedynczego po艂膮czenia na poziomie transportu, u偶ywane g艂贸wnie w HTTP/1.1 do zarz膮dzania danymi mi臋dzy dwoma w臋z艂ami (takimi jak klient-proxy lub proxy-proxy) i nie s膮 przeznaczone do przekazywania. Standardowe nag艂贸wki hop-by-hop obejmuj膮 `Keep-Alive`, `Transfer-Encoding`, `TE`, `Connection`, `Trailer`, `Upgrade`, `Proxy-Authorization` i `Proxy-Authenticate`, zgodnie z definicj膮 w [RFC 2616](https://tools.ietf.org/html/rfc2616#section-13.5.1). Dodatkowe nag艂贸wki mog膮 by膰 oznaczone jako hop-by-hop za pomoc膮 nag艂贸wka `Connection`.
### Abusing Hop-by-Hop Headers
Nieprawid艂owe zarz膮dzanie nag艂贸wkami hop-by-hop przez proxy mo偶e prowadzi膰 do problem贸w z bezpiecze艅stwem. Chocia偶 od proxy oczekuje si臋 usuni臋cia tych nag艂贸wk贸w, nie wszystkie to robi膮, co stwarza potencjalne luki.
### Testing for Hop-by-Hop Header Handling
Zarz膮dzanie nag艂贸wkami hop-by-hop mo偶na testowa膰, obserwuj膮c zmiany w odpowiedziach serwera, gdy konkretne nag艂贸wki s膮 oznaczone jako hop-by-hop. Narz臋dzia i skrypty mog膮 zautomatyzowa膰 ten proces, identyfikuj膮c, jak proxy zarz膮dzaj膮 tymi nag艂贸wkami i potencjalnie odkrywaj膮c b艂臋dne konfiguracje lub zachowania proxy.
Nadu偶ywanie nag艂贸wk贸w hop-by-hop mo偶e prowadzi膰 do r贸偶nych implikacji bezpiecze艅stwa. Poni偶ej znajduj膮 si臋 dwa przyk艂ady ilustruj膮ce, jak te nag艂贸wki mog膮 by膰 manipulowane w celu potencjalnych atak贸w:
### Bypassing Security Controls with `X-Forwarded-For`
Atakuj膮cy mo偶e manipulowa膰 nag艂贸wkiem `X-Forwarded-For`, aby obej艣膰 kontrol臋 dost臋pu opart膮 na IP. Ten nag艂贸wek jest cz臋sto u偶ywany przez proxy do 艣ledzenia oryginalnego adresu IP klienta. Jednak je艣li proxy traktuje ten nag艂贸wek jako hop-by-hop i przekazuje go bez odpowiedniej walidacji, atakuj膮cy mo偶e sfa艂szowa膰 sw贸j adres IP.
**Scenariusz ataku:**
1. Atakuj膮cy wysy艂a 偶膮danie HTTP do aplikacji internetowej za proxy, w tym fa艂szywy adres IP w nag艂贸wku `X-Forwarded-For`.
2. Atakuj膮cy r贸wnie偶 do艂膮cza nag艂贸wek `Connection: close, X-Forwarded-For`, co sk艂ania proxy do traktowania `X-Forwarded-For` jako hop-by-hop.
3. 殴le skonfigurowane proxy przekazuje 偶膮danie do aplikacji internetowej bez sfa艂szowanego nag艂贸wka `X-Forwarded-For`.
4. Aplikacja internetowa, nie widz膮c oryginalnego nag艂贸wka `X-Forwarded-For`, mo偶e uzna膰 偶膮danie za pochodz膮ce bezpo艣rednio z zaufanego proxy, co potencjalnie umo偶liwia nieautoryzowany dost臋p.
### Cache Poisoning via Hop-by-Hop Header Injection
Je艣li serwer cache'uj膮cy b艂臋dnie buforuje zawarto艣膰 na podstawie nag艂贸wk贸w hop-by-hop, atakuj膮cy mo偶e wstrzykn膮膰 z艂o艣liwe nag艂贸wki, aby zatru膰 pami臋膰 podr臋czn膮. To spowoduje dostarczenie nieprawid艂owej lub z艂o艣liwej zawarto艣ci u偶ytkownikom 偶膮daj膮cym tego samego zasobu.
**Scenariusz ataku:**
1. Atakuj膮cy wysy艂a 偶膮danie do aplikacji internetowej z nag艂贸wkiem hop-by-hop, kt贸ry nie powinien by膰 buforowany (np. `Connection: close, Cookie`).
2. 殴le skonfigurowany serwer cache'uj膮cy nie usuwa nag艂贸wka hop-by-hop i buforuje odpowied藕 specyficzn膮 dla sesji atakuj膮cego.
3. Przyszli u偶ytkownicy 偶膮daj膮cy tego samego zasobu otrzymuj膮 buforowan膮 odpowied藕, kt贸ra by艂a dostosowana do atakuj膮cego, co potencjalnie prowadzi do przej臋cia sesji lub ujawnienia wra偶liwych informacji.
{% hint style="success" %}
Learn & practice AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
Learn & practice GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Support HackTricks
* 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.
{% endhint %}