脆弱性管理とは

ソフトウェアやシステムには、設計・実装上の欠陥(脆弱性)が必ず存在します。脆弱性管理とは、これらを発見 → 評価 → 優先順位付け → 修正 → 確認するサイクルを継続的に回すプロセスです。

攻撃者は公開された脆弱性情報をかつてないスピードで悪用しています。2025年の調査では、CVEの28.3%がCVE公開から1日以内に悪用されています(VulnCheck調査)。Verizon DBIR 2024では、脆弱性の悪用を初期侵入手法として使った事例が前年比180%増と急増しています。

2025年上半期だけで 21,500件以上のCVEが登録され、過去最高ペースを更新中です(2024年通年は40,003件)。CISA KEV(既知の悪用された脆弱性カタログ)も2025年末時点で1,484件に達し、前年末から約20%増加しました。組織はこの「パッチの洪水」の中で、本当に危険な脆弱性を素早く見極める能力がますます不可欠です。


CVE(Common Vulnerabilities and Exposures)

CVEとは

CVEは個々の脆弱性に固有のIDを付与する国際的な命名体系です。MITRE社が管理しており、世界中のセキュリティ研究者・ベンダーが共通の識別子として使用しています。

CVE番号の形式:

CVE-[発見年]-[シーケンス番号]

例: CVE-2021-44228
    ↑    ↑      ↑
   固定 2021年  44228番目に割り当て

有名なCVEの例

CVE番号通称影響CVSSスコア
CVE-2021-44228Log4ShellApache Log4j2 RCE10.0(緊急)
CVE-2017-0144EternalBlueWindows SMB RCE(WannaCry)8.1(重要)
CVE-2014-0160HeartbleedOpenSSL メモリ漏洩7.5(重要)
CVE-2021-34527PrintNightmareWindows Print Spooler RCE8.8(重要)
CVE-2023-44487HTTP/2 Rapid ResetDDoS増幅攻撃7.5(重要)
CNA(CVE採番機関)

CVE番号はMITREが直接割り当てるほか、認定されたCNA(CVE Numbering Authority)が独自に採番できます。MicrosoftやGoogleなど大手ベンダー、Googleのような研究機関もCNAとして登録されています。


CVSS(Common Vulnerability Scoring System)

CVSSとは

CVSSは脆弱性の深刻度を0.0〜10.0のスコアで標準化する評価システムです。現在はバージョン3.1が主流で、CVSS 4.0が2023年10月にリリースされました(v3.1の後継・補完として並行利用推奨)。

CVSSスコアのレンジと深刻度

スコア深刻度対応優先度
0.0なし
0.1〜3.9低(Low)計画的に対応
4.0〜6.9中(Medium)優先度は中程度
7.0〜8.9重要(High)迅速な対応が必要
9.0〜10.0緊急(Critical)即時対応が必要

CVSS v4.0 の主な改善点

CVSS 4.0 ではベーススコアの粒度が向上し、脅威スコアが統合されました。

変更点v3.1v4.0
スコア命名Base / Temporal / EnvironmentalBase / Threat / Environmental / Supplemental
攻撃の複雑さAC: L/HAC + AT(Attack Requirements)に分離
OT/ICS対応なしSafety (S) 指標を追加
表記CVSS:3.1/…CVSS:4.0/…

実務ではまだ v3.1が主流ですが、NVD・主要ベンダーは v4.0 の採用を進めています。

CVSS v3.1 ベーススコアの指標

ベーススコアは8つの指標で構成されます。

攻撃特性グループ:

指標英語値の例
攻撃経路(AV)Attack VectorNetwork(N) / Adjacent(A) / Local(L) / Physical(P)
攻撃の複雑さ(AC)Attack ComplexityLow(L) / High(H)
必要な権限(PR)Privileges RequiredNone(N) / Low(L) / High(H)
ユーザー操作(UI)User InteractionNone(N) / Required(R)

スコープ変化(S): Changed(C) / Unchanged(U)

