令和8年度 ITパスポート試験 公開問題 問95 解説 サニタイジング
SQL インジェクションの対策などで用いられ,処理の誤動作を招かないように,利用者がWeb サイトに入力した内容に含まれる有害な文字列を無害な文字列に置き換えることを何と呼ぶか。
- ア MAC アドレスフィルタリング
- イ サニタイジング ✓ 正答
- ウ ストライピング
- エ ソーシャルエンジニアリング
解説
この問題の解き方:キーワードから判断する
この問題は、設問内の「入力した内容に含まれる有害な文字列を無害な文字列に置き換える」という定義から、セキュリティ対策の用語であるサニタイジングを直ちに選択できます。
セキュリティの知識問題では、特定の攻撃手法(SQLインジェクションやクロスサイトスクリプティングなど)と、それに対する防御策が対になって出題されます。今回の「無害化する」という操作は、情報の入力を受け付ける際に必須の処理であるため、用語と意味をセットで覚えるのが最短の攻略法です。
サニタイジングとは何か
サニタイジング(Sanitizing)は、日本語で「消毒」「無害化」を意味します。Webサイトなどでユーザーが入力したデータには、本来の目的とは異なる悪意のある命令や特殊な制御文字が含まれている可能性があります。
例えば、SQLインジェクションであれば「'(シングルクォーテーション)」などの記号が、Webアプリケーションを動かすデータベースへの命令を書き換えてしまうことがあります。サニタイジングを行うことで、これらの特殊文字を「ただの文字列」として変換し、プログラムが誤動作するのを防ぎます。
なぜサニタイジングが重要なのか
Webアプリケーションは、ユーザーの入力をそのまま処理してしまうと、開発者が想定していない挙動を引き起こす「脆弱性」を抱えることがあります。
- SQLインジェクション対策:データベースの操作権限を不正に奪われるのを防ぐ。
- クロスサイトスクリプティング(XSS)対策:ユーザーのブラウザ上で不正なスクリプトを実行させ、個人情報を盗み取られるのを防ぐ。
これらは、Webサイトを運営する上で避けては通れない代表的な脅威です。ITパスポート試験では、技術的な細部よりも「何のために行うのか(目的)」と「その手法の名前」が一致しているかが問われます。実際の現場では、開発言語のライブラリやフレームワークが標準でサニタイジング機能を持っていることが多いですが、システムの設計者や管理者は、これらの攻撃の原理と対策の重要性を理解しておく必要があります。
その他の選択肢について
- MACアドレスフィルタリング:特定の物理的なネットワーク機器(MACアドレス)からの通信のみを許可し、それ以外を拒否するネットワーク側のアクセス制御技術です。
- ストライピング:RAIDなどのストレージ技術において、データを分割して複数のディスクに書き込み、高速化を図る技術です。
- ソーシャルエンジニアリング:システムではなく、人間の心理的な隙や行動のミスにつけ込んで機密情報を盗み出す手法です。
これらはすべてセキュリティやインフラの重要用語ですが、サニタイジングとは全く異なる文脈で使われる言葉です。特にソーシャルエンジニアリングと混同しやすいため、技術的な対策(サニタイジング)と心理的な攻撃(ソーシャルエンジニアリング)を区別して整理しておきましょう。