Taint Analysis
Die Taint-Analyse verfolgt, wie nicht vertrauenswürdige Daten (Taint-Quellen) durch ein Programm propagieren, und prüft, ob sie gefährliche Operationen (Taint-Senken) erreichen.
Zweck
Injektionsschwachstellen (SQLi/XSS/Befehlsinjektion) erkennen und sicherstellen, dass Benutzereingaben bereinigt werden, bevor sie gefährliche Operationen erreichen.
Mechanismus
Benutzereingaben werden als Taint-Quellen markiert und ihre Ausbreitung über Zuweisungen und Operationen verfolgt. Warnt, wenn verunreinigte Daten unaufbereitet eine Senke (SQL-Query, exec, innerHTML) erreichen. Statisch (FlowDroid) oder dynamisch (TaintTrace) implementiert.
Anwendungsfälle
- Erkennung von Injektionsschwachstellen
- Sicherheitsaudit
- Datenflussverfolgung