影響グループ:

指標英語値の例
機密性への影響(C)ConfidentialityNone / Low / High
完全性への影響(I)IntegrityNone / Low / High
可用性への影響(A)AvailabilityNone / Low / High

CVSSベクター文字列の読み方

Log4Shell (CVE-2021-44228) のCVSSベクター

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

解読: AV:N → 攻撃経路がネットワーク(インターネット越しに攻撃可能) AC:L → 攻撃の複雑さが低い(特殊な条件不要) PR:N → 権限不要(認証なしで攻撃可能) UI:N → ユーザー操作不要 S:C → スコープ変化あり(他システムへの影響) C:H → 機密性への影響が高い I:H → 完全性への影響が高い A:H → 可用性への影響が高い → スコア: 10.0(緊急)

CVSSスコア計算(NVDサイトでも自動計算可能)

https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator

CVSSはリスクではなく深刻度

CVSSベーススコアは脆弱性そのものの深刻度(技術的な影響)を示すものであり、あなたの組織での実際のリスクを示すものではありません。攻撃が実際に成立するには、対象システムが該当ソフトウェアを使っているか、インターネットに公開されているかなどの環境要因が必要です。組織のリスクは「深刻度 × 露出度 × 攻撃の可能性」で判断します。


NVD(National Vulnerability Database)での調査

NVDはNISTが管理する米国政府の脆弱性データベースです。CVEの詳細情報、CVSSスコア、関連するCPE(影響を受ける製品情報)が公開されています。

NVD APIを使った調査

特定のCVEの詳細を取得(curl + jq)

curl -s “https://services.nvd.nist.gov/rest/json/cves/2.0?cveId=CVE-2021-44228” |
jq ‘.vulnerabilities[0].cve | {id: .id, description: .descriptions[0].value, score: .metrics.cvssMetricV31[0].cvssData.baseScore}‘

特定キーワードで脆弱性を検索(直近10件)

curl -s “https://services.nvd.nist.gov/rest/json/cves/2.0?keywordSearch=apache+log4j&resultsPerPage=5” |
jq ‘.vulnerabilities[].cve | {id: .id, score: .metrics.cvssMetricV31[0].cvssData.baseScore}‘

CVSSスコアが9.0以上の最新の緊急脆弱性

curl -s “https://services.nvd.nist.gov/rest/json/cves/2.0?cvssV3Severity=CRITICAL&resultsPerPage=10” |
jq ‘.vulnerabilities[].cve.id’

その他の脆弱性データベース
  • JVN(Japan Vulnerability Notes): https://jvn.jp — 日本語の脆弱性情報。日本のベンダーの情報も充実
  • MITRE ATT&CK: 攻撃戦術・技術の体系化(CVEとは別の視点)
  • Exploit-DB: 公開されたエクスプロイトコードのアーカイブ(教育・研究目的)
  • VulnDB: 商用の脆弱性インテリジェンスサービス

パッチ管理プロセス

パッチ管理の5ステップ

組織の脆弱性管理プロセスは以下のステップで構成されます。

1. 資産のインベントリ管理

2. 脆弱性スキャン・情報収集

3. リスク評価・優先順位付け

4. パッチの適用・テスト

5. 確認・報告・記録
   ↑___________(繰り返し)

ステップ1: 資産インベントリ

「何を守るか」を把握していなければ管理できません。

  • CMDB(Configuration Management Database): 全IT資産を管理するデータベース
  • ネットワークスキャン: nmapなどで稼働中のホスト・サービスを定期的に洗い出す
  • エージェント型スキャン: 各ホストにエージェントをインストールして詳細情報を収集

ステップ2: 脆弱性スキャン

ホストのオープンポートとサービスバージョンを確認

※ 必ず自組織の管理下にあるシステムのみに実行すること

nmap -sV -sC -O 192.168.1.0/24 -oN scan_results.txt

特定ポートのサービスバージョン確認

