Web9: XSS išnaudojimo tipai. 3 dalis: Dom pagrįstas XSS

Web9: XSS išnaudojimo tipai. 3 dalis: Dom pagrįstas XSS

Jau minėjome dviejų tipų XSS išnaudojimus : atspindėtus ir saugomus. Jie visi turi bendrą bruožą, kad įdėjus pavojingą kodą, jis bus paleistas po serverio atsakymo, o tai reiškia, kad klaida slypi serverio pusėje. serveris. serveris. Yra ir kitas XSS išnaudojimo tipas, kuris prieštarauja šiai funkcijai. Kenkėjiškas kodas iš karto vykdomas kliento pusėje, neperžengiant serverio, žinomas kaip DOM pagrįstas XSS arba dar žinomas kaip 0 tipo XSS.

Pirmiausia turime žinoti, kas yra DOM?

DOM, trumpinys iš Document Object Model, yra standartinė W3C forma (http://www.w3.org/DOM/), skirta struktūrinių dokumentų, tokių kaip HTML ir XML, duomenims nuskaityti ir jais valdyti. Šis modelis vaizduoja dokumentus kaip hierarchinę medžio struktūrą. Visi HTML ir XML elementai laikomi mazgu.

DOM pagrįstas XSS yra XSS išnaudojimo technika, pagrįsta dokumento DOM struktūros keitimu, ypač HTML.

Pažvelkime į konkretų pavyzdį žemiau:

Svetainėje yra toks registracijos puslapio URL:

example.com/register.php?message=Please fill in the form

Kai pasiekiame ją, matome labai įprastą formą:

Web9: XSS išnaudojimo tipai. 3 dalis: Dom pagrįstas XSS

Galite lengvai nustatyti pranešimo parametrą, perduotą į pranešimo turinį formoje, atidžiai peržiūrėkite šio pranešimo šaltinio kodą:

Web9: XSS išnaudojimo tipai. 3 dalis: Dom pagrįstas XSS

„JavaScript“ segmentas yra atsakingas už reikšmės gavimą iš pranešimo parametro ir jos spausdinimą. Dėl šio nerūpestingo įvesties tikrinimo visiškai įmanoma priversti vartotojus pasiekti pavojingus URL.

Užuot perdavęs:

message=Please fill in the form

tada perduokite:

message=GenderMaleFemale

function show(){alert();}

Tada registracijos forma atrodys taip:

Web9: XSS išnaudojimo tipai. 3 dalis: Dom pagrįstas XSS

Vartotojai nesukels įtarimų dėl tokios „įprastos“ formos, o pasirinkus lytį, scenarijus bus vykdomas:

Web9: XSS išnaudojimo tipai. 3 dalis: Dom pagrįstas XSS

Paaiškinsiu šiek tiek daugiau apie pranešimo parametre perduotą reikšmę:

GenderMaleFemale

function show(){alert();}

Pagrindinis jos tikslas yra vykdyti funkciją show() kiekvieną kartą, kai žymoje yra onchage įvykis.Funkcija show() čia tiesiog pasirodo, kad parodytų, kad scenarijus buvo įvykdytas. Tačiau iš tikrųjų įsilaužėliai dažnai naudoja šią funkciją „show()“, kad vykdytų scenarijų, kuris perduoda vartotojo slapuko reikšmę į iš anksto nustatytą serverį. Skaitytojai gali peržiūrėti straipsnį „ Reflected XSS“ , kuriame minima, kaip įsilaužėliai kuria Kaip atrodo ši užklausa?

Šis pavyzdys pateikia dvi svarbias išvadas. Pirma, kenkėjiškas kodas buvo paleistas iš karto spustelėjus reikšmę pasirinkimo žymoje, o tai reiškia, kad jis buvo vykdomas tiesiai kliento pusėje, neperžiūrint serverio atsakymo. Antra, HTML struktūra buvo pakeista perduotu scenarijumi. Taip pat matome tikrąjį išnaudojimo scenarijų, kai DOM pagrįstas yra šiek tiek panašesnis į Reflected nei saugomas XSS, kai kalbama apie vartotojų apgaudinėjimą, kad jie pasiektų URL, įterptą su kenkėjišku kodu.

Toliau pateiktame paveikslėlyje aprašomas kiekvienas DOM pagrįstos XSS atakos technikos diegimo veiksmas:

Web9: XSS išnaudojimo tipai. 3 dalis: Dom pagrįstas XSS

Žemiau yra vaizdo įrašas, kuriame WhiteHat.vn forumo narys atlieka išnaudojimą per DOM pagrįstą XSS:

Sėkmės!


Pataisyti Nepavyko atidaryti šio elemento klaidos sistemoje „Windows“.

Pataisyti Nepavyko atidaryti šio elemento klaidos sistemoje „Windows“.

Jei naudojate „Windows“, gaunate klaidos pranešimą Neįmanoma atidaryti šio elemento. Jis galėjo būti perkeltas, pervadintas arba ištrintas. Ką turėčiau daryti? Norėdami gauti daugiau informacijos, vadovaukitės toliau pateiktame straipsnyje.

Kas yra KRACK? Kaip KRACK sulaužė WPA2 WiFi saugos protokolą

Kas yra KRACK? Kaip KRACK sulaužė WPA2 WiFi saugos protokolą

Tyrėjas Mathy Vanhoef iš Leuveno universiteto aptiko rimtą saugumo trūkumą Wi-Fi Protected Access II (WPA2) tinklo saugos protokole.

Dažnai užduodami klausimai apie numatytuosius slaptažodžius

Dažnai užduodami klausimai apie numatytuosius slaptažodžius

Šiandienos straipsnyje Quantrimang apibendrins kelis dažniausiai užduodamus klausimus apie numatytuosius slaptažodžius, kad padėtų skaitytojams atsakyti į klausimus, susijusius su šia problema.

Kodėl verta naudoti „CyberGhost VPN“?

Kodėl verta naudoti „CyberGhost VPN“?

Jums reikia VPN, todėl įvairios parinktys yra paprastos, o „CyberGhost VPN“ yra vienas geriausių VPN, kai kalbama apie paprastumą.

3 populiariausi kelių debesų saugumo iššūkiai ir kaip sukurti strategiją

3 populiariausi kelių debesų saugumo iššūkiai ir kaip sukurti strategiją

Daugybė geriausių saugumo praktikų atsirado, kai atsiranda daug debesų, ir yra keletas svarbių žingsnių, kurių turėtų imtis visos organizacijos, kurdamos savo saugumo strategijas.

Įdiekite dinaminius ekranus ir animuotus fono paveikslėlius sistemoje „Windows“.

Įdiekite dinaminius ekranus ir animuotus fono paveikslėlius sistemoje „Windows“.

„Microsoft“ operacinėje sistemoje „Windows Vista“ „DreamScene“ leido nustatyti dinamišką kompiuterių foną, tačiau po aštuonerių metų ji vis dar nepasiekiama „Windows 10“. Kodėl bėgant metams šis paprotys buvo grįžimas į praeitį ir ką galime padaryti, kad tai pakeistume?

Kaip prijungti tinklą tarp 2 nešiojamųjų kompiuterių naudojant tinklo kabelį

Kaip prijungti tinklą tarp 2 nešiojamųjų kompiuterių naudojant tinklo kabelį

Jei norime prie tinklo prijungti du nešiojamus kompiuterius, galime naudoti tinklo kabelį ir tada pakeisti dviejų kompiuterių IP adresus ir viskas.

Kaip pataisyti Neturite leidimo išsaugoti šioje „Windows“ vietoje

Kaip pataisyti Neturite leidimo išsaugoti šioje „Windows“ vietoje

Kai „Windows“ rodoma klaida „Neturite leidimo išsaugoti šioje vietoje“, tai neleis jums išsaugoti failų norimuose aplankuose.

Geriausia nemokama ir mokama „Syslog Server“ programinė įranga, skirta „Windows“.

Geriausia nemokama ir mokama „Syslog Server“ programinė įranga, skirta „Windows“.

„Syslog Server“ yra svarbi IT administratoriaus arsenalo dalis, ypač kai reikia tvarkyti įvykių žurnalus centralizuotoje vietoje.

Kas yra klaida 524 A skirtasis laikas ir kaip ištaisyti klaidą

Kas yra klaida 524 A skirtasis laikas ir kaip ištaisyti klaidą

524 klaida: Įvyko skirtasis laikas yra „Cloudflare“ specifinis HTTP būsenos kodas, nurodantis, kad ryšys su serveriu buvo nutrauktas dėl skirtojo laiko.