hacktricks/pentesting-web/abusing-hop-by-hop-headers.md
2024-02-10 13:11:20 +00:00

54 lines
5.7 KiB
Markdown

# Hop-by-hop zaglavlja
<details>
<summary><strong>Naučite hakovanje AWS-a od nule do heroja sa</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Da li radite u **cybersecurity kompaniji**? Želite li da vidite svoju **kompaniju reklamiranu na HackTricks-u**? Ili želite da imate pristup **najnovijoj verziji PEASS-a ili preuzmete HackTricks u PDF formatu**? Proverite [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* Otkrijte [**The PEASS Family**](https://opensea.io/collection/the-peass-family), našu kolekciju ekskluzivnih [**NFT-ova**](https://opensea.io/collection/the-peass-family)
* Nabavite [**zvanični PEASS & HackTricks swag**](https://peass.creator-spring.com)
* **Pridružite se** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili me **pratite** na **Twitter-u** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Podelite svoje hakovanje trikove slanjem PR-ova na [hacktricks repo](https://github.com/carlospolop/hacktricks) i [hacktricks-cloud repo](https://github.com/carlospolop/hacktricks-cloud)**.
</details>
**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, uglavnom se koriste u HTTP/1.1 za upravljanje podacima između dve čvorove (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 zaglavlja `Connection`.
### Zloupotreba Hop-by-Hop zaglavlja
Nepropisno upravljanje hop-by-hop zaglavlja od strane proxy-ja može dovesti do sigurnosnih problema. Iako se očekuje da proxy-ji uklone ova zaglavlja, neki to ne čine, što stvara potencijalne ranjivosti.
### Testiranje obrade Hop-by-Hop zaglavlja
Obrada hop-by-hop zaglavlja može se testirati posmatranjem promena u odgovorima servera kada se određena zaglavlja označe kao hop-by-hop. Alati i skripte mogu automatizovati ovaj proces, identifikujući kako proxy-ji upravljaju ovim zaglavljima i potencijalno otkrivajući loše konfiguracije ili ponašanja proxy-ja.
Zloupotreba hop-by-hop zaglavlja može dovesti do različitih sigurnosnih implikacija. U nastavku su prikazani neki primeri koji pokazuju kako se ova zaglavlja mogu manipulisati u potencijalne napade:
### Zaobilaženje sigurnosnih kontrola pomoću `X-Forwarded-For`
Napadač može manipulisati zaglavljem `X-Forwarded-For` kako bi zaobišao kontrolu pristupa zasnovanu na IP adresi. Ovo zaglavlje se često koristi od strane proxy-ja kako bi pratili IP adresu porekla klijenta. Međutim, ako proxy tretira ovo zaglavlje kao hop-by-hop i prosleđuje ga bez odgovarajuće validacije, napadač može lažirati svoju IP adresu.
**Scenario napada:**
1. Napadač šalje HTTP zahtev veb aplikaciji iza proxy-ja, uključujući lažnu IP adresu u zaglavlju `X-Forwarded-For`.
2. Napadač takođe uključuje zaglavlje `Connection: close, X-Forwarded-For`, što natera proxy da tretira `X-Forwarded-For` kao hop-by-hop.
3. Loše konfigurisani proxy prosleđuje zahtev veb aplikaciji bez lažnog zaglavlja `X-Forwarded-For`.
4. Veb aplikacija, ne videći originalno zaglavlje `X-Forwarded-For`, može smatrati zahtev dolazi direktno od pouzdanog proxy-ja, što potencijalno omogućava neovlašćen pristup.
### Trovanje keša putem ubacivanja zaglavlja Hop-by-Hop
Ako keš server netačno kešira sadržaj na osnovu hop-by-hop zaglavlja, napadač može ubaciti zlonamerna zaglavlja kako bi otrovao keš. Ovo bi poslužilo netačan ili zlonameran sadržaj korisnicima koji zahtevaju isti resurs.
**Scenario napada:**
1. Napadač šalje zahtev veb aplikaciji sa zaglavljem hop-by-hop koje ne bi trebalo da se kešira (npr. `Connection: close, Cookie`).
2. Loše konfigurisani keš server ne uklanja hop-by-hop zaglavlje i kešira odgovor specifičan za sesiju napadača.
3. Budući korisnici koji zahtevaju isti resurs dobijaju keširan odgovor, koji je prilagođen napadaču, što potencijalno dovodi do preuzimanja sesije ili otkrivanja osetljivih informacija.
<details>
<summary><strong>Naučite hakovanje AWS-a od nule do heroja sa</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Da li radite u **cybersecurity kompaniji**? Želite li da vidite svoju **kompaniju reklamiranu na HackTricks-u**? Ili želite da imate pristup **najnovijoj verziji PEASS-a ili preuzmete HackTricks u PDF formatu**? Proverite [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
* Otkrijte [**The PEASS Family**](https://opensea.io/collection/the-peass-family), našu kolekciju ekskluzivnih [**NFT-ova**](https://opensea.io/collection/the-peass-family)
* Nabavite [**zvanični PEASS & HackTricks swag**](https://peass.creator-spring.com)
* **Pridružite se** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili me **pratite** na **Twitter-u** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Podelite svoje hakovanje trikove slanjem PR-ova na [hacktricks repo](https://github.com/carlospolop/hacktricks) i [hacktricks-cloud repo](https://github.com/carlospolop/hacktricks-cloud)**.
</details>