Taint Analysis
汚染解析は、信頼できないデータ(汚染源)がプログラム内をどのように伝播するかを追跡し、危険な操作(汚染シンク)に到達するかを検査する。
目的
インジェクション脆弱性(SQLi/XSS/コマンドインジェクション)を検出し、ユーザー入力が危険な操作に届く前にサニタイズされていることを保証する。
メカニズム
ユーザー入力を汚染源としてマークし、代入や演算を通じた伝播を追跡する。汚染データがサニタイズされずにシンク(SQL クエリ、exec、innerHTML)へ到達すると警告する。静的(FlowDroid)または動的(TaintTrace)に実装される。
ユースケース
- インジェクション脆弱性の検出
- セキュリティ監査
- データフローの追跡