NVD 보강 축소 이후 취약점 관리 파이프라인 재설계

NVD 보강 데이터 축소가 CVSS·CWE·CPE 기반 취약점 관리에 미치는 영향과 KEV, EPSS, SBOM을 결합한 대응 방안을 정리한다.

2026-08-14 · 최초 발행 2026-04-22

NIST는 CVE 제출 건수가 263% 급증한 상황에서 NVD(National Vulnerability Database)의 CVSS 점수, CWE 분류, CPE 식별자 같은 보강 데이터 제공을 대폭 축소하기로 했다. 2026년 4월 15일부터 적용된 정책에서는 CISA KEV 등재 취약점, 연방정부 사용 소프트웨어, 크리티컬 소프트웨어를 우선 보강하며, 그 밖의 CVE는 "Not Scheduled" 상태로 전환된다.

NVD 데이터를 중심으로 취약점 우선순위와 조치 흐름을 자동화해 온 조직이라면, 수십만 CVE의 보강 정보 공백을 전제로 파이프라인을 다시 설계해야 한다.

CVE 제출 증가가 NVD 분석 역량을 앞질렀다

연도 연간 CVE 건수 전년 대비
2020 ~18,000 기준
2021 ~20,000 +11%
2022 ~25,000 +25%
2023 ~29,000 +16%
2024 ~40,000 +38%
2025 ~67,000 (추정) +67%
2026 Q1 전년 동기 대비 +33% 지속 급증

2020~2025년의 263% 증가는 CNA(CVE Numbering Authority) 자격을 취득하는 소프트웨어 공급업체와 보안 연구 기관의 증가, 오픈소스 의존성 확대, 자동화 퍼징과 AI 분석, 버그 바운티 프로그램 확산과 맞물려 있다.

NIST는 2025년에 42,000건의 CVE를 보강했다. 전년 대비 45% 늘어난 처리량이지만, 2026년의 제출 속도를 따라가기에는 물리적 한계가 있는 상황이다.

CVSS·CWE·CPE가 빠지면 자동화의 입력값이 달라진다

NVD의 보강 데이터는 단순한 CVE 목록 이상이다. 취약점 관리 도구가 판단과 매핑을 자동화하는 데 필요한 구조화된 입력값이었다.

CVSS(Common Vulnerability Scoring System)는 0~10점 척도로 심각도를 표현하며, Base Score, Temporal Score, Environmental Score로 구성된다. 현재 CVSS v3.1과 v4.0이 병행 사용 중이고, 패치 우선순위를 정할 때 가장 널리 쓰이는 기준이다.

CWE(Common Weakness Enumeration)는 취약점의 근본 원인을 분류한다. CWE-79(XSS), CWE-89(SQL 인젝션), CWE-416(UAF) 같은 식별자는 보안 교육, 코드 리뷰 가이드라인, SAST 룰 매핑에 사용된다.

CPE(Common Platform Enumeration)는 영향을 받는 소프트웨어와 하드웨어를 표준화해 식별한다. SBOM(Software Bill of Materials)과 연결하면 취약 컴포넌트를 자동 탐지하는 데 활용할 수 있다.

cpe:2.3:a:microsoft:sharepoint_server:2019:*:*:*:*:*:*:*

CVE 발행(MITRE/CNA)NVD 보강(CVSS/CWE/CPE)취약점 스캐너Qualys/Tenable/Rapid7SIEM/SOARSplunk/Sentinel패치 관리IVANTI/BigFixSBOM 분석Grype/Trivy엔터프라이즈취약점 대시보드

보강 데이터가 없으면 CVE ID만으로 심각도를 자동 분류하기 어려워진다. 그 결과 미분류 취약점이 대시보드에 누적되고, 스캐너·SIEM·패치 관리 도구가 공유하던 우선순위 기준도 흔들릴 수 있다.

NVD API 응답에서 점수가 비어 있을 수 있다

기존 데이터 흐름은 CNA가 CVE ID를 발행하고, NIST가 이를 수집한 뒤 분석가가 CVSS·CWE·CPE를 추가하는 방식이었다. 이후 보강된 데이터를 NVD API로 공개하고, 스캐너·SIEM·패치 관리 도구가 이를 소비했다.

1. CVE 발행: CNA가 새 취약점에 CVE ID 부여
2. NVD 수집: NIST가 CVE를 NVD에 입수
3. NIST 분석: 보안 분석가가 CVSS/CWE/CPE 등 보강 데이터 추가
4. NVD API: 보강된 데이터를 API로 공개
5. 다운스트림 소비: 스캐너, SIEM, 패치 관리 도구가 API 소비

다음 코드는 NVD API v2.0에서 CVE 상세 정보를 조회하고 CVSS v3.1 점수를 추출하는 예시다.

import requests

