セキュリティ実装技術 (全38問中22問目)
No.22
SQLインジェクション攻撃を防ぐ方法はどれか。
出典:平成25年春期 問40
- 入力中の文字がデータベースへの問合せや操作において,特別な意味をもつ文字として解釈されないようにする。
- 入力にHTMLタグが含まれていたら,HTMLタグとして解釈されない他の文字列に置き換える。
- 入力に,上位ディレクトリを指定する文字(../)を含むときは受け付けない。
- 入力の全体の長さが制限を超えているときは受け付けない。
- [出題歴]
- 基本情報技術者 H27秋期 問42
- 基本情報技術者 H30春期 問41
- ソフトウェア開発技術者 H20秋期 問73
分類
テクノロジ系 » セキュリティ » セキュリティ実装技術
正解
ア
解説
SQLインジェクション攻撃は、ユーザーからの入力をもとにSQL文を組み立てるウェブアプリケーションのセキュリティ上の不備を悪用して、データベースシステムを不正に操作するSQL文を発行させ、情報の不正取得やデータベースの破壊を行う攻撃です。SQLインジェクションを防ぐには、ユーザーの入力値の中でSQLにおいて特別な意味を持つ文字(単一引用符「'」やバックスラッシュ「\」など)を、無効化してからSQL文に組み込むことが重要かつ効果的な対策となります。
したがって「ア」が適切です。
したがって「ア」が適切です。
- 正しい。SQLインジェクション攻撃を防ぐ方法です。
- クロスサイトスクリプティング(XSS)を防ぐ方法です。
- ディレクトリトラバーサル攻撃を防ぐ方法です。
- バッファオーバーフロー攻撃を防ぐ方法です。