Safeguard
Supply Chain•

VEX status values explained: affected, fixed, under investigation

What the VEX statuses affected, fixed and under_investigation mean, what each one must contain, and how a consumer should act on them in triage.

Safeguard Security Team
3 min read

A VEX statement carries exactly one of four statuses: not_affected, affected, fixed or under_investigation. This post covers the three that are not "not affected". Each one tells you something different about what to do next, and the specs attach different obligations to the author who writes them.

affected means the author recommends action

CISA's minimum requirements say that "affected" means actions are recommended by the author to remediate, mitigate or otherwise address the vulnerability, and that the vulnerability affects the listed products. A statement with this status must include an action statement.

OpenVEX says the same thing in its own terms: an affected statement needs an action statement describing remediation or mitigation. If you receive "affected" with no action text, treat the document as incomplete and ask the supplier.

fixed means the listed products contain the fix

"Fixed" means the listed product identifiers contain fixes for the vulnerability. The key word is listed. A fixed statement for version 2.4.1 says nothing about 2.4.0.

When you consume a fixed statement, check that the product identifier matches the exact build you run, not just the product name. A supplier may fix one branch and leave another open.

under_investigation is a promise to come back

CISA describes this status as the author or other relevant parties investigating without having declared a final status. It is expected to change once the investigation concludes.

That makes it a poor place to park a finding permanently. If a statement sits in under_investigation for weeks, ask the supplier for a date. It is a legitimate early signal, but it is not an answer.

How a consumer should treat each status

StatusYour default action
affectedRead the action statement, schedule mitigation or upgrade
fixedConfirm your version is in the fixed set, then upgrade
under_investigationKeep the finding open, set a follow up date

None of these statuses suppresses a finding. Only not_affected does that, and it needs a justification or an impact statement behind it. See how a not_affected statement must be explained.

No default status exists

CISA states that VEX does not specify, assume or imply any default status that is not explicitly provided in VEX statements, and that VEX information may be incomplete. Silence is not "not affected". If a supplier publishes statements for ten CVEs and your scanner reports eleven, the eleventh is still open.

Quick check

Does "fixed" mean every version of the product is safe?

No. It means the listed product identifiers contain the fix. Versions outside that list are not covered by the statement.

Can under_investigation be used to hide a finding?

It should not be. The status is expected to change when the investigation ends, so treat it as an open finding with a follow up date.

Safeguard's free scan at https://gold.safeguard.sh/scan can show you which components in your dependency tree carry open findings, so you know which VEX statements to ask for.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.