[ blog · tutorial ]10 min read

打造 CVE 與漏洞情報 Agent:把 CISA KEV、NVD、EPSS 與 MITRE ATT&CK 整合進單一 API

Sarah Choy2026年6月16日 發佈約 10 分鐘閱讀
打造 CVE 與漏洞情報 Agent:把 CISA KEV、NVD、EPSS 與 MITRE ATT&CK 整合進單一 API

每個資安團隊都被 CVE 淹沒。訊號不在嚴重度 —— 而在一個漏洞是否正被利用、以及被利用的機率有多高。這篇講的是如何打造一個融合 NVD、CISA KEV、EPSS 與 ATT&CK 的 Agent,回答「我該先修補什麼?」。

一句話總結

  • 只看 CVSS 嚴重度會高估:大多數「嚴重」CVE 從未被利用。真正的優先排序需要再疊上 CISA KEV(已知遭利用)+ EPSS(被利用的機率)。
  • 四個來源:NVD(CVE 紀錄 + CVSS)、CISA KEV(權威的「在野遭利用」清單)、EPSS(每日更新的 0–1 利用機率分數)、MITRE ATT&CK(提供脈絡的戰術/技術)。
  • API Pick Cybersecurity Search 把這四者全包在單一 POST 端點背後 —— 每次呼叫 10 credits,只在成功時計費 —— 讓 Agent 不必跑四隻爬蟲就能拿到融合後的漏洞情報。
  • Agent 模式:拉出 CVE、檢查是否在 KEV 名單、讀取 EPSS 分數、對應到 ATT&CK 技術,再依「先看遭利用」、再 EPSS、再 CVSS 排序。
  • 這是檢索,不是掃描器:它告訴你關於某個漏洞「已知」與「很可能」的事,用來排定人工分流的優先順序 —— 而不是用來授權自動化行動。

嚴重度是錯誤的排序鍵

一個按 CVSS 分數修補的漏洞計畫,既忙碌又無效。國家漏洞資料庫(National Vulnerability Database)列出數萬個 High 與 Critical 的 CVE;其中絕大多數從未被利用。與此同時,一個在野已有可運作 exploit 的「Medium」卻躺在待辦清單裡。一個資安 Agent 該回答的問題不是「這能有多糟」 —— 而是 「我今天該先修補什麼。」

回答這個問題,需要把四個資料來源融合在一起。每一個都是免費且公開的;每一個都有自己的格式與更新節奏。

四個來源

NVD —— CVE 紀錄

NIST 的國家漏洞資料庫。權威的 CVE 清單,含 CVSS 向量、受影響產品(CPE)與參考資料。這是「這是什麼漏洞」的基準層。優點:權威且完整。缺點:只看 CVSS 會高估嚴重度。

CISA KEV

已知遭利用漏洞(Known Exploited Vulnerabilities)目錄 —— CISA 權威列出已確認在野遭利用的 CVE,並附上美國聯邦機構的修補期限。一個 CVE 只要上了 KEV,就直接插隊到最前面。優點:漏洞管理中訊號最強的單一旗標。

EPSS

FIRST.org 的利用預測評分系統:一個每日更新、介於 0–1 的機率,代表某個 CVE 在未來 30 天內被利用的可能性。它把「可能被利用」變成「可能性有多高」。優點:可對應到真實攻擊者行為的機率排序。

MITRE ATT&CK

對手戰術與技術的知識庫。把一個漏洞對應到它在攻擊鏈中的角色。優點:把一個 CVE 變成一個你的偵測與應變計畫用得上的作戰敘事。

一個端點,融合情報

Cybersecurity Search 把 NVD、CISA KEV、EPSS 與 MITRE ATT&CK 全包在單一 POST 端點背後 —— 每次呼叫 10 credits,只在成功時計費。傳入一個 CVE ID 或一段自然語言查詢;結果會以融合過、已為 LLM 預先整形的形式回來。把它與 Web Search(抓廠商公告)和 Extract(拉出整頁公告)搭配使用。

import httpx, os
API, HEADERS = "https://api.apipick.com/v1", {"x-api-key": os.environ["APIPICK_KEY"]}

