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

5.7 KiB

Hop-by-hop zaglavlja

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Ovo je sažetak posta 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. 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.
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!