hacktricks/pentesting-web/xss-cross-site-scripting/dom-invader.md

8.1 KiB

Mvamizi wa DOM

Jifunze kuhusu kuvamia AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks:

Mvamizi wa DOM

Mvamizi wa DOM ni chombo cha kivinjari kilichowekwa kwenye kivinjari kilichojengwa ndani ya Burp. Inasaidia katika kugundua udhaifu wa DOM XSS kutumia vyanzo na mabwawa tofauti, ikiwa ni pamoja na ujumbe wa wavuti na uchafuzi wa prototype. Chombo hicho kimefungwa kabla kama kifaa cha nyongeza.

Mvamizi wa DOM huingiza kichupo ndani ya kichupo cha DevTools cha kivinjari kuruhusu yafuatayo:

  1. Utambuzi wa mabwawa yanayoweza kudhibitiwa kwenye ukurasa wa wavuti kwa ajili ya majaribio ya DOM XSS, kutoa muktadha na maelezo ya kusafisha.
  2. Kuingiza, kuhariri, na kutuma tena ujumbe wa wavuti uliotumwa kupitia njia ya postMessage() kwa majaribio ya DOM XSS. Mvamizi wa DOM pia inaweza kugundua moja kwa moja udhaifu kwa kutumia ujumbe maalum wa wavuti.
  3. Kugundua vyanzo vya uchafuzi wa prototype upande wa mteja na uchunguzi wa vifaa vinavyoweza kudhibitiwa vinavyotumwa kwenye mabwawa hatari.
  4. Utambuzi wa udhaifu wa kufunika DOM.

Wezesha

Katika kivinjari kilichojengwa ndani ya Burp nenda kwa Kifaa cha nyongeza cha Burp na kiwezesha:

Sasa refusha ukurasa na katika Zana za Dev utapata kichupo cha Mvamizi wa DOM:

Ingiza Kifaru

Katika picha iliyotangulia unaweza kuona kikundi cha herufi za kubahatisha, hiyo ni Kifaru. Sasa unapaswa kuanza kuingiza katika sehemu tofauti za wavuti (parameta, fomu, url...) na kila wakati bonyeza tafuta. Mvamizi wa DOM atachunguza ikiwa kifaru kilimalizika kwenye mabwawa yoyote ya kuvutia ambayo yanaweza kutumiwa.

Zaidi ya hayo, chaguo Ingiza parameta za URL na Ingiza fomu itafungua moja kwa moja kichupo kipya kukiingiza kifaru katika kila parameta ya URL na fomu inayopata.

Ingiza Kifaru tupu

Ikiwa unataka tu kutambua mabwawa yanayoweza kuwa nayo ukurasa, hata kama hawawezi kutumiwa, unaweza kutafuta kifaru tupu.

Ujumbe wa Posta

Mvamizi wa DOM inaruhusu majaribio ya DOM XSS kwa kutumia ujumbe wa wavuti na vipengele kama:

  1. Kuingiza ujumbe wa wavuti uliotumwa kupitia postMessage(), kama kumbukumbu ya historia ya maombi/majibu ya HTTP ya Burp Proxy.
  2. Kuhariri na kutuma tena ujumbe wa wavuti kwa majaribio ya kawaida ya DOM XSS, sawa na kazi ya Burp Repeater.
  3. Kubadilisha moja kwa moja na kutuma ujumbe wa wavuti kwa ajili ya kuchunguza DOM XSS.

Maelezo ya Ujumbe

Maelezo ya kina yanaweza kuonekana kuhusu kila ujumbe kwa kubonyeza, ambayo ni pamoja na ikiwa JavaScript upande wa mteja unafikia mali za asili, data, au chanzo za ujumbe.

  • asili : Ikiwa habari ya asili ya ujumbe haijachunguzwa, unaweza kutuma ujumbe wa msalaba wa asili kwa kushughulikiaji wa tukio kutoka kwenye kikoa cha nje cha kiholela. Lakini ikiwa imechunguzwa bado inaweza kuwa si salama.
  • data: Hapa ndipo mzigo unatumwa. Ikiwa data hii haikutumiwi, bwawa ni bure.
  • chanzo: Inathibitisha ikiwa mali ya chanzo, kawaida ikirejelea iframe, imehakikiwa badala ya asili. Hata kama hii imechunguzwa, haitoi uhakika kwamba uthibitisho hauwezi kukiukwa.

Jibu ujumbe

  1. Kutoka kwenye Maoni angalia ujumbe wowote ili ufungue dirisha la maelezo ya ujumbe.
  2. Hariri Data kama inavyotakiwa.
  3. Bonyeza Tuma.

Uchafuzi wa Prototype

Mvamizi wa DOM pia unaweza kutafuta udhaifu wa Uchafuzi wa Prototype. Kwanza, unahitaji kuwezesha:

Kisha, ita tafuta vyanzo vinavyokuwezesha kuongeza mali za Object.prototype.

Ikiwa kitu kinapatikana, kitufe cha Jaribu kitatokea ili kujaribu chanzo kilichopatikana. Bonyeza, kichupo kipya kitatokea, tengeneza kitu kwenye konsoli na angalia ikiwa testproperty ipo:

let b = {}
b.testproperty

Baada ya kupata chanzo unaweza kutafuta kifaa:

  1. Kichupo kipya kinafunguliwa na DOM Invader wakati kifungo cha Tafuta vifaa kinapobonyezwa, ambacho kinaweza kupatikana karibu na chanzo chochote cha uchafuzi wa prototipi kilichotambuliwa katika mtazamo wa DOM, kimebonyezwa. Uchambuzi wa vifaa vinavyofaa kisha huanza.
  2. Wakati huo huo, katika kichupo kile kile, kichupo cha DOM Invader kinapaswa kufunguliwa kwenye paneli ya DevTools. Baada ya uchambuzi kukamilika, mabwawa yoyote yanayopatikana kupitia vifaa vilivyotambuliwa huonyeshwa katika mtazamo wa DOM. Kwa mfano, mali ya kifaa inayoitwa html ikipitishwa kwenye bwawa la innerHTML inaonyeshwa katika mfano hapa chini.

DOM clobbering

Katika picha iliyopita inawezekana kuona kwamba uchambuzi wa kufunika DOM unaweza kuwashwa. Mara baada ya kufanyika, DOM Invader itaanza kutafuta vulnerabilities za kufunika DOM.

Marejeo

Jifunze kuhusu kudukua AWS kutoka sifuri hadi shujaa na htARTE (HackTricks AWS Red Team Expert)!

Njia nyingine za kusaidia HackTricks: