SQL Injection

Die SQL Injection ist ein Exploit, der sich den Umstand zunutze macht, dass Software für Datenbankabfragen nicht immer gründlich prüft, ob eine Abfrage evtl. durch Formulareingaben eingeschleuste schädliche Kommandos enthält.

Cyberkriminelle nutzen SQL Injection in Kombination mit Cross Site Scripting (XSS) und Malware, um Webseiten zu knacken und dort Daten zu extrahieren oder schädlichen Code einzubetten.

Bei der SQL Injection werden Befehle an einen Webserver gesendet, der mit einer SQL-Datenbank verknüpft ist. Wenn der Server nicht richtig aufgesetzt und gehärtet ist, behandelt er Daten, die in ein Formularfeld eingegeben werden (zum Beispiel einen Benutzernamen) als Befehle, die auf dem Datenbankserver auszuführen sind. Ein Angreifer kann dadurch beispielsweise einen Befehl einschleusen, der den gesamten Inhalt der Datenbank (etwa Kundendatensätze und Zahlungsinformationen) herausgibt.

Das wohl bekannteste Datenloch, das per SQL Injection entstand, trat im März 2008 auf, als Hacker die Systeme des Zahlungsabwicklers Heartland Payment Systems knackten und 134 Mio. Kreditkartendaten stahlen.

Web Application Firewalls (WAFs) schützen vor dieser Art von Angriff mit einem hoch entwickelten System an Mustern, die an den Webserver übermittelte SQL-Befehle erkennen. Wie bei jedem musterbasierten System ist es für einen bestmöglichen Schutz auch hier erforderlich, die Muster regelmäßig zu aktualisieren, um neue, kreative Methoden zur Einbettung von SQL-Injection-Befehlen abzuwehren.

download Schreckxikon: Bedrohungen von A bis Z
Zum Download