CVE-2026-13212

HIGHPre-NVD 8.88.8
EchelonGraph scoreMEDIUM confidence

This high-severity CVE scores 8.8 under a secondary CVSS source (NVD's own analysis pending). EPSS exploit probability: 0.2%, top 87% of all CVEs by exploit prediction. 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: epss, secondary
Trending — 3 sources updated this week
8.8EG
EchelonGraph verdictPlan a fixSerious severity, but no confirmed exploitation yet.
  • High severity, but no confirmed exploitation yet
CISA-KEV: Not listedEPSS PROB: 0%CVSS: 8.8Exploit: None knownExposed: 0

No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.

The Zephyr virtio driver does not validate the descriptor-chain head id that the virtio device writes into the used ring. In virtio_isr() (drivers/virtio/virtio_common.c), the device-written vq->used->ring[idx].id is used directly as an index into vq->recv_cbs[] and vq->desc[], which are both allocated with exactly vq->num entries. recv_cbs[] holds {cb, opaque} callback entries, and the indexed callback pointer is then invoked as cbe.cb(cbe.opaque, used_len).

Because the id is consumed as a 16-bit value with no bound check, a malicious or compromised virtio backend (an untrusted hypervisor, or an untrusted hardware/peer-processor virtio device on a PCI or MMIO transport) can supply an id far beyond vq->num. This causes an out-of-bounds read of a {function pointer, argument} pair from heap memory beyond recv_cbs[], after which the driver calls that attacker-shaped pointer in the guest's interrupt context. No guest privileges or user interaction are required; the backend triggers it by writing the shared used ring and raising the queue interrupt.

The result is an arbitrary / attacker-influenced function-pointer call in the Zephyr guest, i.e. a control-flow-hijack primitive that can lead to code execution or, at minimum, a reliable crash. The fix rejects any used-ring id >= vq->num before indexing recv_cbs[]/desc[] or invoking the callback. This affects builds using CONFIG_VIRTIO with the PCI or MMIO transport.

CVSS v3
8.8
EG Score
8.8(medium)
EG Risk
40(Track)
EG Risk 40/100SSVC: Track

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
Severity88% × 45%
Exploitation0% × 40%
Automatability0% × 15%
Action: Routine — remediate on your standard cadence.
EPSS PROB
0%
EPSS %ILE
13%
KEV
Not listed

Published

August 24, 2026

Last Modified

August 26, 2026

Advisory Details (2)

Auto-updated Aug 24, 2026
Patch available. Sources: github_commit, github.
github Patch Available

Zephyr virtio driver calls an arbitrary function pointer from an out-of-range used-ring descriptor id · Advisory · zephyrproject-rtos/zephyr · GitHub

https://github.com/zephyrproject-rtos/zephyr/security/advisories/GHSA-7884-373w-qqhx
github_commit

commit fe47dbca0809 (zephyrproject-rtos/zephyr)

Fix landed in zephyrproject-rtos/zephyr commit fe47dbca0809 — awaiting tagged release

https://github.com/zephyrproject-rtos/zephyr/commit/fe47dbca080957c425383cc1d5bdc7d48a41d4a5

Weakness Classification(1)

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

Data Freshness Timeline

(refreshed 8× in last 7d / 8× 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-08-26 17:05 UTCEG score recompute
  2. 2026-08-25 21:57 UTCEG score recompute
  3. 2026-08-25 13:48 UTCEPSS rescore
  4. 2026-08-24 21:26 UTCEG score recompute
  5. 2026-08-24 20:26 UTCEG score recompute
  6. 2026-08-24 16:25 UTCEG score recompute
  7. 2026-08-24 15:46 UTCEG score recompute
  8. 2026-08-24 15:46 UTCMITRE cvelistV5first tracked

Frequently asked(5)

What is CVE-2026-13212?
CVE-2026-13212 is a high vulnerability published on August 24, 2026. The Zephyr virtio driver does not validate the descriptor-chain head id that the virtio device writes into the used ring. In virtioisr() (drivers/virtio/virtiocommon.c), the device-written vq->used->ring[idx].id is used directly as an index into vq->recvcbs[] and vq->desc[], which are both…
When was CVE-2026-13212 disclosed?
CVE-2026-13212 was first published in the National Vulnerability Database on August 24, 2026, with the most recent update on August 26, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-13212 actively exploited?
CVE-2026-13212 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 0% probability of exploitation in the next 30 days, which ranks it in the top 87.2% of all scored CVEs.
What is the CVSS score of CVE-2026-13212?
CVE-2026-13212 has a CVSS v3 base score of 8.8 (NVD).
How do I remediate CVE-2026-13212?
Patch to the fixed version published by the affected vendor. Where vendor advisories exist for CVE-2026-13212, EchelonGraph cross-links them in the Vendor Advisories panel below — those typically contain the canonical remediation steps, fixed version numbers, and any vendor-specific mitigations.

Dependency Blast Radius

Explore the affected products and dependency analysis for CVE-2026-13212

Explore →

Is Your Infrastructure Affected by CVE-2026-13212?

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