OpenVM MemoryMerkleAir lets forged rows change the memory root
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- —
- Confidentiality · integrity · availability
- None · High · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA.
Summary
OpenVM is affected before 1.7.0 in the 1.x line, from 2.0.0-alpha before 2.0.0-rc.3, and from 2.1.0-dev.0 before 2.1.0-preview. MemoryMerkleAir does not reject Merkle expansion rows at parent_height 0 or below when expand_direction is nonzero, a missing input validation flaw (CWE-20). A malicious prover can fabricate a subtree below a memory leaf and swap digests within it to change the committed memory root without a matching memory operation. This undermines the soundness of proofs that use persistent memory across continuation segments.
Written with Claude Haiku 5.5 from the sources below · 2026-10-30
Description from the CNA
OpenVM is a performant and modular zkVM framework built for customization and extensibility. Before 1.7.0 in the 1.x line and in affected 2.0 and 2.1 prereleases, `MemoryMerkleAir` does not forbid Merkle expansion rows at `parent_height` = 0 or below while `expand_direction` != 0. A malicious prover can fabricate a subtree below a memory leaf and swap digests inside that subtree to change the committed memory root without a corresponding memory operation. The fraudulent rows still balance against the Merkle and compression buses and require no memory-bus operation for the changed leaf. Because the memory Merkle root binds VM memory state across continuation segment boundaries, this affects the soundness of OpenVM proofs using persistent memory. This issue is fixed in versions 1.7.0, 2.0.0-rc.3 and 2.1.0-preview.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| openvm-org | openvm | before 1.7.0; 2.0.0-alpha to before 2.0.0-rc.3; 2.1.0-dev.0 to before 2.1.0-preview | 1.7.0, 2.0.0-rc.3, 2.1.0-preview | Patch available | CNA |
- openvm Vendoropenvm-org Affected before 1.7.0; 2.0.0-alpha to before 2.0.0-rc.3; 2.1.0-dev.0 to before 2.1.0-preview Fixed in 1.7.0, 2.0.0-rc.3, 2.1.0-preview Patch available CNA
Remediation
Upgrade OpenVM to version 1.7.0, 2.0.0-rc.3 or 2.1.0-preview.
Written with Claude Haiku 5.5 from the sources below · 2026-10-30
- Fix · CNA openvm (openvm-org) Fixed in 1.7.0, 2.0.0-rc.3, 2.1.0-preview
Timeline
- 2026-10-30 Threatist record created from CVE-2026-62333
- 2026-11-01 Priority changed: MEDIUM → LOW
- 2026-11-05 CISA SSVC decision points changed
- 2026-11-05 Priority changed: LOW → MEDIUM
References
Other 9
- https://github.com/openvm-org/openvm/security/advisories/GHSA-396x-v8w4-9x82
- https://github.com/openvm-org/openvm/pull/148
- https://github.com/openvm-org/openvm/commit/bb123f6073691bd2b794171c594264c77e45c376
- https://github.com/openvm-org/openvm/blob/v2.0.0-alpha/crates/vm/src/system/memory/merkle/air.rs
- https://github.com/openvm-org/openvm/blob/v2.0.0-beta.2/crates/vm/src/system/memory/merkle/air.rs
- https://github.com/openvm-org/openvm/blob/v2.1.0-dev.0/crates/vm/src/system/memory/merkle/air.rs
- https://github.com/openvm-org/openvm/releases/tag/v1.7.0
- https://github.com/openvm-org/openvm/releases/tag/v2.0.0-rc.3
- https://github.com/openvm-org/openvm/releases/tag/v2.1.0-preview
More openvm-org vulnerabilities
- TI-2026-83375 Proof verification bypass in OpenVM Halo2 Solidity verifier CVSS 4.0HIGH 8.7
- TI-2025-29394 OpenVM byte decomposition of pc in AUIPC chip can overflow CVSS 4.0HIGH 7.8
- TI-2026-83376 OpenVM's Halo2 verifier accepts non-canonical app commitments CVSS 4.0MEDIUM 6.9
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences