応用情報技術者試験 応用情報技術者試験 令和5年度秋期 午前 問46: 問題を引き起こす可能性があるデータを大量に入力し,そのときの応答や挙動を監視することによって,ソフトウェアの脆弱性を検出するテスト手法はどれか。
問題を引き起こす可能性があるデータを大量に入力し,そのときの応答や挙動を監視することによって,ソフトウェアの脆弱性を検出するテスト手法はどれか。
73.06%
問題本文
問題を引き起こす可能性があるデータを大量に入力し,そのときの応答や挙動を監視することによって,ソフトウェアの脆弱性を検出するテスト手法はどれか。
選択肢
- ア.限界値分析
- イ.実験計画法
- ウ.ファジング
- エ.ロードテスト
解説
ファジング(fuzzing)は,極端な値・想定外・不正な形式といった問題を引き起こしそうなデータ(ファズ)を大量に自動生成してソフトウェアに入力し,異常終了やハングなどの応答・挙動を監視して脆弱性やバグを検出するテスト手法である。問題文の“問題を起こしそうなデータを大量入力し挙動を監視する”という記述がこれに一致するため,正解はウ。
選択肢ごとの解説
- ア.限界値分析は同値クラスの境界となる値を選んでテストするブラックボックステスト技法で,少数の代表的な境界値を狙うものであり,大量データを投入して脆弱性を探す手法ではない。
- イ.実験計画法は複数の要因を効率的に組み合わせて少ない試行で効果を分析する統計的手法で,脆弱性検出のための大量入力テストではない。
- ウ.正しい。問題を起こしそうなデータを大量に入力し応答や挙動を監視して脆弱性を見つける,というファジングの定義そのものである。
- エ.ロードテストは想定される負荷をかけたときの性能や安定性を確認する性能試験であり,脆弱性を検出する目的の手法ではない。
応用情報技術者試験 令和5年度秋期 午前 の過去問一覧へ戻る・問46