def get_nvd_cve(cve_id: str) -> dict:
    """NVD API v2.0으로 CVE 상세 정보 조회"""
    url = f"https://services.nvd.nist.gov/rest/json/cves/2.0"
    params = {"cveId": cve_id}
    headers = {"apiKey": "YOUR_NVD_API_KEY"}

    response = requests.get(url, params=params, headers=headers)
    data = response.json()

    vuln = data["vulnerabilities"][0]["cve"]
    metrics = vuln.get("metrics", {})

    # CVSS v3.1 점수 추출
    cvss_v31 = metrics.get("cvssMetricV31", [{}])[0]
    cvss_score = cvss_v31.get("cvssData", {}).get("baseScore", "N/A")

    return {
        "cve_id": cve_id,
        "cvss_score": cvss_score,
        "description": vuln["descriptions"][0]["value"]
    }

새 정책에서는 우선순위가 낮은 CVE를 조회할 때 이 API 응답에 CVSS 점수가 없을 수 있다. API 연동 자체보다도, 점수가 없을 때 우선순위를 어떻게 결정할지에 대한 내부 정책이 필요해진다.

보강 대상은 위험도와 공공 부문 중요도로 정해진다

2026년 4월 15일부터 적용된 우선순위는 실제 악용 여부와 공공 부문·핵심 인프라의 중요도를 중심으로 구성된다.

우선순위 1은 CISA KEV 카탈로그에 등재됐거나 실제 악용 중인 취약점이며 즉시 보강 대상이다. 우선순위 2에는 연방 정부 기관에서 사용하는 소프트웨어와 FISMA(Federal Information Security Management Act) 적용 시스템이 포함된다. 우선순위 3은 Executive Order 14028에서 정의한 크리티컬 소프트웨어와 핵심 인프라(Critical Infrastructure) 관련 소프트웨어를 대상으로 한다.

이 기준에 해당하지 않는 CVE는 "Not Scheduled" 카테고리로 분류된다. 2026년 3월 1일 이전의 미보강 CVE 전체도 일괄 이동 대상이다.

NVD만을 데이터 소스로 둔 조직에서는 CVSS 점수가 없는 CVE가 수천 건 쌓이고, 패치 우선순위 자동화가 중단될 수 있다. SOC 2, PCI-DSS 등의 컴플라이언스 보고에도 데이터 공백이 생긴다.

KEV와 EPSS를 함께 우선순위 입력으로 사용한다

CISA KEV(Known Exploited Vulnerabilities)는 실제 악용이 확인된 취약점만 수록한다.

  • URL: https://www.cisa.gov/known-exploited-vulnerabilities-catalog
  • 업데이트 주기: 주 1~3회 (실제 공격 관측 시 즉시)
  • 특징: 실제 악용 확인된 취약점만 수록 → 노이즈 최소화
  • API: 기계 판독 가능한 JSON/CSV 형식 제공
  • 한계: 전체 CVE의 극히 일부만 포함 (수천 건 수준)

EPSS(Exploit Prediction Scoring System)는 FIRST.org(Forum of Incident Response and Security Teams)가 운영하며, 향후 30일 내 실제 악용 확률을 0~1 범위의 점수로 제공한다. 매일 갱신되고 실제 악용 사례, PoC 코드 공개 여부, 취약점 특성을 데이터 기반으로 사용한다. NVD 보강 여부와 관계없이 모든 CVE에 제공된다는 점이 특징이다.

실무 활용 공식:
우선순위 = (EPSS > 0.7) OR (KEV 등재) → 즉시 패치
우선순위 = (EPSS 0.3~0.7) AND (CVSS ≥ 7) → 30일 내 패치
우선순위 = 나머지 → 정기 패치 주기

VulnCheck는 CVE별 악용 코드 가용성과 패치 상태를 자동 추적하고, Vulners는 다중 소스 취약점 데이터를 통합한 API를 제공한다. Snyk는 오픈소스 의존성에 특화된 취약점 데이터베이스를 제공한다.

단일 NVD 의존을 멀티 소스 흐름으로 바꾼다

재설계의 핵심은 NVD를 제거하는 것이 아니라, NVD가 제공하지 못하는 입력값을 다른 소스와 자산 정보로 보완하는 데 있다.

CVE 발행 → 멀티 소스 수집 → 내부 우선순위 엔진 → 패치 워크플로우
          ↙ NVD API (우선순위 데이터만)
          ↙ CISA KEV API (실제 악용 CVE)
          ↙ EPSS API (악용 확률)
          ↙ 벤더 어드바이저리 (공급업체 직접)
          ↙ SBOM 매칭 (자산과 직접 연계)

SBOM은 소프트웨어 구성 요소 목록이다. NVD 보강 데이터 없이도 CPE 기반 취약점 매핑에 활용할 수 있으며, SBOM과 EPSS를 조합하면 NVD 의존도를 크게 줄일 수 있다. 실제 악용 여부, 악용 확률, 벤더의 직접 공지, 그리고 조직 자산과의 연계를 하나의 우선순위 엔진에 모으는 방식이다.

NVD 중심 모델은 CVE가 263% 급증한 환경에서 더 이상 모든 취약점을 균등하게 분석하는 구조로 유지되기 어렵다. CISA KEV의 실제 악용 기준, EPSS의 확률적 위험 평가, SBOM 기반 자산 연계를 함께 사용해야 보강 데이터 공백 속에서도 패치 워크플로우를 계속 운영할 수 있다.

Sources

취약점 관리NVDCVEDevSecOpsSBOM