8.1 KiB
DOM Indringer
Leer AWS-hacking vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!
Ander maniere om HackTricks te ondersteun:
- As jy jou maatskappy geadverteer wil sien in HackTricks of HackTricks in PDF wil aflaai Kontroleer die INSKRYWINGSPLANNE!
- Kry die amptelike PEASS & HackTricks swag
- Ontdek Die PEASS Familie, ons versameling eksklusiewe NFTs
- Sluit aan by die 💬 Discord-groep of die telegram-groep of volg ons op Twitter 🐦 @carlospolopm.
- Deel jou haktruuks deur PR's in te dien by die HackTricks en HackTricks Cloud github-opslag.
DOM Indringer
DOM Indringer is 'n blaaierhulpmiddel wat in Burp se ingeboude blaaier geïnstalleer is. Dit help met die opsporing van DOM XSS- kwesbaarhede deur verskeie bronne en sappe te gebruik, insluitend webboodskappe en prototipevervuiling. Die hulpmiddel is vooraf geïnstalleer as 'n uitbreiding.
DOM Indringer integreer 'n lêer binne die blaaier se DevTools-paneel wat die volgende moontlik maak:
- Identifikasie van beheerbare sappe op 'n webbladsy vir DOM XSS-toetsing, wat konteks- en sanitiseringsbesonderhede verskaf.
- Log, redigeer, en herstuur webboodskappe wat gestuur word via die
postMessage()
-metode vir DOM XSS-toetsing. DOM Indringer kan ook kwesbaarhede outomaties opspoor deur spesiaal ontwerpte webboodskappe. - Opsoek na kliëntkant prototipevervuilingsbronne en skandering van beheerbare toestelle wat na risikosappe gestuur word.
- Identifisering van DOM-oorvul-kwesbaarhede.
Skakel dit aan
Gaan na die Burp-uitbreiding in die ingeboude blaaier van Burp en skakel dit aan:
Vernuwe die bladsy en in die Dev Tools sal jy die DOM Indringer-lêer vind:
Spuit 'n Kanarie in
In die vorige beeld kan jy 'n willekeurige groep karakters sien, dit is die Kanarie. Jy moet dit nou begin inspuit in verskillende dele van die web (parameters, vorms, url...) en elke keer daarop klik. DOM Indringer sal nagaan of die kanarie in enige interessante sappe geëindig het wat benut kan word.
Verder sal die opsies Inject URL-parameters en Inject vorms outomaties 'n nuwe lêer oopmaak deur die kanarie in elke URL-parameter en vorm wat dit vind, in te spuit.
Spuit 'n leë Kanarie in
As jy net potensiële sappe wil vind wat die bladsy mag hê, selfs al is hulle nie benutbaar nie, kan jy soek na 'n leë kanarie.
Postboodskappe
DOM Indringer maak dit moontlik om vir DOM XSS te toets deur webboodskappe te gebruik met kenmerke soos:
- Log webboodskappe wat gestuur word via
postMessage()
, soortgelyk aan Burp Proxy se HTTP-versoek-/antwoordgeskiedenislogging. - Wysiging en heruitreiking van webboodskappe om handmatig vir DOM XSS te toets, soortgelyk aan Burp Repeater se funksie.
- Outomatiese wysiging en stuur van webboodskappe vir die ondersoek van DOM XSS.
Boodskapbesonderhede
Gedetailleerde inligting oor elke boodskap kan besigtig word deur daarop te klik, wat insluit of die kliëntkant-JavaScript die oorsprong
, data
, of bron
-eienskappe van die boodskap benader.
oorsprong
: As die oorspronginligting van die boodskap nie nagegaan word nie, kan jy kruisoorsprongboodskappe na die gebeurtenishanterer vanaf 'n willekeurige eksterne domein stuur. Maar as dit nagegaan word, kan dit steeds onveilig wees.data
: Hierdie is waar die lading gestuur word. As hierdie data nie gebruik word nie, is die sap nutteloos.bron
: Evalueer of die bron-eienskap, gewoonlik na 'n iframe verwys, gevalideer word in plaas van die oorsprong. Selfs al is dit nagegaan, verseker dit nie dat die validering nie omseil kan word nie.
Antwoord op 'n boodskap
- Klik op enige boodskap vanuit die Boodskappe-sig om die boodskapbesonderhede-venster oop te maak.
- Redigeer die Data-veld soos benodig.
- Klik op Stuur.
Prototipevervuiling
DOM Indringer kan ook soek na Prototipevervuilingskwesbaarhede. Eerstens moet jy dit inskakel:
Dan sal dit soek na bronne wat jou in staat stel om arbitrêre eienskappe by die Object.prototype
toe te voeg.
As iets gevind word, sal 'n Toets-knoppie verskyn om die gevonde bron te toets. Klik daarop, 'n nuwe lêer sal oopmaak, skep 'n voorwerp in die konsole en kyk of die toets-eienskap
bestaan:
let b = {}
b.testproperty
Once you found a source you can scan for a gadget:
- 'n Nuwe lappie word oopgemaak deur DOM Invader wanneer die Scan vir gadgets knoppie, wat langs enige geïdentifiseerde prototipevervuilingsbron in die DOM-sig, geklik word. Die skandering vir geskikte gadgets begin dan.
- Intussen moet die DOM Invader-lappie in dieselfde lappie oopgemaak word in die DevTools-paneel. Nadat die skandering voltooi is, word enige sappe wat toeganklik is via die geïdentifiseerde gadgets in die DOM-sig vertoon. Byvoorbeeld, 'n gadget-eienskap genaamd
html
wat na dieinnerHTML
-sink gestuur word, word in die voorbeeld hieronder getoon.
DOM clobbering
In die vorige beeld is dit moontlik om te sien dat die DOM clobbering-skandering aangeskakel kan word. Wanneer dit gedoen is, sal DOM Invader begin soek na DOM clobbering-gebreke.
Verwysings
- 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
Leer AWS-hacking vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!
Ander maniere om HackTricks te ondersteun:
- As jy wil sien dat jou maatskappy geadverteer word in HackTricks of HackTricks aflaai in PDF-formaat Kontroleer die INSKRYWINGSPLANNE!
- Kry die amptelike PEASS & HackTricks swag
- Ontdek Die PEASS-familie, ons versameling eksklusiewe NFT's
- Sluit aan by die 💬 Discord-groep of die telegram-groep of volg ons op Twitter 🐦 @carlospolopm.
- Deel jou haktruuks deur PR's in te dien by die HackTricks en HackTricks Cloud github-opslag.