・静的プレースホルダ(バインド機構)の利用: SQLインジェクションの最も根本的で効果的な対策は、「静的プレースホルダ」を利用することです。これは、プログラム側でSQL文の骨組み(コマンドの構造)をあらかじめ定義しておき、後からユーザーが入力したパラメータを「単なる値(データ)」として別枠で流し込む技術です。どれほど悪意あるSQL文が入力されても、それは単なるデータとして扱われるため、SQLの構造が変化することは絶対にありません。試験ではこの手法が最優先される対策である点を選択肢から選べるようにしてください。
・サニタイジング(エスケープ処理): SQL内で特別な意味を持つ記号(「'」や「\」など)を、単なる文字として扱わせるための無害化処理です。ただし、実装漏れのリスクがあるため、プレースホルダと併用することが推奨されます。
・WAF(Web Application Firewall)の導入: Webサーバーの手前で不正なSQLクエリ(シグネチャ)を含むパケットを検知して遮断する対策です。
試験問題では、「SQL文の組み立て」「プレースホルダの利用」「データベースの不正操作」といったフレーズと強く紐付けておくことが得点力に繋がります。
関連する用語
リレーショナルデータベースを操作するための問い合わせ言語「SQL」、Webアプリの脆弱性を突く他の代表的攻撃手法「クロスサイトスクリプティング(XSS)」、Webアプリ層の通信を監視して不正クエリを防ぐ「WAF」などがあります。
構成図・実機演習へ進む
用語を構成と操作へつなげる場合は、実技TOPとラボ一覧を利用できます。
ファクトチェック:試験要綱 Ver.5.6(2026-07-06公開、2026年10月試験から適用)。Ver.5.6は2026年10月試験から適用され、科目Aと科目Bを規定します。2026年8月時点では適用前の資料であるため、記事では適用日を明記し、詳細シラバスVer.7.2も併記します。
この記事は公式出題範囲・チェックリストとの対応を編集部で確認した学習解説です。
公式資料
用語集一覧 / ← 前の記事 / 次の記事 →