Web9: Arten der XSS-Ausnutzung – Teil 3: Dom-basiertes XSS

Web9: Arten der XSS-Ausnutzung – Teil 3: Dom-basiertes XSS

Wir haben bereits zwei Arten von XSS- Exploits erwähnt : reflektierte und gespeicherte. Sie alle haben das gemeinsame Merkmal, dass gefährlicher Code, nachdem er eingefügt wurde, nach der Antwort des Servers ausgeführt wird, was bedeutet, dass der Fehler auf der Seite des Servers liegt. Server. Server. Es gibt eine andere Art der XSS-Ausnutzung, die dieser Funktion zuwiderläuft: Schadcode wird sofort auf der Clientseite ausgeführt, ohne den Server zu durchlaufen. Dies wird als DOM-basiertes XSS oder auch als Typ-0-XSS bezeichnet.

Zunächst müssen wir wissen, was DOM ist?

DOM, kurz für Document Object Model, ist eine Standardform des W3C (http://www.w3.org/DOM/), die zum Abrufen und Bearbeiten von Daten strukturierter Dokumente wie HTML und XML vorgeschlagen wird. Dieses Modell stellt Dokumente als hierarchische Baumstruktur dar. Alle Elemente in HTML und XML werden als Knoten betrachtet.

DOM-basiertes XSS ist eine XSS-Ausnutzungstechnik, die auf der Änderung der DOM-Struktur des Dokuments, insbesondere von HTML, basiert.

Schauen wir uns unten ein konkretes Beispiel an:

Eine Website hat die folgende URL zur Registrierungsseite:

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

Wenn wir darauf zugreifen, sehen wir ein ganz normales Formular:

Web9: Arten der XSS-Ausnutzung – Teil 3: Dom-basiertes XSS

Sie können den in den Benachrichtigungsinhalt des Formulars übergebenen Nachrichtenparameter leicht ableiten. Schauen Sie sich den Quellcode dieser Benachrichtigung genau an:

Web9: Arten der XSS-Ausnutzung – Teil 3: Dom-basiertes XSS

Das JavaScript-Segment ist dafür verantwortlich, den Wert aus dem Nachrichtenparameter abzurufen und auszugeben. Durch diese laxe Eingabeprüfung ist es durchaus möglich, Benutzer dazu zu verleiten, auf gefährliche URLs zuzugreifen.

Statt zu gießen:

message=Please fill in the form

dann übermitteln:

message=GenderMaleFemale

function show(){alert();}

Dann sieht das Anmeldeformular so aus:

Web9: Arten der XSS-Ausnutzung – Teil 3: Dom-basiertes XSS

Benutzer werden gegenüber einer „normalen“ Form wie dieser nicht misstrauisch sein, und bei der Auswahl des Geschlechts wird das Skript ausgeführt:

Web9: Arten der XSS-Ausnutzung – Teil 3: Dom-basiertes XSS

Ich erkläre etwas mehr über den im Nachrichtenparameter übergebenen Wert:

GenderMaleFemale

function show(){alert();}

Sein Hauptzweck besteht darin, die Funktion show() jedes Mal auszuführen, wenn ein Onchage-Ereignis auf dem Select-Tag auftritt. Die Funktion show() wird hier einfach angezeigt, um anzuzeigen, dass das Skript ausgeführt wurde. In der Realität verwenden Hacker jedoch häufig diese show()-Funktion, um ein Skript auszuführen, das den Cookie-Wert des Benutzers an einen vorgegebenen Server überträgt. Leser können den Artikel Reflected XSS lesen , in dem erwähnt wird, wie Hacker erstellen. Wie sieht diese Anfrage aus?

Dieses Beispiel liefert uns zwei wichtige Schlussfolgerungen. Erstens wurde der Schadcode sofort beim Klicken auf den Wert im Select-Tag ausgeführt, d. h. er wurde direkt auf der Client-Seite ausgeführt, ohne die Antwort des Servers zu durchlaufen. Zweitens wurde die HTML-Struktur mit dem übergebenen Skript geändert. Und wir können auch das tatsächliche Ausnutzungsszenario sehen: DOM Based ähnelt eher Reflected als Stored XSS, wenn es darum geht, Benutzer dazu zu verleiten, auf eine URL zuzugreifen, in die bösartiger Code eingebettet ist.

Die folgende Abbildung beschreibt jeden Schritt bei der Implementierung der DOM-basierten XSS-Angriffstechnik:

Web9: Arten der XSS-Ausnutzung – Teil 3: Dom-basiertes XSS

Unten sehen Sie ein Video eines Mitglieds des WhiteHat.vn-Forums, das einen Exploit über DOM-basiertes XSS durchführt:

Viel Glück!


So blockieren Sie den Internetzugriff mithilfe von Gruppenrichtlinien (GPO)

So blockieren Sie den Internetzugriff mithilfe von Gruppenrichtlinien (GPO)

In diesem Artikel erfahren Sie, wie Sie den Internetzugriff für Benutzer oder Computer im Active Directory-Gruppenrichtlinienobjekt blockieren. Lernen Sie effektive Methoden, moderne Sicherheitsprotokolle und Best Practices kennen.

Warum müssen wir USB formatieren? Wie formatiere ich USB?

Warum müssen wir USB formatieren? Wie formatiere ich USB?

Das Formatieren eines USB-Sticks ähnelt dem Formatieren jedes anderen Laufwerks. Hier erfahren Sie, warum und wie Sie USB formatieren sollten, um optimale Ergebnisse zu erzielen.

Beheben Sie den Fehler „Game Security Violation Detected“ in Windows 10

Beheben Sie den Fehler „Game Security Violation Detected“ in Windows 10

Wenn beim Starten eines Spiels unter Windows 10 der Fehler „Game Security Violation Detected“ angezeigt wird, sind die Lösungen einfach und effektiv. Hier erfahren Sie, wie Sie dieses Problem beheben können.

So wechseln Sie die Lautsprecher mit Tastenkombinationen unter Windows 10

So wechseln Sie die Lautsprecher mit Tastenkombinationen unter Windows 10

Wechseln Sie mühelos zwischen Audiogeräten unter Windows 10 mit Tastenkombinationen. Erfahren Sie, wie Sie den Audio-Umschalter effizient nutzen.

8 Möglichkeiten, MSConfig in Windows 11 zu öffnen

8 Möglichkeiten, MSConfig in Windows 11 zu öffnen

Entdecken Sie 8 einfache Möglichkeiten, MSConfig in Windows 11 zu öffnen, um zahlreiche Probleme effizient zu beheben.

4 gefälschte Viren, die zum Spaß Freunde trollen

4 gefälschte Viren, die zum Spaß Freunde trollen

Freunde und Familienmitglieder zu trollen macht Spaß mit diesen harmlosen gefälschten Viren. Hier sind vier kreative Ideen, um Ihre Freunde zum Lachen zu bringen.

Unterschied zwischen Virtualisierung und Emulation

Unterschied zwischen Virtualisierung und Emulation

Entdecken Sie die Unterschiede zwischen Virtualisierung und Emulation sowie deren Vor- und Nachteile. Erfahren Sie, wie diese Technologien in modernen IT-Umgebungen eingesetzt werden.

So aktivieren oder deaktivieren Sie Device Guard unter Windows 10

So aktivieren oder deaktivieren Sie Device Guard unter Windows 10

Device Guard ist ein wichtiges Sicherheitsfeature in Windows 10, das sicherstellt, dass nur vertrauenswürdige Anwendungen ausgeführt werden. So aktivieren oder deaktivieren Sie es.

So verwenden Sie vDOS, um alte DOS-Programme unter Windows 10 auszuführen

So verwenden Sie vDOS, um alte DOS-Programme unter Windows 10 auszuführen

Erfahren Sie, wie Sie vDOS verwenden, um alte DOS-Software unter Windows 10 auszuführen. Dieser Emulator ist ideal für die Nutzung älterer Programme, bietet jedoch keine optimale Lösung für Spiele.

3 Möglichkeiten, USB Selective Suspend in Windows 11 zu deaktivieren

3 Möglichkeiten, USB Selective Suspend in Windows 11 zu deaktivieren

Wenn Sie Probleme mit USB-Geräten auf Ihrem Windows 11-Computer haben, sollten Sie die Funktion „USB Selective Suspend“ deaktivieren.