CVE-2025-12999

CRITICALPre-NVD 9.19.1—
EchelonGraph scoreMEDIUM confidence

This critical-severity CVE scores 9.1 under the CNA's CVSS (NVD's own analysis pending). EPSS exploit probability: 0.3% (25th percentile of EPSS-scored CVEs). GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).

Triggered by: NVD CVSS baseline
Sources: cna:eclipse, epss
Elevated
9.1EG
EchelonGraph verdictPlan a fixSerious severity, but no confirmed exploitation yet.
  • High severity, but no confirmed exploitation yet
CISA-KEV: Not listedEPSS PROB: 0.3%CVSS: 9.1Exploit: Elevated riskExposed services: Not assessed

A fix is available — apply it.

UrlUtil.getBaseUrl builds the absolute URLs in a response — download links, icons, asset and API URLs — from the X-Forwarded-Host, X-Forwarded-Proto and X-Forwarded-Prefix request headers, with no check on whether the sender was a trusted proxy, falling back to the client-supplied Host header.

Those responses are cached under keys that do not include the host (extension.json since 0.6.0, namespace.details.json since 0.9.0, sitemap since 0.14.5, latest.extension.version.vscode since 0.34.2). A single request carrying a forged header therefore places attacker-chosen URLs into an entry served to every other client for the lifetime of that entry — one hour by default, and cluster-wide where ovsx.redis.enabled is set.

The VSIX download URL, its signature URL and the public key URL are all derived from the same base URL, so extension signing does not limit the impact: an attacker who poisons an entry supplies the package, the signature over it, and the key used to verify it.

Exploitability depends on deployment topology. A server reachable directly by clients, or fronted by a proxy that relays the client's X-Forwarded-Host rather than overwriting it, is exploitable by an unauthenticated remote attacker. A proxy that overwrites the header is not.

An unauthenticated attacker can poison Open VSX's per-extension metadata cache with attacker-controlled download, signature, and public-key URLs by supplying a crafted X-Forwarded-Host header, causing downstream VS Code-compatible editors to fetch and install a malicious VSIX.

Workarounds (unpatched versions)

  • Configure the reverse proxy to set rather than relay X-Forwarded-Host, X-Forwarded-Proto and X-Forwarded-Prefix — note that nginx's $host is the client's Host header and is not a safe value.
  • Ensure the server is not reachable except through that proxy.
  • Flush the caches afterwards; poisoned entries survive the configuration change.

CVSS v3
9.1
EG Score
9.1CRITICALmedium confidence
EG Risk
57
EG Risk 57/100CISA SSVC

EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).

How it’s computed
Severity91% × 45%
Exploitation40% × 40%
Automatability0% × 15%
CISA SSVC: Track at low or medium mission impact; Track* at high (mission-essential systems).
Action: A fix is available. Apply it within your standard update timelines.
EPSS PROB
0.3%
EPSS %ILE
25th
KEV
Not listed

CISA SSVCTrack at low or medium mission impact; Track* at high (mission-essential systems).

A fix is available. Apply it within your standard update timelines.

Exploitation public PoC (CISA Vulnrichment) · Automatable no (CISA Vulnrichment) · Technical impact partial (CISA Vulnrichment). Mission impact is CISA's Mission & Well-being decision point, and only you can judge it: high means the affected system is essential to your organisation's mission, or its compromise could cause irreversible harm to people. CISA's decision table

Published

September 21, 2026

Last Modified

September 30, 2026

Advisory Details (3)

Auto-updated Sep 21, 2026
🔬 Proof of concept available. Patch available. Sources: github, github_pr.
generic

