用語辞典・セキュリティ

脆弱性

脆弱性とは

脆弱性は、設計や実装、設定の不備により、攻撃や意図しない操作を許す可能性がある弱点です。英語ではvulnerability(ヴァルネラビリティ)と表します。

ソフトウェアのコードだけでなく、既定パスワード、広すぎる権限、公開範囲、運用手順、依存ライブラリー、ハードウェア・ファームウェアにも存在します。

弱点があること、悪用手法があること、実際に侵害されたことは別です。脆弱性、攻撃手法、インシデントを段階として分けます。

システム内の設計・コード・設定・運用・依存先の弱点へ脅威が到達し、資産へ影響する欠陥の存在と実際のリスクを複数要因で評価する
アプリケーション、データベース、サーバー、クラウドを持つシステムの設計、コード、設定、運用、部品に弱点があり、攻撃者の到達から業務影響へ進む上段、露出・悪用可能性・権限・資産重要度からリスクを評価し、下段で弱点と不具合・修正・インシデントを区別するピクトグラム図解
図1同じ脆弱性でも、インターネット公開の管理サーバーと、隔離された試験端末では緊急度が異なります。

弱点が生まれる場所

Design仕組みの前提が弱い

認証なしで重要操作を許す、信頼境界がない、秘密をクライアントへ渡すなど。

Implementationコードに欠陥がある

メモリー安全性、入力処理、認可確認、暗号利用の誤りなど。

Configuration設定が危険である

既定認証情報、全公開、デバッグ有効、過剰権限、弱いTLSなど。

Operation運用で弱点を作る

アカウント未削除、パッチ遅延、ログ未監視、バックアップ未検証、秘密共有など。

Dependency利用部品から入る

ライブラリー、コンテナー画像、プラグイン、ファームウェア、サービス事業者の弱点を継承する。

不具合すべてがセキュリティ脆弱性ではない

表示のずれや計算誤差も不具合ですが、攻撃者がセキュリティ特性を破れるとは限りません。逆に仕様どおりでも、認可設計が不十分なら脆弱性です。

機密性・完全性・可用性、認証・認可、プライバシー、安全性へどんな影響を与えるかを確認します。

CVEは識別子、CVSSは評価尺度

CVE(Common Vulnerabilities and Exposures/コモン・ヴァルネラビリティーズ・アンド・エクスポージャーズ)は公知の脆弱性へ識別子を付けます。CVEがない弱点や設定不備もあります。

CVSS(Common Vulnerability Scoring System/コモン・ヴァルネラビリティ・スコアリング・システム)は技術的深刻度を共通尺度で表します。評価値だけで自組織の優先順位は決まりません。

自組織でのリスクを重ねる

対象製品・バージョンを使っているか、危険機能が有効か、攻撃経路から到達できるか、必要権限、パブリック攻撃手法とアクティブ悪用、保護制御、扱うデータ、停止影響を見ます。

資産台帳とSBOMがなければ、ライブラリーの脆弱性がどのアプリケーションへ含まれるか追えません。所有者と公開範囲を記録します。

スキャン結果は存在証明とは限らない

バナー情報やバージョンから推定するスキャナーは、バックポート済み修正を未修正と判定したり、隠れた部品を見逃したりします。パッケージリリース、ベンダー助言、実設定で確認します。

認証付きスキャン、設定評価、コード分析、侵入試験試験は見える範囲が違います。

修正はパッチだけではない

アップグレード、設定変更、機能停止、ネットワーク制限、権限縮小、構成要素削除、サービス置換で弱点を除去・緩和できます。WAF規則などは攻撃経路を減らしますが、ルート原因を消さない場合があります。

例外を受け入れる場合は所有者、理由、期限、代替制御、監視、再評価日を残します。

修正後に再検証する

バージョン表示だけでなく、危険な入力・経路が再現しないこと、設定が全インスタンスへ届いたこと、再起動が完了したことを確認します。クラウド画像や停止中端末が古いまま残ることがあります。

脆弱性管理は評価値順の一覧処理ではありません。資産・露出・悪用状況・業務影響を重ね、修正後に到達経路が閉じたことまで確認する周期です。

vulnerabilityの定義と識別の確認資料:NIST CSRC Glossary「Vulnerability」CVE Program「CNA Rules」

関連用語