CVE-2026-100723 PUBLISHED

vm2 before 3.12.2 Memory Disclosure via zlib Buffer Pool

Assigner: VulnCheck
Reserved: 26.09.2026 Published: 27.09.2026 Updated: 27.09.2026

vm2 before 3.12.2 does not apply its Buffer backing-store ownership invariant (byteOffset === 0 and buffer.byteLength === length) to Buffers returned from host builtin modules. When an application explicitly exposes Node's zlib module through NodeVM's builtin allowlist (require: { builtin: ['zlib'] }), zlib.deflateSync can return a Buffer backed by Node's shared small-buffer pool whose .buffer is the entire pool. Untrusted guest code can construct a full-width view of that ArrayBuffer (Buffer.from(result.buffer, 0, result.buffer.byteLength)) to read and modify bytes belonging to unrelated host buffers, disclosing and corrupting host-realm memory across the sandbox boundary.

Metrics

CVSS Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:H/SI:L/SA:N
CVSS Score: 6.9

Product Status

Vendor patriksimek
Product vm2
Versions Default: unaffected
  • affected from 0 to 3.12.2 (excl.)
  • Version 3.12.2 is unaffected

Credits

  • rexpository reporter

References

Problem Types

  • Exposure of Sensitive Information to an Unauthorized Actor CWE