Cookies Notice
This site uses cookies to deliver services and to analyze traffic.
📣 Apiiro named a Leader in the 2026 Gartner® Magic Quadrant™ for Software Supply Chain Security
The vulnerability exploitability exchange (VEX) is a standardized format for communicating whether a software product is actually affected by a known vulnerability. It lets a software producer state, in a machine-readable document, that a CVE present in a component is not exploitable in their product, or that it is and a fix is available. The goal is to separate vulnerabilities that exist on paper from the ones that pose real risk in a specific deployment.
VEX matters because modern applications inherit hundreds of open source components, and scanners flag every known CVE in those components regardless of whether the vulnerable code path is reachable. Security teams waste cycles triaging findings that were never exploitable. VEX gives them a structured signal to suppress the noise and focus remediation on issues that map to known exploited vulnerabilities and reachable code.
A VEX document captures the exploitability status of one or more vulnerabilities for a specific product or set of products. It is produced by whoever has the context to make the call, usually the software vendor, and consumed by downstream tools and customers.
At minimum, each VEX statement includes:
Tools ingest these statements and filter scan output accordingly, so a CVE marked not affected no longer surfaces as an actionable finding. This turns triage from a manual review into an automated, repeatable step.
Every VEX vulnerability statement carries one of four status values. Each tells the consumer something different about how to act.
| Status | Meaning | Typical action |
|---|---|---|
| Not affected | The vulnerability is present in a component but cannot be exploited in this product | Suppress the finding; record the justification |
| Affected | The product is exploitable through this vulnerability | Prioritize remediation and apply mitigations |
| Fixed | A patched version resolves the vulnerability | Upgrade to the fixed release |
| Under investigation | The producer has not yet determined exploitability | Track and revisit when the status updates |
The not affected status is where VEX delivers the most value, because it requires a justification. Common justifications include the vulnerable code not being present in the build, the code being present but not executed, or an existing control blocking the attack path. These justifications feed directly into vulnerability prioritization decisions.
A VEX SBOM pairing is the natural way to use both artifacts. An SBOM lists what is in your software, and VEX explains which of those components carry real risk.
An SBOM is an inventory of every component in a product, including transitive dependencies. On its own, it says nothing about exploitability. When a scanner cross-references an SBOM against a vulnerability database, it returns every CVE tied to every listed component, producing a large and largely theoretical finding list. VEX layers exploitability context on top, marking which CVEs actually matter.
The SBOM provides the component map, and VEX annotates it with status. Major formats including OpenVEX, CycloneDX VEX, and CSAF VEX support this pairing, and several can embed VEX data alongside SBOM data.
The practical payoff of VEX security is noise reduction at scale. The majority of CVEs flagged in a dependency scan are not reachable or not exploitable in the specific application.
When teams run software composition analysis across a large codebase, the raw output can run to thousands of findings. Without exploitability context, every one competes for attention, and analysts burn time confirming false positives. VEX automates that confirmation. A vendor-issued not affected statement, backed by a justification, lets the consuming team suppress the finding with an auditable record of why. The result is a shorter, higher-confidence backlog where remediation effort tracks actual risk.
VEX complements an SBOM. The SBOM inventories components, while VEX states whether known vulnerabilities in those components are exploitable. Used together, they give a complete picture of what is present and what poses real risk.
Usually the software producer or vendor, since they have the deepest context on whether a vulnerability is reachable in their product. Consumers can author internal VEX statements but typically rely on vendor-issued ones.
VEX marks vulnerabilities as not affected with a documented justification, letting scanners suppress those findings automatically. This filters out CVEs that exist in components but cannot be exploited, shrinking the triage backlog.
The three most common formats are OpenVEX, CycloneDX VEX, and CSAF VEX, with SPDX 3.0 also carrying VEX data. Scanners such as Trivy, Grype, and Anchore consume one or more of these.
No framework currently mandates VEX. It is referenced in CISA and NTIA software supply chain guidance, and US federal SBOM expectations became risk-based in early 2026, leaving VEX recommended rather than required.
Recognized by leading analysts
Apiiro is named a leader in ASPM by IDC, Gartner, and Frost & Sullivan. See what sets us apart in action.