6.2 KiB
Parameter Pollution
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!
Drugi načini podrške HackTricks-u:
- Ako želite da vidite vašu kompaniju reklamiranu na HackTricks-u ili preuzmete HackTricks u PDF formatu proverite SUBSCRIPTION PLANS!
- Nabavite zvanični PEASS & HackTricks swag
- Otkrijte The PEASS Family, našu kolekciju ekskluzivnih NFT-ova
- Pridružite se 💬 Discord grupi ili telegram grupi ili nas pratite na Twitter-u 🐦 @carlospolopm.
- Podelite svoje hakovanje trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Pregled HTTP Parameter Pollution (HPP)
HTTP Parameter Pollution (HPP) je tehnika u kojoj napadači manipulišu HTTP parametrima kako bi promenili ponašanje veb aplikacije na neželjen način. Ova manipulacija se vrši dodavanjem, izmenom ili dupliciranjem HTTP parametara. Efekat ovih manipulacija nije direktno vidljiv korisniku, ali može značajno izmeniti funkcionalnost aplikacije na serverskoj strani, sa vidljivim posledicama na klijentskoj strani.
Primer HTTP Parameter Pollution (HPP)
URL transakcije bankovne aplikacije:
- Originalni URL:
https://www.victim.com/send/?from=accountA&to=accountB&amount=10000
Ubacivanjem dodatnog from
parametra:
- Manipulisani URL:
https://www.victim.com/send/?from=accountA&to=accountB&amount=10000&from=accountC
Transakcija može biti netačno naplaćena sa računa accountC
umesto sa računa accountA
, što pokazuje potencijal HPP-a za manipulaciju transakcijama ili drugim funkcionalnostima kao što su resetovanje lozinke, podešavanje dvofaktorne autentifikacije ili zahtevi za API ključem.
Razlaganje parametara specifično za tehnologiju
- Način na koji se parametri razlažu i prioritizuju zavisi od osnovne veb tehnologije, što utiče na to kako se HPP može iskoristiti.
- Alati poput Wappalyzer pomažu u identifikaciji ovih tehnologija i njihovog razlaganja parametara.
PHP i iskorišćavanje HPP-a
Slučaj manipulacije OTP-om:
- Kontekst: Mehanizam prijave koji zahteva jednokratnu lozinku (OTP) je iskorišćen.
- Metod: Napadači su duplirali
email
parametar u HTTP zahtevu tako što su presreli zahtev za OTP korišćenjem alata poput Burp Suite-a. - Ishod: OTP, namenjen prvobitnom email-u, umesto toga je poslat na drugu email adresu navedenu u manipulisanom zahtevu. Ova greška je omogućila neovlašćen pristup zaobilazeći namensku sigurnosnu meru.
Ovaj scenario ističe kritičan propust u serverskoj strani aplikacije, koja je obradila prvi email
parametar za generisanje OTP-a, ali je koristila poslednji za dostavu.
Slučaj manipulacije API ključem:
- Scenario: Aplikacija omogućava korisnicima da ažuriraju svoj API ključ putem stranice za podešavanje profila.
- Vektor napada: Napadač otkriva da dodavanjem dodatnog
api_key
parametra POST zahtevu može manipulisati ishodom funkcije ažuriranja API ključa. - Tehnika: Korišćenjem alata poput Burp Suite-a, napadač kreira zahtev koji uključuje dva
api_key
parametra: jedan legitimni i jedan zlonamerni. Server, obrađujući samo poslednje pojavljivanje, ažurira API ključ na vrednost koju je napadač pružio. - Rezultat: Napadač dobija kontrolu nad funkcionalnošću API-ja žrtve, potencijalno pristupajući ili menjajući privatne podatke neovlašćeno.
Ovaj primer dodatno naglašava potrebu za sigurnom obradom parametara, posebno u funkcionalnostima koje su kritične poput upravljanja API ključem.
Razlaganje parametara: Flask vs. PHP
Način na koji veb tehnologije obrađuju duplicirane HTTP parametre varira, što utiče na njihovu podložnost HPP napadima:
- Flask: Prihvata vrednost prvog parametra koji se sretne, kao što je
a=1
u upitua=1&a=2
, dajući prioritet prvobitnom primerku u odnosu na kasnije duplicirane vrednosti. - PHP (na Apache HTTP Server-u): Suprotno tome, daje prioritet poslednjoj vrednosti parametra, birajući
a=2
u datom primeru. Ovo ponašanje nenamerno može olakšati HPP iskorišćavanje tako što će poštovati napadačev manipulisani parametar umesto originalnog.
Reference
- https://medium.com/@shahjerry33/http-parameter-pollution-its-contaminated-85edc0805654
- https://github.com/google/google-ctf/tree/master/2023/web-under-construction/solution
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!
Drugi načini podrške HackTricks-u:
- Ako želite da vidite vašu kompaniju reklamiranu na HackTricks-u ili preuzmete HackTricks u PDF formatu proverite SUBSCRIPTION PLANS!
- Nabavite zvanični PEASS & HackTricks swag
- Otkrijte The PEASS Family, našu kolekciju ekskluzivnih NFT-ova
- Pridružite se 💬 Discord grupi ili telegram grupi ili nas pratite na Twitter-u 🐦 @carlospolopm.
- Podelite svoje hakovanje trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.