問題プレビューID: f07ca57e

問 42

SQL インジェクション攻撃を防ぐ方法はどれか。

解説

SQL インジェクション は、アプリケーションの入力不備を突き、悪意のある SQL 文を注入(インジェクション)してデータベースを不正操作する攻撃です。

  • ア: 正解。バインド機構(プレースホルダ)を利用したり、シングルクォート (') などの特別な意味を持つ文字をエスケープ処理したりすることで、入力値が SQL 命令の一部として解釈されるのを防ぎます。
  • イ: サニタイズ(無害化)の一種ですが、これは主にクロスサイトスクリプティング (XSS) 対策です。
  • ウ: ディレクトリトラバーサル攻撃への対策です。
  • エ: バッファオーバフロー攻撃などへの限定的な対策にはなりますが、SQL インジェクションの根本的な解決にはなりません。