過去問解きまくり研究所 ホーム

平成21年度 秋期 午前Ⅱ 問4

セキュリティ

SQLインジェクションの問題

SQLインジェクション対策として実施するものはどれか。

答えと解説を見る

✓ これが正解ウ入力文字列をエスケープ処理して特殊文字を無効にする。

解説

入力文字列の特殊文字をエスケープ処理して無効にします。

SQLインジェクションは、入力欄に SQL の一部として働く文字を紛れ込ませ、アプリケーションが組み立てる SQL 文の意味を書き換えてしまう攻撃です。対策の軸は、入力された文字がSQL文の構造として解釈されないようにすることです。引用符のように SQL で特別な意味をもつ文字をエスケープ処理すれば、それらはただの文字として扱われ、攻撃者が文の構造を変えることはできなくなります。送信方法を変えること、認証すること、通信を暗号化することは、どれも入力値そのものの解釈には手を付けません。攻撃がどこで成立するかを考え、SQL文を組み立てる箇所で手を打つものを選ぶと見分けられます。

ほかの選択肢はなぜ違うのか

この問題の用語

出典:平成21年度 秋期 システムアーキテクト試験 午前Ⅱ 問4

同じ用語が出る問題

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)