Applikationssicherheit

Die größten Schwachstellen in Web-Anwendungen

02.11.2009
Von Christoph Wolfert

Injection Flaws

Injection-Fehler sind in Web-Anwendungen sehr verbreitet. Sie entstehen, wenn die Web-Applikation an sie übermittelte Daten ungeprüft als Programmcode verwendet. Injection-Schwachstellen gibt es in mehreren Ausprägungen - etwa Webscript Injection, OS Command Injection oder SQL-Injection. Letztere tritt am häufigsten auf: Dabei übermittelt ein Angreifer innerhalb eines Parameters (etwa eines Formularfelds) gültigen SQL-Code an die Web-Anwendung, die ihn dann ausführt. Das ermöglicht ihm, auf Daten in der Datenbank zuzugreifen, sich diese anzeigen zu lassen, zu manipulieren oder sogar zu löschen. Viele Datenbanken erlauben zudem das Ausführen von Systemkommandos, was die Gefahr einer feindlichen Übernahme des Datenbanksystems erhöht. Oft wird außer Acht gelassen, dass Datenbank-Server im Inneren einer IT-Landschaft stehen. Eine Injection-Schwachstelle ermöglicht es einem Angreifer somit, ein internes System anzugreifen - an vielen Sicherheitsmaßnahmen vorbei.

Was ist eigentlich...?

  • Webscript Injection: Bei einer Webscript Injection versucht ein Angreifer, präparierten Scriptcode auf dem Web-Server zur Ausführung zu bringen.

  • OS Command Injection: Bei dieser Angriffsvariante wird innerhalb von Formularfeldern ein Systemkommando untergebracht.

  • Man-in-the-Middle-Attacke: Hier steht der Angreifer zwischen zwei Kommunikationspartnern und versucht, die ausgetauschten Daten aufzuzeichnen oder zu manipulieren.