nmap -sV -p 80,443,22,3389 192.168.1.100

スクリプトスキャンで既知の脆弱性を確認

nmap —script vuln 192.168.1.100

ステップ3: リスクベースの優先順位付け

全脆弱性を同時に修正することは現実的ではありません。以下の基準で優先順位を付けます。

優先度条件目標対応期間
緊急CVSSスコア9.0以上 + 公開エクスプロイトあり24〜48時間以内
CVSSスコア7.0以上 または 重要システムへの影響7日以内
CVSSスコア4.0〜6.930日以内
CVSSスコア3.9以下四半期ごとの計画パッチ
EPSS と KEV — 2つの補完指標

EPSS(Exploit Prediction Scoring System)v3 「この脆弱性が30日以内に実際に悪用される確率」を0〜1で示します。全CVEの約7%だけが実際に悪用されており、CVSSスコアが高くてもEPSSが低い脆弱性は実際には悪用されにくいことを意味します。ただし、2025年の分析ではEPSSは遅行指標としての側面が強いことが指摘されており、新興脅威の予測には他の指標との組み合わせが推奨されます。

CISA KEV(Known Exploited Vulnerabilities Catalog) 米国サイバーセキュリティ・インフラ庁(CISA)が管理する「実際に悪用が確認された脆弱性」のカタログ。2025年末時点で1,484件を収録(前年末の1,239件から20%増)。2025年に追加された245件のうち24件がランサムウェアグループによる悪用が確認されています。米国連邦政府機関には期限内のパッチ適用が義務付けられており、民間でも最優先対応リストとして活用されています。

優先順位の判断フロー:

KEVに掲載? → Yes → 即時対応(最優先)
      ↓ No
CVSS 9.0以上 + EPSS高 → 24〜48時間以内
CVSS 7.0以上 → 7日以内
それ以外 → 通常サイクル

ステップ4: パッチ適用のベストプラクティス

テスト環境でのパッチ検証手順:

開発/テスト環境 → ステージング環境 → 本番環境(段階的ロールアウト)
  • パッチ適用前にスナップショット・バックアップを取得
  • メンテナンスウィンドウ(低負荷時間帯)に適用
  • ロールバック手順を事前に用意
  • 適用後に動作確認テストを実施

ステップ5: 記録と報告

  • パッチ適用日時・対象システム・担当者を記録
  • 未対応脆弱性の理由(代替制御策、ベンダー未対応など)を文書化
  • 経営層への定期レポートでリスク状況を可視化

実例: CVSSスコアの計算

CVE-2014-0160(Heartbleed)のCVSSv3.1スコアを手計算してみましょう。

脆弱性: OpenSSL Heartbeat拡張のメモリ読み取り(情報漏洩)

各指標の評価: AV:N → ネットワーク経由で攻撃可能(インターネット) AC:L → 特殊条件不要、安定して攻撃可能 PR:N → 認証不要 UI:N → ユーザー操作不要 S:U → スコープ変化なし(OpenSSL内の問題) C:H → 秘密鍵・セッションクッキー等の機密情報が漏洩 I:N → データの改ざんはできない A:N → サービス停止は起こらない

ベクター文字列: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

計算されたスコア: 7.5(重要 / High)

組織でのリスク評価例:

  • 影響を受けるシステム: Apache, Nginx (OpenSSL使用)
  • インターネット公開: あり
  • 公開エクスプロイト: あり(発見翌日に公開) → 対応優先度: 最高(即時パッチ適用)
パッチ未適用はコンプライアンス違反になる場合も

PCI DSS(クレジットカード業界標準)やISO 27001では、脆弱性管理プロセスの整備と、重大な脆弱性への迅速な対応が要件として定められています。パッチ未適用のシステムを放置することは、規制違反・監査指摘事項になるだけでなく、インシデント発生時の法的責任にも関わります。


理解度チェック

CVSS v3.1 のベーススコアで「攻撃経路(AV)がNetwork(N)」であることが意味するのはどれですか?