脆弱性検査手法におけるファジング(Fuzzing)の特徴

ファジング(Fuzz Testing / Fuzzing)は,ソフトウェアに「ファズ(fuzz: 予期しない不正な入力データ,境界値,ランダムデータ,極端な長さの文字列等)」を自動的に大量入力し,例外エラー,プログラムの強制終了(クラッシュ),メモリリークなどの挙動を監視することで未知の脆弱性を発見するテスト手法である。 イ: データの入出力に注目し,問題を引き起こしそうな多様なデータを大量に入力して挙動を観察する手法であり,ファジングの正確な説明である。 ア・ウ: 既知の脆弱性データベースやパッチ適用状況に基づく「脆弱性スキャナ」やセキュリティ診断の説明である。 エ: ソースコードの静的解析(静的コードチェック)の説明である。ファジングは基本的にプログラムを実行しながら外部入力を与えるブラックボックスまたはグレーボックスの動的テスト手法である。

脆弱性検査手法の一つであるファジングはどれか。

出典令和2年度 10月 プロジェクトマネージャ試験 午前Ⅱ 問25
既知の脆弱性に対するシステムの対応状況に注目し,システムに導入されているソフトウェアのバージョン及びパッチの適用状況の検査を行う。
ソフトウェアの,データの入出力に注目し,問題を引き起こしそうなデータを大量に多様なパターンで入力して挙動を観察し,脆弱性を見つける。
ベンダや情報セキュリティ関連機関が提供するセキュリティアドバイザリなどの最新のセキュリティ情報に注目し,ソフトウェアの脆弱性の検査を行う。
ホワイトボックス検査の一つであり,ソフトウェアの内部構造に注目し,ソースコードの構文をチェックすることによって脆弱性を見つける。