def vuln_intel(query: str):
    r = httpx.post(f"{API}/search/cybersecurity",
                   headers=HEADERS, json={"query": query})
    r.raise_for_status()
    return r.json()["results"]

# "what should I patch first across NVD + KEV + EPSS + ATT&CK?"
records = vuln_intel("actively exploited Apache and VMware vulnerabilities this month")

# Rank: KEV-listed first, then by EPSS, then CVSS. Feed the ranked,
# cited list to your LLM to summarize the worklist for an analyst.

自建 vs 採購

自己接API Pick
來源NVD + KEV + EPSS + ATT&CK,各自分開四者全包,融合
格式4 種結構 + EPSS CSV1 種 JSON 結構
資料新鮮度你得排程 4 次同步每次呼叫都即時
對 LLM 友善你得各自正規化預先整形 + 來源 URL
成本基礎設施 + 維運每次呼叫 10 credits,只在成功時

你能打造什麼

除了修補優先排序助理之外:一個每日 KEV 監看 Agent,當你技術棧裡的某個 CVE 登上遭利用清單時發出告警;一個分流機器人,把掃描器匯出的結果轉成一份排序過、附引用的待辦清單;一個分析師副駕,用淺白的語言解釋某個 CVE 的 ATT&CK 意涵。模式相同 —— 融合檢索、以「先看遭利用」排序、附上來源做綜整。拿一把免費金鑰(100 credits,免綁卡),把你的 Agent 指向它。

常見問題

為什麼修補優先排序光看 CVSS 嚴重度還不夠?

因為嚴重度衡量的是潛在影響,而非被利用的可能性。被評為 High 或 Critical 的 CVE 有數萬個,但其中真正在野遭利用的只是一小部分。如果你只按 CVSS 修補,就會把心力花在攻擊者根本不碰的漏洞上,卻漏掉那個被評為中等、卻正遭積極利用的漏洞。現代做法是在 CVSS 之上疊加 CISA KEV(是否已知遭利用?)與 EPSS(被利用的機率有多高?),來排出真正重要的順序。

EPSS 是什麼,我要怎麼用它?

EPSS(Exploit Prediction Scoring System,利用預測評分系統)來自 FIRST.org,為每個 CVE 給出一個每日更新、介於 0 到 1 的分數,估計它在未來 30 天內被利用的機率。常見的策略是:凡是落在 CISA KEV 上的立即修補,接著修補 EPSS 高於約 0.1(或你依風險調校的門檻)的,剩下的再按 CVSS 分流。由於 EPSS 每天更新,Agent 應該每次重新拉取,而不是快取。

MITRE ATT&CK 補上了什麼?

脈絡。ATT&CK 對應出對手的戰術與技術(初始入侵、權限提升、資料外洩等)。把一個 CVE 連結到利用它的技術,能幫助分析師理解其在攻擊鏈(kill-chain)中的意涵 —— 不只是「這個可被利用」,而是「這個讓橫向移動成為可能」,而這會改變你的優先排序,以及你要新增哪些偵測。

這個 Agent 能自動套用修補或阻擋流量嗎?

不能 —— 而且你不該把它接成那樣。這是一層情報檢索:它融合一個漏洞的已知資訊,來排定人工分流的優先順序。自動化修補需要變更控管、測試,以及一位人類負責人。用這個 Agent 產出一份排序過、附引用的待辦清單;讓你的修補/SOAR 管線與一位工程師去執行。

資料有多即時?

NVD 與 CISA KEV 會隨著 CVE 發布與利用獲得確認而持續更新;EPSS 每日重新計算。這個端點查詢的是即時來源,所以一次 Agent 執行反映的是當下狀態。為了留下稽核軌跡,請在做出決策的當下,連同時間戳一起把 EPSS 分數與 KEV 狀態存下來。

本文使用的 API

Sarah Choy
作者
Sarah Choy
CEO, API Pick

Sarah Choy 是 API Pick 的 CEO,專注於為 AI Agent 與 LLM 工作流打造可用於正式環境的 API。