สร้าง Agent สำหรับข่าวกรองช่องโหว่และ CVE: รวม CISA KEV, NVD, EPSS และ MITRE ATT&CK ไว้ใน API เดียว

ทุกทีมความปลอดภัยจมอยู่กับ CVE จำนวนมหาศาล สัญญาณที่แท้จริงไม่ใช่ระดับความรุนแรง — แต่คือช่องโหว่นั้นกำลังถูกโจมตีอยู่หรือไม่ และมีโอกาสมากแค่ไหน นี่คือวิธีสร้าง agent ที่หลอมรวม NVD, CISA KEV, EPSS และ ATT&CK เข้าด้วยกันเพื่อตอบคำถามว่า 'ควรแพตช์อะไรก่อน?'
สรุปสั้น
- •ระดับความรุนแรง CVSS เพียงอย่างเดียวนับเกินจริง: CVE ที่ถูกจัดว่า 'critical' ส่วนใหญ่ไม่เคยถูกโจมตีเลย การจัดลำดับความสำคัญที่แท้จริงต้องนำ CISA KEV (รู้ว่าถูกโจมตีจริง) + EPSS (ความน่าจะเป็นที่จะถูกโจมตี) มาซ้อนทับด้านบน
- •แหล่งข้อมูลทั้งสี่: NVD (ข้อมูล CVE + CVSS), CISA KEV (รายการช่องโหว่ที่ถูกโจมตีในสภาพจริงที่เชื่อถือได้), EPSS (คะแนนความน่าจะเป็นในการถูกโจมตี 0–1 ที่อัปเดตรายวัน), MITRE ATT&CK (กลยุทธ์/เทคนิคเพื่อให้บริบท)
- •Cybersecurity Search ของ API Pick ห่อหุ้มทั้งสี่แหล่งไว้หลัง endpoint POST เดียว — 10 เครดิตต่อการเรียก คิดเฉพาะเมื่อสำเร็จ — เพื่อให้ agent ได้ข่าวกรองช่องโหว่ที่หลอมรวมแล้วโดยไม่ต้องมี scraper สี่ตัว
- •รูปแบบของ agent: ดึงข้อมูล CVE, ตรวจสอบว่าอยู่ใน KEV หรือไม่, อ่านคะแนน EPSS, แมปไปยังเทคนิคของ ATT&CK แล้วจัดอันดับโดยเอาที่ถูกโจมตีก่อน ตามด้วย EPSS แล้วจึงเป็น CVSS
- •นี่คือการดึงข้อมูล ไม่ใช่ scanner: มันบอกคุณว่าอะไรที่รู้แล้วและมีแนวโน้มเกี่ยวกับช่องโหว่หนึ่ง เพื่อจัดลำดับความสำคัญในการคัดกรองโดยมนุษย์ — ไม่ใช่เพื่ออนุมัติการดำเนินการแบบอัตโนมัติ
ระดับความรุนแรงเป็นคีย์จัดเรียงที่ผิด
โปรแกรมจัดการช่องโหว่ที่แพตช์ตามคะแนน CVSS นั้นยุ่งแต่ไม่ได้ผล National Vulnerability Database มีรายการ CVE ระดับ High และ Critical นับหมื่นรายการ ซึ่งส่วนใหญ่อย่างท่วมท้นไม่เคยถูกโจมตีเลย ในขณะเดียวกัน CVE ระดับ "Medium" ที่มี exploit ใช้งานได้จริงในสภาพจริงกลับค้างอยู่ใน backlog คำถามที่ security agent ควรตอบไม่ใช่ "สิ่งนี้อาจแย่ได้แค่ไหน" — แต่คือ "ควรแพตช์อะไรก่อน ในวันนี้"
การตอบคำถามนั้นต้องหลอมรวมแหล่งข้อมูลสี่แหล่งเข้าด้วยกัน แต่ละแหล่งฟรีและเป็นสาธารณะ แต่ละแหล่งมีรูปแบบและจังหวะการอัปเดตของตัวเอง
แหล่งข้อมูลทั้งสี่
NVD — ข้อมูล CVE
National Vulnerability Database ของ NIST เป็นรายการ CVE มาตรฐานที่มีเวกเตอร์ CVSS, ผลิตภัณฑ์ที่ได้รับผลกระทบ (CPE) และเอกสารอ้างอิง เป็นชั้นพื้นฐาน "ช่องโหว่นี้คืออะไร" จุดแข็ง: เชื่อถือได้และครบถ้วน จุดอ่อน: CVSS เพียงอย่างเดียวนับความรุนแรงเกินจริง
CISA KEV
แคตตาล็อก Known Exploited Vulnerabilities — รายการที่เชื่อถือได้ของ CISA ที่รวบรวม CVE ซึ่งได้รับการยืนยันว่าถูกโจมตีในสภาพจริง พร้อมกำหนดวันครบกำหนดแก้ไขสำหรับหน่วยงานรัฐบาลกลางของสหรัฐฯ หาก CVE อยู่ใน KEV มันจะได้แซงคิว จุดแข็ง: สัญญาณที่สูงที่สุดเพียงหนึ่งเดียวในการจัดการช่องโหว่
EPSS
Exploit Prediction Scoring System ของ FIRST.org: ความน่าจะเป็นรายวัน 0–1 ที่ CVE จะถูกโจมตีภายใน 30 วันข้างหน้า เปลี่ยน "อาจถูกโจมตีได้" ให้เป็น "มีโอกาสมากแค่ไหน" จุดแข็ง: การจัดอันดับเชิงความน่าจะเป็นที่สอดคล้องกับพฤติกรรมจริงของผู้โจมตี
MITRE ATT&CK
ฐานความรู้ด้านกลยุทธ์และเทคนิคของผู้โจมตี แมปช่องโหว่เข้ากับบทบาทของมันในสาย kill-chain จุดแข็ง: เปลี่ยน CVE ให้เป็นเรื่องราวเชิงปฏิบัติการที่ detection และแผนตอบสนองของคุณสามารถนำไปใช้ได้
endpoint เดียว ข่าวกรองที่หลอมรวมแล้ว
Cybersecurity Search ห่อหุ้ม NVD, CISA KEV, EPSS และ MITRE ATT&CK ไว้หลัง endpoint POST เดียว — 10 เครดิตต่อการเรียก คิดเฉพาะเมื่อสำเร็จ ส่ง 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.สร้างเองหรือซื้อ
| ต่อเชื่อมเอง | API Pick | |
|---|---|---|
| แหล่งข้อมูล | NVD + KEV + EPSS + ATT&CK แยกกัน | ครบทั้งสี่ หลอมรวมแล้ว |
| รูปแบบ | 4 schema + EPSS CSV | JSON รูปแบบเดียว |
| ความสด | คุณตั้งเวลาซิงก์ 4 ครั้ง | สดทุกการเรียก |
| พร้อมสำหรับ LLM | คุณนอร์มัลไลซ์แต่ละแหล่งเอง | ปรับรูปแบบไว้ล่วงหน้า + URL แหล่งที่มา |
| ค่าใช้จ่าย | โครงสร้างพื้นฐาน + การดูแลรักษา | 10 เครดิต/การเรียก คิดเฉพาะเมื่อสำเร็จ |
สิ่งที่คุณสร้างได้
นอกเหนือจากผู้ช่วยจัดลำดับความสำคัญของแพตช์: agent เฝ้าระวัง KEV รายวันที่แจ้งเตือนเมื่อ CVE ในสแตกของคุณเข้าไปอยู่ในรายการที่ถูกโจมตี; bot คัดกรองที่เปลี่ยนไฟล์ส่งออกจาก scanner ให้เป็นรายการงานที่จัดอันดับและอ้างอิงแหล่งที่มา; copilot ของนักวิเคราะห์ที่อธิบายนัยของ CVE ในแง่ ATT&CK ด้วยภาษาที่เข้าใจง่าย รูปแบบเดียวกัน — การดึงข้อมูลแบบหลอมรวม จัดอันดับโดยเอาที่ถูกโจมตีก่อน สังเคราะห์พร้อมแนบแหล่งที่มา รับคีย์ฟรี (100 เครดิต ไม่ต้องใช้บัตร) แล้วชี้ agent ของคุณไปที่มัน
คำถามที่พบบ่อย
ทำไมระดับความรุนแรง CVSS จึงไม่เพียงพอสำหรับการจัดลำดับความสำคัญของแพตช์?
เพราะระดับความรุนแรงวัดผลกระทบที่อาจเกิดขึ้น ไม่ใช่ความน่าจะเป็นที่จะถูกโจมตี CVE นับหมื่นรายการถูกจัดเป็น High หรือ Critical แต่มีเพียงส่วนน้อยเท่านั้นที่ถูกโจมตีในสภาพจริง หากคุณแพตช์ตาม CVSS เพียงอย่างเดียว คุณจะเสียแรงไปกับช่องโหว่ที่ผู้โจมตีไม่เคยแตะต้อง ในขณะที่พลาดช่องโหว่ระดับ medium ที่กำลังถูกโจมตีอยู่จริง แนวทางสมัยใหม่จะนำ CISA KEV (รู้หรือไม่ว่าถูกโจมตีอยู่?) และ EPSS (ความน่าจะเป็นที่จะถูกโจมตีเท่าไหร่?) มาซ้อนทับ CVSS เพื่อจัดอันดับสิ่งที่สำคัญจริง ๆ
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 — ไม่ใช่แค่ 'สิ่งนี้ถูกโจมตีได้' แต่เป็น 'สิ่งนี้เปิดทางให้เคลื่อนที่ในแนวราบ (lateral movement)' ซึ่งเปลี่ยนวิธีที่คุณจัดลำดับความสำคัญและ detection ที่คุณเพิ่มเข้าไป
agent สามารถใช้แพตช์หรือบล็อกทราฟฟิกโดยอัตโนมัติได้หรือไม่?
ไม่ได้ — และคุณก็ไม่ควรเชื่อมต่อให้มันทำเช่นนั้น นี่คือชั้นสำหรับดึงข่าวกรอง: มันหลอมรวมสิ่งที่รู้เกี่ยวกับช่องโหว่เพื่อจัดลำดับความสำคัญในการคัดกรองโดยมนุษย์ การแก้ไขแบบอัตโนมัติต้องมีการควบคุมการเปลี่ยนแปลง การทดสอบ และผู้รับผิดชอบที่เป็นมนุษย์ ใช้ agent เพื่อสร้างรายการงานที่จัดอันดับและอ้างอิงแหล่งที่มา แล้วปล่อยให้ pipeline แพตช์/SOAR และวิศวกรเป็นผู้ดำเนินการ
ข้อมูลอัปเดตล่าสุดแค่ไหน?
NVD และ CISA KEV อัปเดตอย่างต่อเนื่องเมื่อมีการเผยแพร่ CVE และยืนยันการถูกโจมตี ส่วน EPSS คำนวณใหม่รายวัน endpoint จะสืบค้นจากแหล่งข้อมูลสด ดังนั้นการรัน agent หนึ่งครั้งจึงสะท้อนสถานะปัจจุบัน สำหรับ audit trail ให้เก็บคะแนน EPSS และสถานะ KEV พร้อมประทับเวลา ณ ช่วงเวลาที่ตัดสินใจ
API ที่ใช้ในบทความนี้
Sarah Choy เป็น CEO ของ API Pick เธอเขียนเกี่ยวกับการสร้าง API พร้อมใช้งานจริงสำหรับ AI agent และเวิร์กโฟลว์ LLM