- 目次
1.なぜ、脆弱性は減らないのか-脆弱性管理を問い直す
近年、サイバー攻撃による被害は企業や個人を問わず急増し、その影響は社会全体に広がっています。もはや、特定の業界だけの話ではありません。どのような企業においても、ランサムウェアによる業務停止、情報漏えいによるブランド毀損、取引停止や賠償リスクなどが発生する恐れがあります。
これらのサイバー攻撃は、システムやソフトウェアに内在する脆弱性の悪用に起因しています。脆弱性を放置することは重大なリスクであり、適切な対策が必要であることは、すでに多くの企業で認識されています。脆弱性スキャンツールの導入や、定期的なパッチ適用ルール整備など、一定の対策を講じている組織も少なくありません。それにもかかわらず、「脆弱性が減らない」「未対応の脆弱性が積み上がっていく」といった現場からの声は後を絶ちません。
なぜ、脆弱性対策に取り組んでいるにもかかわらず、状況は改善しないのでしょうか。本質的な問題は、脆弱性への対応が、全体の流れを意識した管理ではなく、個別の対策やツール導入に分断されてしまっている点にあります。
そもそも、脆弱性管理とは何でしょうか。ここでは、「脆弱性管理」を、脆弱性の監視と対応に必要な一連のプロセスを指すものとして定義します。このプロセスは、一般的に、「資産把握」「脆弱性検知・評価」「脆弱性対処」の3つのステップで構成されます。
図1:脆弱性管理の3ステップ
これらは、NIST Cybersecurity Framework(CSF)やNIST SP 800-218(Secure Software Development Framework: SSDF)といった代表的なセキュリティ関連文書においても、組織として取り組むべき活動として位置づけられています。
重要なのは、これらのステップが「独立した作業工程ではない」という点です。資産把握が不十分であれば検知の精度は下がり、評価が曖昧であれば対処の判断は遅れます。さらに、対処が進まなければ、いくら脆弱性を検知してもリスクは減りません。脆弱性が減らない組織では、この連鎖のどこかで問題が起きている可能性が高いのです。
また、ここで押さえておくべきポイントは「脆弱性をゼロにすること」がゴールではないということです。現実的には、脆弱性を完全に排除することは不可能であるため、リスクを許容可能なレベルまで低減し、事業継続性を確保することが脆弱性管理の目的となります。
次章以降では、「資産把握」「脆弱性検知・評価」「脆弱性対処」のそれぞれのフェーズにおいて、組織で起こりがちな問題やつまずきポイントを整理したうえで、改善に向けた考え方を提示していきます。
2.資産把握-IT環境の変化に伴う把握すべき資産の拡大
脆弱性管理の出発点は、資産把握です。どのようなIT資産がどこに存在し、どのような形で利用されているのかを把握できなければ、脆弱性の有無を判断することも、対処の優先度を決めることもできません。
近年、ITシステムを取り巻く環境の変化に伴い、管理すべき対象領域そのものが広がっています。
- クラウド活用、外部サービスの利用拡大
脆弱性管理の対象は、もはや社内に存在するサーバや端末だけではありません。クラウドや、外部サービスの利用が拡大したことで、クラウド環境に展開されたリソースなど、組織外に存在する資産についても管理対象とする必要があります。管理が行き届かない場合、クラウド環境の設定不備により、ストレージが公開状態になってしまったり、過去のプロジェクトで残存したシステムが放置されたり、シャドーITがまん延するリスクがあります。 - 基盤レイヤーのみならずアプリケーション内部も対象に
従来の脆弱性管理は、OSやミドルウェア、ネットワーク機器といった基盤レイヤーを中心に行われてきました。しかし、現在ではアプリケーション内部で利用されているOSSライブラリや、その依存関係まで含めて考慮する必要があります。近年発生したLog4jの問題は、その象徴的な事例です。多くの組織では、アプリケーションが利用しているライブラリの深い依存関係まで把握できておらず、既存の資産台帳やスキャン対象から漏れていたコンポーネントが侵入経路となる恐れがあります。
図2:IT環境の変化に伴う把握すべき資産の拡大
そのため、対象領域ごとに異なるアプローチを組み合わせることが必要です。基盤レイヤーに対する脆弱性スキャンツールを活用する企業は多いですが、それに加えて、以下の例のような製品カテゴリを目的に応じて選択し、役割分担させることが重要です。
表1:製品カテゴリの例
| 管理対象の観点 | 主な製品カテゴリ | 資産把握上の役割 |
|---|---|---|
| 外部公開資産 | ASM(Attack Surface Management) ※EASMと呼ばれる場合もある |
インターネットから到達可能なIT資産を継続的に把握し、認知していない公開資産がないかを確認する |
| クラウド資産の構成・権限 | CSPM(Cloud Security Posture Management) CIEM(Cloud Infrastructure Entitlement Management) CNAPP(Cloud Native Application Protection Platform) |
クラウド上のリソース構成や設定、権限の状態を継続的に可視化し、設定不備や過剰権限といったリスクを含めて資産の実態を把握する |
| ソフトウェア内部構造 | SBOM(Software Bill of Materials) SCA(Software Composition Analysis) |
アプリケーションを構成するOSSライブラリや依存関係を含めて把握し、ソフトウェア内部に埋もれた資産を可視化することで、脆弱性検知・評価につなげる |
3.脆弱性検知・評価-優先順位を決めるための考え方
資産把握が一定程度行われている企業において、次に問題になるのが、脆弱性をどのように検知・評価するかです。必要な製品・ツールを導入することで、脆弱性自体は検知できるものの、どの脆弱性を優先して対応すべきか判断できないといった状態は少なくありません。脆弱性の件数が増え続ける中で、検知されたすべての脆弱性を人手で精査し、個別に対応可否を判断していく運用では回しきれない状況になってしまいます。
従来はCVSS(Common Vulnerability Scoring System)に代表される深刻度スコアを用いた評価が主流でしたが、脆弱性件数の増加に伴い、CVSSの数値のみで対応優先度を判断することが難しくなっています。そこで、近年はCVSSを補完する考え方として、脆弱性の悪用状況や、自組織の業務・社会的影響といった要素を評価に取り込み、対応方針の意思決定を支援するSSVC(Stakeholder-Specific Vulnerability Categorization)という手法が提案されています。
SSVCを適用するには、表2に示すように、SSVCで定義されている4つの判断軸に沿って、脆弱性対応の優先度を整理する必要があります。重要なのは、判断軸そのものを理解するだけでなく、それぞれの軸について「現場では何を確認し、どのように判断するのか」をあらかじめ定めておくことです。
表2:SSVCで定義されている判断軸と判断観点
| SSVCの判断軸 | 判断の観点 | 現場での判断材料の具体例 |
|---|---|---|
| Exploitation (悪用状況) |
実際に攻撃で利用されているか |
|
| Exposure (到達可能性) |
攻撃者が到達できる構成か |
|
| Automatable (自動化容易性) |
攻撃が自動化されやすいか |
|
| Human Impact (業務・社会的影響) |
業務停止や情報漏えいにつながるか |
|
このように、SSVCの考え方に基づき、実効性のある判断基準を設けることで、検知された大量の脆弱性の中から、真に優先して対応すべきものを選び出すことが可能になります。
4.脆弱性対処-判断を止めないための設計
脆弱性検知・評価を経た後、多くの組織が立ち止まってしまうのが、パッチ適用をはじめとする脆弱性対処のフェーズです。脆弱性の存在や深刻度は把握できているものの、実際の対処に踏み切れず、結果として未対応の脆弱性が残り続けるケースは少なくありません。脆弱性対処が進まない主な理由として、プロセスが十分に定義されていないことが挙げられます。その結果、脆弱性対処を実施した場合と実施しなかった場合の業務影響を、その都度個別に判断することになります。
業務影響を懸念する姿勢そのものは、決して誤りではありません。しかし、昨今のサイバー攻撃の状況を踏まえると、パッチ適用は突発的な対応ではなく、必要な予防対処として組織があらかじめプロセスとして定義する必要があります。
こうした問題に対して有効なのが、パッチ適用を組織的に実施するためのガイドラインである「NIST SP 800-40 Rev.4」を参照し、意思決定を事前に定義することです。重要なのは、個々の脆弱性ごとに場当たり的な判断を行うのではなく、あらかじめ「どのような特性を持つ資産に対して、どのような条件のもとで、どの対応を取るのか」を決めておくことです。これにより、想定される業務影響や対応方針が明確になり、脆弱性対処に対する見通しを持って判断できるようになります。NIST SP 800-40 Rev.4では、脆弱性対処の計画を策定するにあたり、脆弱性リスクに対する対応シナリオをあらかじめ定義し、それぞれのシナリオごとに具体的な対応計画を定めておくという手法を提案しています。
表3:脆弱性リスクに対する対応シナリオの例
| シナリオ | 概要 | 主な適用条件・トリガー |
|---|---|---|
| 定期パッチ | 定期リリースされるパッチを、通常の運用サイクルで適用 | 緊急性が高くない脆弱性 定期パッチサイクルに含められるもの |
| 緊急パッチ | 深刻な脆弱性や、実際に悪用されている脆弱性に対して、迅速にパッチを適用 | 緊急性が高い脆弱性 悪用が確認・活発化している場合 |
| 緊急緩和策 | パッチが未提供、または適用できない場合に、一時的な代替策でリスクを低減 | パッチが存在しない パッチ適用が業務に重大な影響を与える パッチ自体に問題がある |
| パッチ適用不可 | 技術的・運用的理由により、容易にパッチを適用できない資産に対して、隔離や監視などでリスクを低減 | サポート終了製品 更新機能のない製品 長時間停止できないシステム |
また、すべての資産を同一視するのではなく、類似した特性を持つ資産を論理的にグルーピングする「メンテナンスグループ」を定義し、グループごとにシナリオを計画することが推奨されています。これは、リスク特性・運用条件・可用性要件が近い資産は、各リスク対応シナリオにおいても、概ね同様の対処要件(パッチ適用のタイミング、検証の要否、停止許容時間など)を持つという考え方に基づいています。メンテナンスグループを活用することで、脆弱性発見のたびに個別判断を繰り返す必要がなくなり、判断の迅速化と運用の標準化が可能になります。
このように、脆弱性対処を「技術作業」としてではなく、意思決定プロセスとして設計することによって、判断が止まる状態を避け、組織として継続的に前に進めるようになるのです。
5.おわりに
脆弱性管理の目的は、脆弱性を「ゼロ」にすることではありません。変化し続けるIT環境の中で、状況に応じて適切に判断し、対処できる状態を維持することにあります。セキュリティ対策は、一度整えたら終わりではありません。環境や脅威の変化に合わせて、管理のあり方そのものを見直し続ける必要があります。すべてのベストプラクティスを、そのまま受け入れる必要はありません。重要なのは、自組織の環境や制約を踏まえたうえで、継続可能な形で脆弱性管理を設計することです。それこそが、「脆弱性を減らす」ための、現実的で確かな第一歩となります。


ソフトウェア管理に向けたSBOM(Software Bill of Materials)の導入に関する手引ver 2.0についてはこちら:
https://www.meti.go.jp/policy/netsecurity/wg1/SBOMv2.pdf
可視化データ活用によるソフトウェア脆弱性管理についてはこちら:
https://journal.ntt.co.jp/wp-content/uploads/2024/08/nttjnl5103_20240901.pdf
脆弱性対応における リスク評価手法のまとめ ver1.1についてはこちら:
https://www.ipa.go.jp/jinzai/ics/core_human_resource/final_project/2024/f55m8k0000003v30-att/f55m8k0000003v94.pdf
NIST SP 800-40 Rev. 4 Guide to Enterprise Patch Management Planning: Preventive Maintenance for Technologyについてはこちら:
https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-40r4.pdf
あわせて読みたい: