Command Injection
Command Injection liegt vor, wenn ein Angreifer Shell-Metazeichen in einen vom Programm zusammengesetzten Systembefehl einschleust und so beliebige Befehlsausführung erreicht.
Zweck
Die durch das Verketten von Systembefehlen verursachte Command Injection und ihre Abwehr verstehen; eine häufige Schwachstelle in Programmen, die eine Shell aufrufen.
Mechanismus
Das Programm verkettet per system("cmd " + input); ein Angreifer gibt ;rm -rf / ein, sodass die Shell einen zusätzlichen Befehl ausführt. Abwehr: Shell vermeiden, parametrisiertes exec, Eingabevalidierung und Escaping.
Anwendungsfälle
- Shell-Befehlssicherheit
- Systemaufruf-Auditing
- Abwehr der Befehlsverkettung