応用情報技術者 2018年 秋期 午前2 問43
問題文
脆弱性検査手法の一つであるファジングはどれか。
選択肢
ア:既知の脆弱性に対するシステムの対応状況に注目し、 システムに導入されているソフトウェアのバージョン及びパッチの適用状況の検査を行う。
イ:ソフトウェアのデータの入出力に注目し、問題を引き起こしそうなデータを大量に多様なパターンで入力して挙動を観察し、 脆弱性を見つける。(正解)
ウ:ベンダや情報セキュリティ関連機関が提供するセキュリティアドバイザリなどの最新のセキュリティ情報に注目し、 ソフトウェアの脆弱性の検査を行う。
エ:ホワイトボックス検査の一つであり、 ソフトウェアの内部構造に注目し、 ソースコードの構文をチェックすることによって脆弱性を見つける。
脆弱性検査手法の一つであるファジングはどれか【午前2 解説】
要点まとめ
- 結論:ファジングは大量かつ多様なデータをソフトウェアに入力し、異常挙動を観察して脆弱性を発見する手法です。
- 根拠:ファジングはブラックボックステストの一種で、ソフトウェアの入出力に注目し、問題を引き起こす可能性のあるデータを自動生成して検査します。
- 差がつくポイント:ファジングはソースコードを解析しない点や、既知の脆弱性情報に依存しない点で他の検査手法と明確に区別されます。
正解の理由
イは「ソフトウェアのデータの入出力に注目し、問題を引き起こしそうなデータを大量に多様なパターンで入力して挙動を観察し、脆弱性を見つける」と説明しており、これはファジングの定義に完全に合致します。ファジングは未知の脆弱性を発見するために、意図的に異常なデータを与えてソフトウェアの耐性を試す手法です。
よくある誤解
ファジングは単に既知の脆弱性情報を調べるものではなく、ソースコードの解析を行うホワイトボックステストでもありません。大量の異常データを使う点が特徴です。
解法ステップ
- 問題文の「ファジング」の定義を思い出す。
- 選択肢の説明が「大量の異常データを入力して挙動を観察する」か確認する。
- 既知の脆弱性情報やソースコード解析に関する説明はファジングではないと判断する。
- 最もファジングの特徴を表す選択肢を選ぶ。
選択肢別の誤答解説
- ア:ソフトウェアのバージョンやパッチ適用状況を検査するのは「脆弱性管理」や「構成管理」であり、ファジングではありません。
- イ:正解。大量の異常データを使い、ソフトウェアの挙動を観察して脆弱性を発見するファジングの説明です。
- ウ:セキュリティアドバイザリなどの情報を利用するのは「情報収集」や「脆弱性情報管理」であり、ファジングとは異なります。
- エ:ソースコードの構文チェックは「静的解析」や「ホワイトボックステスト」の一種で、ファジングとは異なります。
補足コラム
ファジングは自動化が容易で、未知の脆弱性を発見しやすい点が特徴です。近年はAIを活用した高度なファジング技術も登場し、セキュリティ検査の重要な手法として注目されています。一方で、ファジングだけでは全ての脆弱性を検出できないため、静的解析や情報収集と組み合わせて使うことが効果的です。
FAQ
Q: ファジングはホワイトボックステストですか?
A: いいえ。ファジングはソフトウェアの内部構造を知らずに外部から異常データを入力するブラックボックステストの一種です。
A: いいえ。ファジングはソフトウェアの内部構造を知らずに外部から異常データを入力するブラックボックステストの一種です。
Q: ファジングで見つかる脆弱性はどんなものですか?
A: バッファオーバーフローや例外処理の不備など、異常な入力に対してソフトウェアが誤動作する脆弱性が見つかりやすいです。
A: バッファオーバーフローや例外処理の不備など、異常な入力に対してソフトウェアが誤動作する脆弱性が見つかりやすいです。
関連キーワード: ファジング、脆弱性検査、ブラックボックステスト、静的解析、セキュリティテスト

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

