Web9: Typer af XSS-udnyttelse - Del 3: Dom-baseret XSS

Web9: Typer af XSS-udnyttelse - Del 3: Dom-baseret XSS

Vi har allerede nævnt to typer XSS- udnyttelser : reflekteret og lagret.De har alle det fælles træk, at farlig kode, efter at være blevet indsat, vil blive eksekveret efter serverens svar, hvilket betyder, at fejlen ligger på serverens side.server.server. Der er en anden type XSS-udnyttelse, der går imod denne funktion, ondsindet kode udføres straks på klientsiden uden at gå gennem serveren, kendt som DOM Based XSS eller også kendt som type 0 XSS.

Først og fremmest skal vi vide, hvad DOM er?

DOM, forkortelse for Document Object Model, er en standardform for W3C (http://www.w3.org/DOM/), der foreslås til at hente og manipulere data fra strukturerede dokumenter som HTML og XML. Denne model repræsenterer dokumenter som en hierarkisk træstruktur. Alle elementer i HTML og XML betragtes som en node.

DOM-baseret XSS er en XSS-udnyttelsesteknik baseret på ændring af dokumentets DOM-struktur, specifikt HTML.

Lad os se på et specifikt eksempel nedenfor:

Et websted har følgende URL til registreringssiden:

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

Når vi får adgang til det, ser vi en meget normal formular:

Web9: Typer af XSS-udnyttelse - Del 3: Dom-baseret XSS

Du kan nemt udlede meddelelsesparameteren, der er overført til meddelelsesindholdet på formularen, se nøje på kildekoden til denne meddelelse:

Web9: Typer af XSS-udnyttelse - Del 3: Dom-baseret XSS

JavaScript-segmentet er ansvarligt for at hente værdien fra meddelelsesparameteren og udskrive den. Ud fra denne slappe inputkontrol er det fuldt ud muligt at narre brugere til at få adgang til farlige URL'er.

I stedet for at caste:

message=Please fill in the form

send derefter:

message=GenderMaleFemale

function show(){alert();}

Så ser tilmeldingsformularen således ud:

Web9: Typer af XSS-udnyttelse - Del 3: Dom-baseret XSS

Brugere vil ikke være mistænksomme over for en "normal" form som denne, og når de vælger køn, vil scriptet blive udført:

Web9: Typer af XSS-udnyttelse - Del 3: Dom-baseret XSS

Jeg vil forklare lidt mere om den værdi, der sendes i meddelelsesparameteren:

GenderMaleFemale

function show(){alert();}

Dens hovedformål er at udføre show()-funktionen hver gang der er en onchage-begivenhed på select-tagget. Show()-funktionen her dukker simpelthen op for at vise, at scriptet er blevet udført. Men i virkeligheden vil hackere ofte bruge denne show() funktion til at udføre et script, der overfører brugerens cookieværdi til en forudbestemt server Læsere kan gennemgå artiklen Reflected XSS , som nævner, hvordan hackere opretter Hvordan ser denne anmodning ud?

Dette eksempel giver os to vigtige konklusioner. For det første blev den ondsindede kode eksekveret umiddelbart efter at have klikket på værdien i select-tagget, hvilket betyder, at den blev eksekveret direkte på klientsiden uden at gå igennem serverens svar. For det andet er HTML-strukturen blevet ændret med det beståede script. Og vi kan også se det faktiske udnyttelsesscenarie, DOM Based ligner noget mere Reflected end Stored XSS, når det kommer til at narre brugere til at få adgang til en URL, der er indlejret med ondsindet kode.

Følgende figur beskriver hvert trin i implementeringen af ​​den DOM-baserede XSS-angrebsteknik:

Web9: Typer af XSS-udnyttelse - Del 3: Dom-baseret XSS

Nedenfor er en video af et medlem af WhiteHat.vn-forummet, der udfører en udnyttelse gennem DOM Based XSS:

Held og lykke!


Fix Kan ikke åbne denne elementfejl i Windows

Fix Kan ikke åbne denne elementfejl i Windows

Hvis du bruger Windows, får du fejlmeddelelsen Kan ikke åbne dette element. Det kan være blevet flyttet, omdøbt eller slettet. Hvad skal jeg gøre? Følg artiklen nedenfor for detaljer.

Hvad er KRACK? Hvordan KRACK brød WPA2 WiFi-sikkerhedsprotokollen

Hvad er KRACK? Hvordan KRACK brød WPA2 WiFi-sikkerhedsprotokollen

Forsker Mathy Vanhoef fra universitetet i Leuven har opdaget en alvorlig sikkerhedsfejl i netværkssikkerhedsprotokollen Wi-Fi Protected Access II (WPA2).

Ofte stillede spørgsmål om standardadgangskoder

Ofte stillede spørgsmål om standardadgangskoder

I dagens artikel vil Quantrimang opsummere nogle ofte stillede spørgsmål om standardadgangskoder for at hjælpe læserne med at besvare spørgsmål relateret til dette problem.

Top 3 multicloud sikkerhedsudfordringer og hvordan man bygger en strategi

Top 3 multicloud sikkerhedsudfordringer og hvordan man bygger en strategi

En række bedste sikkerhedsmetoder er opstået med fremkomsten af ​​multicloud-miljøer, og der er nogle vigtige skridt, som alle organisationer bør tage, når de udvikler deres egne sikkerhedsstrategier.

Installer dynamiske skærme og animerede baggrunde på Windows

Installer dynamiske skærme og animerede baggrunde på Windows

I Microsofts Windows Vista-operativsystem tillod DreamScene opsætning af dynamiske baggrunde til computere, men otte år senere er det stadig ikke tilgængeligt på Windows 10. Hvorfor har denne skik repræsenteret et tilbagevenden til fortiden gennem årene, og hvad kan vi gøre for at ændre dette?

Sådan forbinder du netværket mellem 2 bærbare computere ved hjælp af et netværkskabel

Sådan forbinder du netværket mellem 2 bærbare computere ved hjælp af et netværkskabel

Hvis vi vil forbinde to bærbare computere til netværket, kan vi bruge et netværkskabel og så ændre IP-adresserne på de to computere, og det er det.

Sådan repareres Du har ikke tilladelse til at gemme på denne placering på Windows

Sådan repareres Du har ikke tilladelse til at gemme på denne placering på Windows

Når Windows viser fejlen "Du har ikke tilladelse til at gemme på denne placering", vil dette forhindre dig i at gemme filer i ønskede mapper.

Top bedste gratis og betalte Syslog Server-software til Windows

Top bedste gratis og betalte Syslog Server-software til Windows

Syslog Server er en vigtig del af en IT-administrators arsenal, især når det kommer til at administrere hændelseslogfiler på en central placering.

Hvad er fejl 524 Der opstod en timeout, og hvordan rettes fejlen

Hvad er fejl 524 Der opstod en timeout, og hvordan rettes fejlen

Fejl 524: En timeout opstod er en Cloudflare-specifik HTTP-statuskode, der angiver, at forbindelsen til serveren blev lukket på grund af en timeout.

Hvad er fejl 0x80070570? Hvordan rettes denne fejl?

Hvad er fejl 0x80070570? Hvordan rettes denne fejl?

Fejlkode 0x80070570 er en almindelig fejlmeddelelse på computere, bærbare computere og tablets, der kører operativsystemet Windows 10. Den vises dog også på computere, der kører Windows 8.1, Windows 8, Windows 7 eller tidligere.