IPA公式正解:ア 攻撃: SQL インジェクション対策: SQL 文の組立てに静的プレースホルダを使用する。
※ 正解はIPA公表の解答です。解説は当サイトが生成AIを用いて作成しています。誤りにお気づきの場合はお問い合わせください。
【解説】正解は選択肢【ア】です。SQLインジェクション対策として、SQL文の構造を固定化してデータの値をプレースホルダとして扱う静的プレースホルダを使用することが有効です。
【詳細解説】■ 本問の核心・解法のポイント
安全なWebアプリケーションの設計・実装における攻撃手法と適切な防御策の組み合わせを問う問題です。
・各選択肢の徹底解説:
・ア:【選択肢ア★】 SQLインジェクション対策として、動的にSQL文を組み立てるのではなく、静的プレースホルダ(パラメータ化クエリ)を利用してSQL文と入力データを分離することは最も有効な対策です。
・イ:任意の外部サイトのスタイルシートを取り込めるようにすると、クロスサイトスクリプティング(XSS)等の脆弱性や意図しない情報漏洩を招くおそれがあり、不適切です。
・ウ:クロスサイトリクエストフォージェリ(CSRF)対策として、GETメソッドは状態変更を伴う処理に使うべきではなく、POSTメソッドの利用や推測困難なトークンの付与が必要です。
・エ:セッションハイジャック対策として、利用者ごとに固定のセッションIDを使用することは、セッション固定化攻撃や予測攻撃に対して極めて脆弱であり、認証成功後に新しいセッションIDに再発行(セッションIDの変更)すべきです。
よって正解はアです。