脆弱性の検出と対応
脆弱性とは、ソフトウェアや製品の設計・実装上の欠陥であり、攻撃者に悪用されると情報漏えいや不正な操作につながる弱点を指す。脆弱性への対策は、構成部品を把握して既知の脆弱性を照合する管理、テストによる未知の欠陥の発見、発見後に修正し利用者に伝える対応という流れで捉えると整理しやすい。
脆弱性の識別と構成部品の管理
既知の脆弱性を個別に特定するために、脆弱性情報サイトではCVE識別子が採用されている。CVEは公開された製品の脆弱性を一意に識別するための番号であり、セキュリティ設定項目やWebサイトの改ざん記録を識別するものではない。
SBOMは、ソフトウェアを構成する部品、そのバージョン、依存関係などを一覧にした情報である。SBOMに記載された部品とバージョンを脆弱性情報と照合すれば、利用中のソフトウェアにどの脆弱性が含まれるかを把握でき、対応の優先順位を検討する材料になる。
SBOMは構成を示す情報であり、利用者の認証アカウントの一元管理、ソースコードの変更履歴やアクセス制御、バックアップやマルウェア対策を直接担うものではない。どの対策がどの仕組みで行われるのかを切り分けて理解することが求められる。
脆弱性の検出手法としてのファジング
ファジングは、対象ソフトウェアに問題を引き起こしそうな多様な入力データを大量に与え、異常終了や予期しない挙動を監視して脆弱性や不具合を見つけ出す検査手法である。想定外の形式や値の入力に対する処理の不備を、実際の挙動から発見する点に特徴がある。
ファジングでは、入力データの形式や値を変えながら繰り返し試験を行うため、人が想定しなかった経路の欠陥を見つけられることがある。挙動を観察する対象はソフトウェアそのものであり、通信相手の状態を調べる手法とは目的が異なる。
この節の続き
- 検査と監視の使い分け
- 自社製品の脆弱性対応を担う機能
- 試験で問われやすい区別
ここまでが冒頭部分です。ログインすると、無料でも1日2節まで全文をお読みいただけます。
アプリでこの節を読む