平成20年秋期試験問題 午前問73

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

  • 入力値から,上位ディレクトリを指定する文字(../)を取り除く。
  • 入力値から,データベースへの問合せや操作において特別な意味をもつ文字を解釈されないように保護する。
  • 入力値にHTMLタグが含まれていたら,解釈,実行できないほかの文字列に置き換える。
  • 入力値の全体の長さが制限を超えていたときは受け付けない。
正解 問題へ
分野:テクノロジ系
中分類:セキュリティ
小分類:セキュリティ実装技術
解説
SQLインジェクション攻撃は、ユーザーからの入力をもとにSQL文を組み立てるウェブアプリケーションのセキュリティ上の不備を悪用して、データベースシステムを不正に操作するSQL文を発行させ、情報の不正取得やデータベースの破壊を行う攻撃です。SQLインジェクションを防ぐには、ユーザーの入力値の中でSQLにおいて特別な意味を持つ文字(単一引用符「'」やバックスラッシュ「\」など)を、無効化してからSQL文に組み込むことが重要かつ効果的な対策となります。

したがって「イ」が適切です。
  • ディレクトリトラバーサル攻撃を防ぐ方法です。
  • 正しい。SQLインジェクション攻撃を防ぐ方法です。
  • クロスサイトスクリプティング(XSS)を防ぐ方法です。
  • バッファオーバーフロー攻撃を防ぐ方法です。

この問題の出題歴


Pagetop