Die gefährlichen Schwestern: Cross-Site Request Forgery, Cross-Site Authentication und MySQL Injection
Bei Cross-Site Request Forgery (CSRF) - diese Gefahr ist aktuell in den Schlagzeilen - führt der Angreifer im Namen eines Opfers eine Aktion auf einer Website aus. Vereinfacht gesagt: XSS wird ausgenutzt, um Code im Browser des Benutzers auszuführen – bei CSRF werden die im Browser gespeicherten Informationen missbraucht, um im Namen des ahnungslosen Users Aktionen auf einer Website durchzuführen. Das ist der Fall, wenn ein Angreifer die Session-ID eines Anwenders kapert (weil der Anwender sich bei seinem letzten Besuch im Shop nicht korrekt ausgeloggt hat) und damit in einem Online-Shop einkauft, Session-Riding heißt dafür der Fachbegriff.
Beim verwandten Cross-Site Authentication werden einem Internetnutzer Zugangsdaten geklaut, indem man ihm ein gefälschtes Login-Formular vorgaukelt. Zum Beispiel, indem ein Angreifer ein Bild in einem als vertrauenswürdig angesehenen Forum platziert, für das man sich angeblich erst einloggen muss, wenn man es sehen will. Die dabei eingegebenen Logik-Daten schnappt sich dann der Angreifer.
(My)SQL Injektion heißt eine weitere ernste Bedrohung, die seit einiger Zeit von sich reden macht. Der augenscheinlich größte Unterschied aus der Sicht des Anwenders: Während XSS direkt gegen den Anwender und dessen Client gerichtet ist, zielt ein Angriff mittels MySQL Injektion auf den Website-Betreiber, genauer gesagt auf dessen MySQL-Datenbank. In der Konsequenz ist aber auch hier der Anwender das Opfer. Denn ob er nun direkt via XSS das Ziel eines Betrugsversuches wird oder aber beispielsweise seine Kundendaten wie Adresse oder Bankverbindung durch eine erfolgreiche MySQL Injection in falsche Hände geraten, der Leidtragende ist immer der Internetanwender.
Bei SQL-Injection schleust der Angreifer gegen den Willen des Datenbankbetreibers SQL-Befehle in die SQL-Datenbank ein. Er nutzt dazu genauso wie bei XSS-Hacks die unzureichende Validierung der Benutzereingaben aus. Mit den eingeschleusten SQL-Befehlen kann der Angreifer dann die Inhalte der Datenbank auslesen, beeinflussen (also beispielsweise Daten löschen oder deren Werte ändern) oder löschen. Auch hier besteht der Schutz im Maskieren von Sonderzeichen und verwandten Mechanismen. Bei Redaktionsschluss wurden etliche SQL Injections bei diversen Websites aus China und Taiwan gemeldet. (PCW/rw)