Code Injection
コードインジェクションとは、攻撃者が実行可能なコードをプログラムに注入し、eval/exec などを通じて実行することで、任意コード実行に至る脆弱性である。
目的
ユーザー入力の動的実行が引き起こすコードインジェクションとその防御を理解する。インタプリタ言語でよく見られる脆弱性である。
メカニズム
プログラムが eval(input) などでユーザーが制御可能な文字列を実行すると、攻撃者はコード文を注入できる。防御策は eval の回避、パラメータ化された API、入力バリデーション、サンドボックス化である。
ユースケース
- PHP/Python のセキュリティ監査
- eval 脆弱性への防御
- 動的実行のリスク