インジェクション
意味・解説
アプリの入力欄などに悪意のある命令文を「注入」し、不正操作を行う攻撃の総称。
ソフトウェアの脆弱性を利用し、開発者が意図しないデータやコードを入力させることで、データベースの不正操作や情報の奪取、システムの破壊を試みる攻撃手法。代表的なものに「SQLインジェクション」や「OSコマンドインジェクション」がある。入力値の適切な検証や無効化(サニタイジング)が欠かせない。
くわしく
プログラムの隙を突いて「偽の命令」を送り込み、システムを乗っ取るサイバー攻撃である。
1. 攻撃の仕組み:Webサイトの検索窓やログインフォームに、特別な意味を持つ記号(「'」や「;」など)を含むコマンドを入力する。プログラムがこの入力を「ただのデータ」としてではなく「命令の一部」として解釈してしまうと、本来アクセスできないデータを表示したり、ファイルを削除したりといった実行がなされる。
2. 主要な種類:SQL文を注入してデータベースを盗む「SQLインジェクション」、OSへの命令を送り込む「OSコマンドインジェクション」、電子メールのヘッダを書き換える「メールヘッダインジェクション」などがある。
3. 実務での対策:最も基本的な対策は、ユーザーからの入力に含まれる特別な記号を無害な文字列に置き換える「エスケープ処理(サニタイジング)」である。また、データベースへのアクセスに「プレースホルダ」という仕組みを利用することで、命令とデータを物理的に切り離す設計が推奨される。
例文
Webアプリケーションの脆弱性診断で、パスワード入力欄に対するSQLインジェクションの脆弱性が発見された。
過去問での出題状況
直近29回分の過去問(全2,900問)を解析した結果、10回登場しています(出題された年度: 9年度)。
出典: 本サイト独自集計(問題文および全選択肢テキストからの用語出現頻度・2026年6月時点)