脆弱性
EPSS:Exploit Prediction Scoring Systemからわかること
ほとんどのCVEは一度も悪用されません。EPSSは、どのCVEが悪用されるかを推定します。公開されたすべてのCVEに、今後30日以内に悪用される確率を毎日付与するため、深刻度だけでなく悪用の可能性に基づいてバックログに優先順位を付けられます。
更新日
EPSSとは
Exploit Prediction Scoring System(EPSS)は、公開されたCVEが今後30日以内に実環境で悪用される確率を推定する、データ駆動型のモデルです。CVSSを公開しているのと同じフォーラムであるFIRSTのEPSS Special Interest Groupが管理しています。スコアはEmpirical Securityが生成し、登録不要かつ無料で公開されています。
公開されたCVEには、毎日2つの数値が付与されます。
- 確率(0〜1)。今後30日以内に悪用活動が発生する推定確率です。0.02は2%を意味します。
- パーセンタイル(0〜1)。スコアが付与されたすべてのCVEのうち、確率が同じかそれ以下のものの割合です。CVEがどの順位にあるかを示すもので、悪用される可能性の高さを示すものではありません。
スコアは変動します。何か月もゼロ付近にあったCVEが、エクスプロイトコードの公開や攻撃の観測をきっかけに一夜で跳ね上がることもあります。トリアージ時に一度確認するだけでなく、毎日確認してください。
EPSSの算出方法
EPSSは、観測された悪用事例で学習した機械学習モデルです。FIRSTは、5つのグループに分かれた約2,850の入力特徴量について説明しています。
- エクスプロイトコードとツール:公開エクスプロイト、エクスプロイトフレームワーク、スキャナーのテンプレート。
- 言及:セキュリティベンダー、脆弱性開示プログラム、アグリゲーターによる言及。
- 脆弱性の特性:個々のCVSSメトリクスと、説明文から得られるタグ。CVSSスコアそのものは使用されません。
- 経過期間と参照:CVEの公開からの経過期間と参照情報の数。
- 悪用活動:データパートナーから提供されるマルウェアのテレメトリ、ハニーポット、侵入検知、脅威インテリジェンス。
現在のモデルはEPSS v5(v2026.06.15)で、2026年6月15日から公開されています。以前のバージョンはv4(2025年3月)、v3(2023年3月)、v2(2022年2月)です。FIRSTは決まった周期ではなく、性能が低下したときにモデルを再学習します。
EPSSとCVSSの違い
| EPSS | CVSS | |
|---|---|---|
| 測定対象 | 今後30日以内に悪用される可能性 | 悪用された場合の深刻度 |
| 尺度 | 0〜1の確率とパーセンタイル | 0〜10と深刻度評価 |
| 更新頻度 | 脅威データの変化に応じて毎日 | まれ。基本スコアはCVEごとに固定 |
| 算出主体 | 観測された悪用事例で学習したモデル | 仕様に基づく専門家の判断 |
| 現行バージョン | v5(2026年) | 4.0(2023年) |
FIRSTは、両者が互いに置き換えられるものではないと明言しています。CVSSの基本スコアが測るのはリスクではなく深刻度であり、パッチの優先順位付けに単独で使うべきではありません。EPSSは深刻度スコアではなく、完全なリスクスコアでもありません。また、FIRSTは両者を掛け合わせることは決して適切ではないと警告しています。一方は較正された確率、もう一方は順序尺度だからです。両者は並べて使ってください。
EPSSのしきい値
EPSSに公式のしきい値はありません。FIRSTは、しきい値を選ぶ際の参考となる目安を公開しています。
| EPSSの確率 | おおよその位置づけ |
|---|---|
| 0.10(10%) | 95パーセンタイル。よく引用されますが、EPSSとして特別な根拠があるわけではありません。 |
| 0.04(4%) | 90パーセンタイル。CVSSのCriticalで絞り込んだ場合とほぼ同じ規模のキューになります。 |
| 0.008(0.8%) | 上位約48%。CVSSのHighとCriticalを合わせた場合とほぼ同じ規模のキューになります。 |
| 0.007(0.7%) | 中央値。全CVEの半数がこれより低いスコアです。 |
対応能力から逆算してください。チームが1か月に対応できる緊急の検出結果が50件なら、自社が出荷するソフトウェアで約50件になるしきい値を選びます。
EPSSを優先順位付けに使う方法
- 悪用が確認されたものから着手します。CISAのKEVカタログに掲載されたCVEは、すでに悪用されています。FIRST自身も、最近の悪用確認はスコアにかかわらず、それ単独で強いシグナルだとしています。
- 残りをEPSSで順位付けします。選んだしきい値を超えるものが先です。
- 同順位はCVSSと自社の状況で判断します。そのコンポーネントが出荷されるか、外部に露出しているか、製品がどれだけ重要かを考慮します。
- 毎日順位を付け直します。EPSSが毎日更新されるからです。
SSVCや到達可能性がどこに位置づけられるかを含めた手法の全体像は、脆弱性の優先順位付けで解説しています。
EPSSの限界
- 自社の環境は考慮されません。スコアが高いことは、そのCVEがどこかで悪用される可能性が高いことを示すだけで、脆弱なコードが自社製品に存在するか、到達可能か、重要かを示すものではありません。
- 対象は公開済みのCVEのみです。CVEのない脆弱性や、予約済みのCVE IDにはスコアが付きません。
- あくまで予測です。スコアが低くても安全が保証されるわけではありません。そのため、KEVなどの悪用エビデンスを優先します。
EPSSスコアの取得方法
-
API:
https://api.first.org/data/v1/epss?cve=CVE-2021-44228で現在の確率とパーセンタイルを取得できます。履歴が必要な場合は&scope=time-seriesを追加します。このAPIは個別の照会向けで、一括取得には向いていません。 - 日次CSV:全スコアの一覧で、毎日13:30 UTCの少し後に更新され、2021年までさかのぼるアーカイブがあります。
- お使いのツール:Grype、Dependency-Track、Tenable、Qualysをはじめ、多くのスキャナーや脆弱性管理プラットフォームが検出結果の横にEPSSを表示します。
EPSSには正確なインベントリが必要
EPSSスコアはCVEを順位付けしますが、影響を受けるパッケージを自社が出荷しているかどうかはわかりません。それを判断するのはインベントリです。そしてロックファイルを読み取るスキャナーは、出荷されることのない開発用の依存関係を報告する一方、ビルドがパッケージマネージャーを介さずにダウンロードしたパッケージを見逃します。
CRACIは、GitHub Actionsの各ジョブが実際に取得したパッケージを、推移的依存関係、キャッシュから復元されたパッケージ、どのロックファイルにも載らない隠れた依存関係を含めて記録し、監視対象のSBOMを継続的に再評価します。ビルド履歴から、過去のどのビルドに脆弱な依存関係が含まれていたかがわかるため、CVEのスコアが跳ね上がったときに、どのリリースが影響を受けるかを把握できます。詳しくは脆弱性トラッキングをご覧ください。
EPSSに関するよくあるご質問
EPSSとは何ですか?
EPSS(Exploit Prediction Scoring System)は、FIRSTが管理する機械学習モデルで、公開されたCVEが今後30日以内に実環境で悪用される確率を推定します。スコアはすべてのCVEについて毎日、無料で公開されています。
EPSSスコアはどの程度なら高いと言えますか?
普遍的なしきい値はありません。FIRSTによると、確率約0.04(4%)はおよそ90パーセンタイルに相当し、CVSSでCriticalと評価されるCVEの割合とほぼ同じです。0.10(10%)はおよそ95パーセンタイルです。スコアの平均は約2.8%、中央値は約0.7%です。チームが処理しきれる規模のキューになるしきい値を選んでください。
EPSSの確率とパーセンタイルの違いは何ですか?
確率は、そのCVEが今後30日以内に悪用されるというモデルの推定値です。パーセンタイルは、その確率をスコアが付与された他のすべてのCVEと比較した順位です。ほとんどのCVEのスコアははるかに低いため、確率0.05でも高いパーセンタイルになることがあります。
EPSSとCVSSを掛け合わせるべきですか?
いいえ。FIRSTによると、EPSSは較正された確率、CVSSは順序尺度であるため、両者を掛け合わせても「確率×深刻度」にはなりません。代わりに、可能性にはEPSS、深刻度にはCVSSというように並べて使ってください。
EPSSの現行バージョンは何ですか?
EPSS v5(モデルv2026.06.15)で、2026年6月15日から公開されています。FIRSTはモデルの性能が低下したときに再学習しており、これまではおよそ年1回でした。
EPSSスコアはどうやって取得できますか?
FIRSTのAPI(例:https://api.first.org/data/v1/epss?cve=CVE-2021-44228)に問い合わせるか、全スコアの日次CSVをダウンロードします。登録は不要です。Grypeをはじめ、多くのスキャナーも検出結果の横にEPSSを表示します。
実際に出荷している脆弱なパッケージを把握
EPSSスコアはCVEを順位付けします。デモを予約して、各ビルドが取得したものの記録から、そのCVEを含むGitHub Actionsのビルドを確認してください。
デモを予約