[Eclipse Open VSX] Cache poisoning issue in the open-vsx.org API (#75) · Issues · Eclipse Projects Security / cve-assignment · GitLab

https://gitlab.eclipse.org/security/cve-assignment/-/work_items/75
github_pr Patch Available

fix: stop deriving the base URL from untrusted X-Forwarded-* headers

Patch available: eclipse-openvsx/openvsx cli-1.2.0 (PR #2196 merged 2026-09-10)

https://github.com/eclipse-openvsx/openvsx/pull/2196
githubMentions a patch (unverified)🟡 PoC Available

Marketplace Takeover via Forwarded-host cache poisoning of /vscode/gallery/{namespace}/{extension}/latest · Advisory · eclipse-openvsx/openvsx · GitHub

https://github.com/eclipse-openvsx/openvsx/security/advisories/GHSA-f55q-5m46-rmxc

Weakness Classification(1)

MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.

Data Freshness Timeline

(refreshed 14× in last 7d / 45× in last 30d)

Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.

  1. 2026-10-10 23:44 UTCEG score recompute
  2. 2026-10-10 19:58 UTCEPSS rescore
  3. 2026-10-09 22:06 UTCEG score recompute
  4. 2026-10-09 20:06 UTCEPSS rescore
  5. 2026-10-08 17:20 UTCEG score recompute
  6. 2026-10-08 17:08 UTCEPSS rescore
  7. 2026-10-08 02:24 UTCEG score recompute
  8. 2026-10-07 23:46 UTCEPSS rescore
  9. 2026-10-06 18:46 UTCEG score recompute
  10. 2026-10-06 15:16 UTCEPSS rescore
  11. 2026-10-05 21:44 UTCEG score recompute
  12. 2026-10-05 17:42 UTCEPSS rescore
  13. 2026-10-05 00:37 UTCEG score recompute
  14. 2026-10-04 23:21 UTCEPSS rescore
  15. 2026-10-03 15:11 UTCEG score recompute
  16. 2026-10-03 14:24 UTCEPSS rescore
  17. 2026-10-02 18:17 UTCEG score recompute
  18. 2026-10-01 21:17 UTCEG score recompute
  19. 2026-10-01 19:48 UTCEPSS rescore
  20. 2026-09-30 15:31 UTCEG score recompute
  21. 2026-09-30 15:02 UTCEPSS rescore
  22. 2026-09-30 15:02 UTCEPSS rescore
  23. 2026-09-29 19:28 UTCEG score recompute
  24. 2026-09-28 22:26 UTCEG score recompute
  25. 2026-09-28 18:15 UTCEG score recompute
Show 20 more
  1. 2026-09-28 13:50 UTCEPSS rescore
  2. 2026-09-27 16:31 UTCEG score recompute
  3. 2026-09-26 19:35 UTCEG score recompute
  4. 2026-09-26 15:58 UTCEPSS rescore
  5. 2026-09-26 15:57 UTCEPSS rescore
  6. 2026-09-26 02:47 UTCEG score recompute
  7. 2026-09-24 16:39 UTCEG score recompute
  8. 2026-09-24 14:02 UTCEPSS rescore
  9. 2026-09-23 15:29 UTCEG score recompute
  10. 2026-09-23 13:46 UTCEPSS rescore
  11. 2026-09-22 18:35 UTCEG score recompute
  12. 2026-09-22 14:47 UTCEPSS rescore
  13. 2026-09-22 14:20 UTCEG score recompute
  14. 2026-09-22 13:27 UTCEG score recompute
  15. 2026-09-21 22:27 UTCEG score recompute
  16. 2026-09-21 14:21 UTCEG score recompute
  17. 2026-09-21 14:00 UTCEG score recompute
  18. 2026-09-21 09:26 UTCEG score recompute
  19. 2026-09-21 09:05 UTCEG score recompute
  20. 2026-09-21 09:05 UTCMITRE cvelistV5first tracked

Frequently asked(5)

What is CVE-2025-12999?
CVE-2025-12999 is a critical vulnerability published on September 21, 2026. UrlUtil.getBaseUrl builds the absolute URLs in a response — download links, icons, asset and API URLs — from the X-Forwarded-Host, X-Forwarded-Proto and X-Forwarded-Prefix request headers, with no check on whether the sender was a trusted proxy, falling back to the client-supplied Host header.…
When was CVE-2025-12999 disclosed?
CVE-2025-12999 was first published on September 21, 2026, with the most recent update on September 30, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2025-12999 actively exploited?
CVE-2025-12999 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 0.3% probability of exploitation in the next 30 days (25th percentile of EPSS-scored CVEs).
What is the CVSS score of CVE-2025-12999?
CVE-2025-12999 has a CVSS base score of 9.1 (the CNA's own assessment, by eclipse; NVD's own analysis pending).
How do I remediate CVE-2025-12999?
A fix for CVE-2025-12999 is available: update to the fixed version the vendor names in its advisory.

Dependency Blast Radius

Explore the affected products and dependency analysis for CVE-2025-12999

Explore →

Is Your Infrastructure Affected by CVE-2025-12999?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.