マナビング情報セキュリティマネジメント

ホワイトボックステストの見分け方は内部情報を使うかどうか

情報セキュリティマネジメント試験 令和8年度 問5 / セキュリティ › 情報セキュリティ対策

過去問にチャレンジ

令和8年度 問5

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

  1. ア

    検査対象のソフトウェア製品に対して,外部仕様を基に,問題を引き起こしそうなデータを大量に送り込み,その応答や挙動を監視することによって脆弱性を検出する。

  2. イ

    検査対象のネットワークに対して,ネットワークの構成図や機器名などの情報を得ずに,TCP/IPに係る既知の脆弱性を攻撃し,実際に侵入できるかどうかを確認することによって脆弱性を検出する。

  3. ウ

    検査対象のプログラムの内部構造及び内部仕様を基に,脆弱性の可能性がある箇所の処理で使われる入力値を変化させて実行することによって脆弱性を検出する。

  4. エ

    検査対象のプログラムの内部仕様を参照せずに,変数領域のあふれを見つけ出すツールを利用して,バッファオーバフローの脆弱性を検出する。

会話形式の解説

講師講師
今回は、脆弱性を見つける検査手法の中からホワイトボックステストに当たるものを選ぶ問題です。注目するのは、検査のときにプログラムの内部の情報を使っているかどうかです。
受験者受験者
ホワイトボックステストは、中身が見える状態でテストする、という理解で合っていますか。
講師講師
合っています。プログラムの内部構造や内部仕様を把握したうえで行うテストです。反対にブラックボックステストは内部構造を参照せず、外から入力して出力や挙動だけで確かめます。
受験者受験者
それなら、内部構造と内部仕様を基にして、脆弱性がありそうな箇所の入力値を変えて実行する選択肢が当てはまりそうです。
講師講師
それが正解です。内部の情報を使って、怪しい箇所に狙いを定めて検査しているので、ホワイトボックステストの特徴に合っています。
受験者受験者
外部仕様を基にデータを大量に送り込んで、応答や挙動を監視するものは何という手法ですか。
講師講師
ファジングです。問題を起こしそうなデータを送り込んで挙動を見る手法で、内部構造は参照しません。入力と挙動だけを見るので、ブラックボックス的な手法に当たります。
受験者受験者
ネットワークの構成図や機器名を得ずに既知の脆弱性を攻撃して、侵入できるか確かめるものは、ペネトレーションテストでしょうか。
講師講師
そうです。ペネトレーションテストは侵入テストとも呼ばれます。この選択肢では内部情報を持たずに外から試しているので、ブラックボックス型です。
受験者受験者
変数領域のあふれを見つけるツールでバッファオーバフローを検出する選択肢は少し迷いました。専用のツールで具体的な脆弱性を探すので、内部を調べているようにも見えます。
講師講師
そこは文中の「内部仕様を参照せずに」という言葉で判断します。ツールを使うことや、具体的な脆弱性の名前が出てくることは、ホワイトボックスかどうかの判断材料にはなりません。内部の情報を使っていないので、ブラックボックステストに当たります。
受験者受験者
「外部仕様を基に」「情報を得ずに」「参照せずに」という言葉があれば外から検査する手法で、内部構造や内部仕様を基にしていればホワイトボックス、という見分け方ですね。
講師講師
その通りです。補足すると、ソースコードを解析する静的解析ツールはホワイトボックス的な検査に使えます。また、内部情報を一部だけ使う中間的な検査はグレイボックスと呼ばれます。手段ではなく、内部情報をどこまで使うかで整理しておくと迷いにくくなります。

まとめ

ホワイトボックステストは、プログラムの内部構造や内部仕様を把握したうえで行うテストです。この問題では、内部構造と内部仕様を基に、脆弱性がありそうな箇所の入力値を変えて実行する選択肢が正解です。外部仕様を基にデータを大量に送り込むファジングや、内部情報なしで侵入を試すペネトレーションテストは、ブラックボックス型の手法です。ツールの利用や具体的な脆弱性名は判断材料にならず、内部の情報を使うかどうかで見分けます。

解答・解説

正解はウです

この問題のテーマ

脆弱性を見つけるための検査手法のうち、ホワイトボックステストに当たるものを選ぶ問題です。内部の情報を使って検査するかどうかで、ブラックボックス型の手法と見分けられるかが問われています。

解き方の考え方

ホワイトボックステストは、プログラムの内部構造や内部仕様を把握したうえで行うテストです。そこで、各選択肢が検査のときに内部の情報を使っているかどうかを見ます。「外部仕様を基に」「情報を得ずに」「参照せずに」といった言葉があれば、外から検査する手法だと判断できます。この見方で選ぶと、内部構造と内部仕様を基にしているウだけが残ります。

選択肢ごとの解説

  1. ×ア  検査対象のソフトウェア製品に対して,外部仕様を基に,問題を引き起こしそうなデータを大量に送り込み,その応答や挙動を監視することによって脆弱性を検出する。
    外部仕様を基に、問題を起こしそうなデータを大量に送り込み、応答や挙動を監視するという説明は、ファジングのことです。ファジングは内部構造を参照せずに入力と挙動だけを見るので、ブラックボックス的な手法に当たります。
  2. ×イ  検査対象のネットワークに対して,ネットワークの構成図や機器名などの情報を得ずに,TCP/IPに係る既知の脆弱性を攻撃し,実際に侵入できるかどうかを確認することによって脆弱性を検出する。
    ネットワークの構成図や機器名を得ないまま既知の脆弱性を攻撃し、侵入できるかを確かめるという説明は、ペネトレーションテスト(侵入テスト)のことです。内部情報を持たずに外から試すやり方なので、ブラックボックス型に当たります。
  3. ○ウ  検査対象のプログラムの内部構造及び内部仕様を基に,脆弱性の可能性がある箇所の処理で使われる入力値を変化させて実行することによって脆弱性を検出する。
    内部構造と内部仕様を基に、脆弱性がありそうな箇所を絞り込み、その処理で使う入力値を変えて実行するという説明です。内部の情報を使って狙いを定めて検査しているので、ホワイトボックステストの特徴に合っています。
  4. ×エ  検査対象のプログラムの内部仕様を参照せずに,変数領域のあふれを見つけ出すツールを利用して,バッファオーバフローの脆弱性を検出する。
    変数領域のあふれを見つけるツールでバッファオーバフローを検出するという説明ですが、「内部仕様を参照せずに」とあるので、ブラックボックステストに当たります。ツールを使うかどうかは、ホワイトボックスかどうかの判断基準にはなりません。

補足

エのように、ツールを使ったり、バッファオーバフローのような具体的な脆弱性の名前が出てきたりすると、ホワイトボックスだと思い込みやすいので注意してください。判断は手段ではなく、内部の情報を使うかどうかで行います。なお、ソースコードを解析する静的解析ツールは、ホワイトボックス的な検査に使えます。内部情報を一部だけ使う中間的な検査は、グレイボックスと呼ばれます。

POINT

  • ホワイトボックステストは、内部構造や内部仕様を把握したうえで行うテストです。
  • ブラックボックステストは内部構造を参照せず、外からの入力に対する出力や挙動で確かめます。
  • 見分けるときは、検査に内部の情報を使っているかどうかに注目します。
  • 外部仕様を基に大量のデータを送り込むファジングや、内部情報なしで侵入を試すペネトレーションテストは、ブラックボックス型の手法です。

※出典:令和8年度 情報セキュリティマネジメント試験 科目A 問5