平成30年度秋期 応用情報技術者試験 午前 問43
脆弱性検査手法の一つであるファジングはどれか。
- ア 既知の脆弱性に対するシステムの対応状況に注目し,システムに導入されているソフトウェアのバージョン及びパッチの適用状況の検査を行う。
- イ ソフトウェアのデータの入出力に注目し,問題を引き起こしそうなデータを大量に多様なパターンで入力して挙動を観察し,脆弱性を見つける。
- ウ ベンダや情報セキュリティ関連機関が提供するセキュリティアドバイザリなどの最新のセキュリティ情報に注目し,ソフトウェアの脆弱性の検査を行う。
- エ ホワイトボックス検査の一つであり,ソフトウェアの内部構造に注目し,ソースコードの構文をチェックすることによって脆弱性を見つける。
解答・解説を見る
正解:イ
AI解説
正解はイ。ファジングは、問題を引き起こしそうなデータ(ファズ)を大量に多様なパターンで対象ソフトウェアに入力し、その挙動(異常終了、ハングアップなど)を観察して未知の脆弱性を発見する動的な検査手法である。「大量・多様な入力データ」「挙動の観察」がキーワードとなる。 ア: ソフトウェアのバージョンやパッチ適用状況を調べるのは、既知の脆弱性に対する脆弱性スキャン(セキュリティ検査)の説明である。 イ: 正しい。想定外のデータを大量に与えて挙動を観察するのがファジングであり、IoT機器の検査などでも活用される。 ウ: セキュリティアドバイザリなど最新情報に基づく検査は、脆弱性情報の収集・照合による検査の説明である。 エ: ソースコードの構文をチェックするのは静的解析(ホワイトボックス検査)の説明であり、実行時の挙動を観察するファジングとは異なる。 💡 ファジング=「ファズ(fuzz:無意味・異常なデータ)を大量投入して壊れ方を見る」ブラックボックス的動的検査。ソースコードを見る静的解析との対比で覚えると選択肢を切りやすい。
出典:平成30年度 秋期 応用情報技術者試験 午前 問43 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。