Beim Cross-Site-Scripting (kurz XSS) greift ein bösartiger Client einen anderen Client an indem er ein Skript auf dessen Rechner zur Ausführung bringt.

Typen von XSS

  • Stored (Typ I)
  • Reflected (Typ II)
  • DOM-Injection (Typ 0)

Stored XSS (Typ I)

  • Angreifer platziert seinen Schadcode auf einem Server
  • Nutzer greifen auf den Server zu und laden den Schadcode
  • Schadcode wird im Browser der Nutzer ausgrführt

Reflected XSS (Typ II)

  • Eingabefelder (z.B. Suchfelder) geben die Nutzereingabe zurück
  • Dem Opfer wird ein Link mit injeziertem Skript geschickt
  • Ruft der Nutzer den Link auf, wird das Skript ausgeführt

Dom Injection XSS (Typ 0)

  • Interpretierte Objekte werden von Skripten ausgeführt
  • Enthalten die Objekte (z.b. über queries) bösartigen Code, kann dieser ausgeführt werden

Gegenmaßnahmen

  • Übergegebene Parameter auf Metazeichen testen/filtern oder konvertieren
  • Eingaben HTML-Sicher konvertieren