G 5.174 Injection-Angriffe
Bei einem Injection-Angriff versucht ein Angreifer, Befehle in die Webanwendung zu injizieren und auszuführen. Der Angriff richtet sich dabei in der Regel gegen einen Interpreter bzw. einen Parser, der von der Webanwendung verwendet wird.
Werden beispielsweise eingehende Daten der Webanwendung unzureichend validiert, so können Eingaben ( z. B. Formulardaten, Cookies oder HTTP -Header) so gewählt werden, dass sie von der Webanwendung und den verwendeten Interpretern bzw. Parsern (z. B. SQL -Datenbank, LDAP -Verzeichnisdienst) als Befehl interpretiert werden. Auf diese Weise können unbefugt Befehle zum Auslesen oder Manipulieren von Daten übermittelt werden.
Können mittels Injection beliebige System-Kommandos ausgeführt werden, so kann ein Angreifer die Webanwendung als Ersatz für eine System-Shell nutzen. Die abgesetzten System-Kommandos werden dabei üblicherweise im Sicherheitskontext und somit mit den Privilegien der Webanwendung oder des verwendeten Interpreters bzw. Parsers ausgeführt.
Injection-Angriffe werden anhand der angegriffenen Interpreter/Parser in Angriffstypen klassifiziert. Die folgenden Beispiele verdeutlichen diese Klassifizierung:
- SQL-Injection (siehe auch G 5.131 SQL-Injection )
- LDAP-Injection
- Mail-Command-Injection
- OS-Command-Injection
- SSI-Injection
- XPath-Injection
- Code-Injection