IPA公式正解:イ ソフトウェアの,データの入出力に注目し,問題を引き起こしそうなデータを大量に多様なパターンで入力して挙動を観察し,脆弱性を見つける。
※ 正解はIPA公表の解答です。解説は当サイトが生成AIを用いて作成しています。誤りにお気づきの場合はお問い合わせください。
【解説】正解は選択肢【イ】です。ファジング(Fuzzing)は、ソフトウェアの脆弱性を検出するテスト手法の一つです。検査対象のソフトウェアに対して、想定外の入力データや極端に長い文字列、不正な形式のデータ(ファズ)を大量かつ多様に送り込み、クラッシュやエラー発生などの挙動を監視して未知の脆弱性を発見します。
【詳細解説】■ 本問の核心・解法のポイント
ソフトウェアテストおよび脆弱性検査手法における「ファジング」のメカニズムを正しく理解しているかが問われます。ブラックボックステストの一種として、予期しない異常な入力を大量に与えて挙動を観察する手法です。
・各選択肢の徹底解説:
・ア:不適切です。パッチの適用状況や既知の脆弱性との突合を行う手法は「脆弱性スキャナ」等による既知の脆弱性検査です。
・イ:【選択肢イ★】適切です。問題を引き起こしそうな無効・予期せぬデータ(ファズ)を自動的に大量入力し、異常終了やメモリリークなどの挙動を観察して潜在的な脆弱性を見つける手法がファジングです。
・ウ:不適切です。ソースコードの構文チェックを行い内部構造から脆弱性を探索する手法は「静的コード解析(静的アプリケーションセキュリティテスト:SAST)」です。
・エ:不適切です。セキュリティアドバイザリ等に基づいて検査を行うのは、セキュリティ情報管理や脆弱性データベースを用いた情報収集・分析のアプローチです。
よって正解はイです。