Skip to main content

CVE Library

AdversaryGraph stores vulnerability intelligence as first-class data so analysts can review strict relationships between:

  • APT groups and threat actors
  • ATT&CK techniques and tactics
  • IOCs and source-backed observables
  • CVEs, CVSS score fields, CWE weakness IDs, affected CPEs, and known-exploited status

CVSS is a score and vector field inside each CVE record. The feature and page name is CVE Library.

Feed Sources

The initial implementation uses authoritative public feeds:

SourcePurposeStored Fields
NVD CVE API 2.0CVE records, CVSS, CWE, CPE, references, vulnerability statusCVE ID, description, published/modified dates, CVSS vector/score/severity, CWE IDs, CPE matches, references, raw JSON
CISA Known Exploited VulnerabilitiesKnown exploited status and required action contextCVE ID, vendor/product, vulnerability name, date added, due date, required action, notes, raw JSON

NVD_API_KEY is optional. Without it, NVD rate limits are lower.

Storage Model

The CVE module uses normalized tables and keeps the original source payload:

TableRole
cve_sourcesFeed status, source labels, last sync time, and sync errors
cve_recordsNormalized CVE, CVSS score, CWE, CPE, KEV fields, and raw JSON
cve_technique_linksEvidence-backed CVE-to-ATT&CK technique relationships
cve_ioc_linksEvidence-backed CVE-to-IOC relationships
cve_actor_linksEvidence-backed CVE-to-APT/group relationships

Strict Correlation Policy

Stored links are intentionally conservative. The platform creates strong links only when one of these conditions is true:

  • the CVE source text or reference explicitly contains an ATT&CK technique ID;
  • a local IOC record explicitly contains a CVE ID in its value, description, tags, source URL, or raw enrichment;
  • a CVE-tagged IOC already has a source-backed actor relationship, creating a traceable CVE -> IOC -> actor evidence chain;
  • an analyst or trusted import flow adds an explicit relationship with source and evidence.

AI can later be used to suggest candidate relationships, but suggested links should not be treated as strong correlation until accepted by an analyst with evidence.

The CVE Library exposes bidirectional pivots across the analyst workflow:

PivotEvidence RequiredWhere It Appears
CVE -> ATT&CK techniqueExplicit ATT&CK ID in CVE source text/reference, or CVE-linked IOC that is already mapped to the techniqueCVE detail, technique drawer
CVE -> IOCCVE ID appears in IOC value, description, tags, source URL, or raw enrichmentCVE detail, IOC detail
CVE -> APT/groupDirect source-backed actor link, or CVE-linked IOC with an existing actor relationshipCVE detail, ATT&CK Group Library CVEs tab

Derived paths are shown as paths, for example CVE -> IOC -> actor or CVE -> IOC -> technique, so analysts can see exactly which edge carries the evidence. The platform does not automatically infer CVE -> actor -> every actor technique, because that would overstate the relationship.

API

EndpointPurpose
GET /api/cve/sourcesCVE feed status
GET /api/cve/librarySearch/filter CVE records
GET /api/cve/{cve_id}CVE detail with CVSS and strict APT/TTP/IOC links
GET /api/cve/{cve_id}/graphCompact CVE correlation graph
GET /api/cve/related/technique/{attack_id}CVEs directly or IOC-derived related to a technique
GET /api/cve/related/actor/{actor_attack_id}CVEs directly or IOC-derived related to an actor
GET /api/cve/related/ioc/{indicator_id}CVEs directly related to an IOC
POST /api/cve/sync/allSync NVD recent CVEs and CISA KEV, then refresh correlations
POST /api/cve/sync/nvdSync recent NVD CVE records
POST /api/cve/sync/nvd/cve-idsEnrich specific CVEs from NVD by CVE ID
POST /api/cve/sync/nvd/missing-cvssEnrich CVEs that were imported without CVSS score data
POST /api/cve/sync/kevSync CISA KEV
POST /api/cve/correlateRebuild strict local CVE correlations
POST /api/sync/cveCentral Reference Sync entrypoint

Analyst Workflow

  1. Open CVE Library.
  2. Sync NVD and CISA KEV.
  3. Filter by CVE ID, product text, weakness, severity, or CISA KEV status.
  4. Open a CVE and review CVSS score/vector, CWE/CPE context, references, and known-exploited status.
  5. Review strict ATT&CK, IOC, and actor links.
  6. Pivot to Navigator, IOC Library, or ATT&CK Group Library for investigation and detection engineering.

Validation Notes

CVE-to-APT correlation is high risk if treated loosely. A CVE being exploited in the wild does not prove a specific actor used it. AdversaryGraph therefore keeps source, evidence, relationship type, and confidence on every link.