8 KiB
DOM Invader
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 u 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.
DOM Invader
DOM Invader je alat za pregledač koji je instaliran u ugrađenom pregledaču Burp-a. Pomaže u otkrivanju DOM XSS ranjivosti koristeći različite izvore i ciljeve, uključujući web poruke i onečišćenje prototipa. Alat je unapred instaliran kao ekstenzija.
DOM Invader integriše karticu unutar DevTools panela pregledača koja omogućava sledeće:
- Identifikacija kontrolabilnih ciljeva na veb stranici za testiranje DOM XSS-a, pružajući kontekst i detalje o sanitizaciji.
- Logovanje, uređivanje i ponovno slanje web poruka poslatih putem metode
postMessage()
za testiranje DOM XSS-a. DOM Invader takođe može automatski otkriti ranjivosti koristeći posebno kreirane web poruke. - Otkrivanje izvora onečišćenja prototipa na klijentskoj strani i skeniranje kontrolabilnih uređaja poslatih na rizične ciljeve.
- Identifikacija ranjivosti DOM clobbering-a.
Omogući ga
U ugrađenom pregledaču Burp-a idite na Burp ekstenziju i omogućite je:
Sada osvežite stranicu i u Dev Tools-u ćete pronaći karticu DOM Invader:
Ubaci kanarinca
Na prethodnoj slici možete videti nasumičnu grupu znakova, to je kanarinac. Sada treba da ga počnete ubacivati na različite delove veba (parametre, forme, URL...) i svaki put kliknite na pretragu. DOM Invader će proveriti da li se kanarinac završio na nekom interesantnom cilju koji bi mogao biti iskorišćen.
Osim toga, opcije Ubaci URL parametre i Ubaci forme će automatski otvoriti novu karticu i ubaciti kanarinca u svaki URL parametar i formu koju pronađe.
Ubaci praznog kanarinca
Ako želite samo da pronađete potencijalne ciljeve koje stranica može imati, čak i ako nisu iskorišćivi, možete tražiti praznog kanarinca.
Web poruke
DOM Invader omogućava testiranje DOM XSS-a korišćenjem web poruka sa funkcijama kao što su:
- Logovanje web poruka poslatih putem
postMessage()
, slično logovanju istorije HTTP zahteva/odgovora u Burp Proxy-u. - Izmena i ponovno slanje web poruka radi ručnog testiranja DOM XSS-a, slično funkciji Burp Repeater-a.
- Automatska izmena i slanje web poruka radi ispitivanja DOM XSS-a.
Detalji poruke
Detaljne informacije o svakoj poruci mogu se videti klikom na nju, što uključuje da li klijentski JavaScript pristupa svojstvima origin
, data
ili source
poruke.
origin
: Ako informacije o poreklu poruke nisu proverene, možda ćete moći da šaljete poruke preko granica porekla ka rukovaocu događaja sa proizvoljnog spoljnog domena. Ali ako je provereno, i dalje može biti nesigurno.data
: Ovde se šalje payload. Ako se ovi podaci ne koriste, cilj je beskoristan.source
: Proverava da li je provereno svojstvo izvora, obično referencirajući iframe, umesto porekla. Čak i ako je ovo provereno, to ne garantuje da validacija ne može biti zaobiđena.
Odgovor na poruku
- Iz Prikaza poruka, kliknite na bilo koju poruku da biste otvorili dijalog sa detaljima poruke.
- Uredite polje Podaci po potrebi.
- Kliknite na Pošalji.
Onečišćenje prototipa
DOM Invader takođe može tražiti ranjivosti onečišćenja prototipa. Prvo, trebate ga omogućiti:
Zatim, on će tražiti izvore koji vam omogućavaju da dodate proizvoljna svojstva na Object.prototype
.
Ako se pronađe nešto, pojaviće se dugme Test za testiranje pronađenog izvora. Kliknite na njega, pojaviće se nova kartica, kreirajte objekat u konzoli i proverite da li postoji testproperty
:
let b = {}
b.testproperty
Jednom kada pronađete izvor, možete skenirati za uređaj:
- Kada se klikne dugme Skeniraj za uređaje, koje se može pronaći pored bilo kojeg identifikovanog izvora zagađenja prototipa u DOM prikazu, DOM Invader otvara novu karticu. Zatim počinje skeniranje za odgovarajuće uređaje.
- U međuvremenu, u istoj kartici, treba otvoriti karticu DOM Invader u panelu DevTools-a. Nakon završetka skeniranja, svi izvori zagađenja koji su dostupni putem identifikovanih uređaja prikazuju se u DOM prikazu. Na primer, u donjem primeru se prikazuje svojstvo uređaja nazvano
html
koje se prosleđuje izvoruinnerHTML
.
DOM zagađenje
Na prethodnoj slici je moguće videti da se skeniranje za DOM zagađenje može uključiti. Kada se to uradi, DOM Invader će početi tražiti ranjivosti DOM zagađenja.
Reference
- https://portswigger.net/burp/documentation/desktop/tools/dom-invader
- https://portswigger.net/burp/documentation/desktop/tools/dom-invader/enabling
- https://portswigger.net/burp/documentation/desktop/tools/dom-invader/dom-xss
- https://portswigger.net/burp/documentation/desktop/tools/dom-invader/web-messages
- https://portswigger.net/burp/documentation/desktop/tools/dom-invader/prototype-pollution
- https://portswigger.net/burp/documentation/desktop/tools/dom-invader/dom-clobbering
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.