カコモンノート

問41基本情報技術者 平成30年度 春期

41 / 80問
平成30年度 春期

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

選択肢をえらぶと、答えと解説が出ます

選択肢をえらぶと、
ここに答えと解説が出ます
正答 1

解説

防ぐ要は,入力された文字が,データベースへの問合せや操作の中で特別な意味をもつ文字として解釈されないようにすることにある。根本的な解決は,SQL 文の組み立てを全てプレースホルダで実装するか,文字列連結で組み立てる場合に特別な意味を持つ記号文字をエスケープ処理することになる。プレースホルダでは機械的な処理で SQL 文が組み立てられ,この脆弱性を解消できる。

KEY POINT
SQL インジェクションは,入力の文字を特別な意味で解釈させないことで防ぐ
出典:平成30年度 春期 基本情報技術者試験 午前 問41(独立行政法人 情報処理推進機構(IPA))
独立行政法人情報処理推進機構(IPA)が公表している過去問題です。IPA の「過去問題の使用について」に基づき、IPA が指定する形で出典を明記して掲載しています(利用の許諾申請は不要)。問題文・選択肢の内容は変えていません。本文は IPA が公表した問題冊子の頁を人が読んで起こし、別の読み手が原本と突き合わせています。その都合で、改行・字間の空白は省き、英数字の全角・半角は元とそろえていない箇所があります。図表は IPA が公表した問題冊子のものです。解説は当サイトが独自に作成したもので、IPA とは関係ありません。