戦国IT - 情報処理技術者試験の過去問対策サイト
ブログお知らせお問い合わせ料金プラン

情報セキュリティマネジメント 2026年 科目A05


問題文

情報セキュリティでの脆弱性の検出に用いられるホワイトボックステストに該当するものはどれか。

選択肢

検査対象のソフトウェア製品に対して、外部仕様を基に、問題を引き起こしそうなデータを大量に送り込み、その応答や挙動を監視することによって脆弱性を検出する。
検査対象のネットワークに対して、ネットワークの構成図や機器名などの情報を得ずに、TCP/IPに係る既知の脆弱性を攻撃し、実際に侵入できるかどうかを確認することによって脆弱性を検出する。
検査対象のプログラムの内部構造及び内部仕様を基に、脆弱性の可能性がある箇所の処理で使われる入力値を変化させて実行することによって脆弱性を検出する。(正解)
検査対象のプログラムの内部仕様を参照せずに、変数領域のあふれを見つけ出すツールを利用して、バッファオーバーフローの脆弱性を検出する。

🔒 解説は解答すると表示されます

ホワイトボックステスト【情報セキュリティマネジメント解説】

正解の理由

ホワイトボックステストとは、検査対象の内部構造や内部仕様(処理の流れや変数の使われ方など)を知った上で行うテストです。設問中、内部構造や内部仕様を基にして入力値を変化させながら実行して脆弱性を探す記述がある選択肢は だけです。したがって、内部情報を利用して脆弱性の起きやすい箇所を狙い打ちする手法である点から、 が正解になります。
(用語補足)ホワイトボックステスト:内部構造が「見える(white)」状態で行うテスト。対照的に外部仕様だけで行うものをブラックボックステストと呼びます。

解法ステップ

  1. 設問のキーワードを探す:「内部構造」「内部仕様」「処理で使われる入力値を変化させて実行」など内部情報を使う表現を探す。
  2. 内部情報の有無で分類する:内部情報を使う→ホワイトボックス、内部情報を使わない→ブラックボックス(またはグレイボックス)と判断する。
  3. 各選択肢を照合:内部情報を明示しているものがホワイトボックスに該当するので、その選択肢を選ぶ。
ポイント:問題文に「参照せずに」「外部仕様を基に」「情報を得ずに」などの語句があれば、それはホワイトボックスではない(外部からのテスト)ことを示します。

選択肢別の誤答解説

  • ア:外部仕様を基に大量のデータを送り挙動を監視する方法です。これは一般にファジング(fuzzing:大量・変則入力を与えて不具合を探す手法)やブラックボックス的な入力検査に当たります。内部構造を前提にしていないためホワイトボックスではありません。
  • イ:ネットワークの構成図など情報を得ずに既知の脆弱性を攻撃して侵入を試みるのは、外部からの侵入テスト(ブラックボックスのペネトレーションテスト)です。TCP/IP(Transmission Control Protocol/Internet Protocol:インターネット通信の基本規格)に係る既知脆弱性への攻撃はネットワーク側の試験で、ホワイトボックスの説明とは一致しません。
  • ウ:内部構造・内部仕様を基に入力を変えて実行する、つまり処理の中身を知った上で脆弱性を狙う点がホワイトボックステストの定義に合致します。したがって本問の正解になります。
  • エ:内部仕様を参照せずにツールを使ってバッファオーバーフローを検出する、という記述は「内部情報を使わない」ためホワイトボックスには当たりません。補足すると、ツールの種類によってはソースコードを解析する「静的解析(SAST:Static Application Security Testing)」でホワイトボックス的に使えるものもありますが、本選択肢は「参照せずに」と明言しているため不適です。

よくある誤解

  • 誤解1:ファジングはホワイトボックスだと思い込む。
    → 多くのファジングは外部からランダムや準ランダム入力を与えるブラックボックス的手法です(ただし、内部情報を使うインストゥルメンテーション付きファジングはグレイ/ホワイト寄りになります)。
  • 誤解2:ホワイトボックス=必ずソースコードの確認が必要と思う。
    → ソースコードが最も分かりやすいが、内部仕様書やフローチャートなど設計資料でもホワイトボックス的なテストは可能です。
  • 誤解3:自動ツールで検出すればそれはホワイトボックスだと思う。
    → ツールの使い方次第です。ツールが内部情報を使って解析するならホワイトボックスになりますが、外部からのスキャンツールであればブラックボックスです。

補足コラム

  • 主なホワイトボックス手法:静的解析(SAST:ソースコードを実行せずに解析)、コードレビュー、単体テストでの境界値テスト、シンボリック実行(符号解析で実行パスを検証)など。
  • 実務での運用イメージ:開発チームがソースコードや設計書をセキュリティ担当に提供し、静的解析をCI(継続的インテグレーション)に組み込んで自動検出→開発側で修正、という流れが一般的です。外部委託する場合はソースコードの取り扱い(秘密保持)や検査範囲を契約で明確にします。
  • 長所と短所:内部の論理的欠陥や境界条件ミスを見つけやすい一方、実行環境依存の問題(設定ミスやネットワーク構成による脆弱性)は見落としやすい点に注意してください。

FAQ

Q1: ホワイトボックスとブラックボックスはどちらが優れている?
A1: 目的が違います。ホワイトボックスは内部ロジックの欠陥検出に強く、ブラックボックスは実運用に近い外部からの攻撃シナリオの検証に適します。両方を組み合わせる(多層的検査)が望ましいです。
Q2: 「グレイボックス」とは何ですか?
A2: 部分的に内部情報(設計の一部や認証情報)を使う検査で、ブラックボックスとホワイトボックスの中間です。現場では効率と実用性の観点からよく使われます。
Q3: ホワイトボックスを行う際に気をつける実務上の点は?
A3: ソースコードや設計書は機密情報なので、取り扱いポリシー(アクセス制限、NDA)を整えること。検査後は修正の優先度と責任者を明確にする運用が重要です。

関連キーワード: ホワイトボックステスト、ブラックボックステスト、ファジング、静的解析、脆弱性検査
← 前の問題へこの年度をクイズで解く次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

情報セキュリティマネジメント
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてブログプライバシーポリシー利用規約特商法表記開発者について