SB2026080123 - Multiple vulnerabilities in wasm-micro-runtime
Published: August 1, 2026 Updated: August 5, 2026
Breakdown by Severity
- Low
- Medium
- High
- Critical
Description
This security bulletin contains information about 3 vulnerabilities.
1) Heap-based buffer overflow (CVE-ID: CVE-2026-54914)
CWE-ID: CWE-122 - Heap-based Buffer Overflow
CVSSv4: 8.8 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N]
The vulnerability allows a remote attacker to execute arbitrary code.
The vulnerability exists due to a heap-based buffer overflow in wasmtime_ssp_poll_oneoff() when processing a crafted guest Wasm module that invokes WASI poll_oneoff with multiple subscriptions. A remote attacker can supply a crafted Wasm module to execute arbitrary code.
The issue can also cause a denial of service and breaks the runtime's sandbox isolation guarantee. WASI poll_oneoff is enabled by default, and no user interaction is required.
2) Use of Uninitialized Variable (CVE-ID: CVE-2026-54913)
CWE-ID: CWE-457 - Use of Uninitialized Variable
CVSSv4: 6.9 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N]
The vulnerability allows a remote attacker to disclose host stack memory to the WebAssembly guest.
The vulnerability exists due to use of an uninitialized variable in load_init_expr in core/iwasm/interpreter/wasm_loader.c when parsing crafted WebAssembly global initialization expressions using ref.null with an invalid wide heap type. A remote attacker can supply a specially crafted WebAssembly module to disclose host stack memory to the WebAssembly guest.
Only the classic or fast interpreter loader is affected in builds with WASM_ENABLE_GC=0, and wider globals can increase the amount of leaked data.
3) Out-of-bounds write (CVE-ID: CVE-2026-54912)
CWE-ID: CWE-787 - Out-of-bounds write
CVSSv4: 8.7 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N]
The vulnerability allows a remote attacker to cause a denial of service.
The vulnerability exists due to out-of-bounds write in the fast interpreter loader in wasm_loader.c when loading a crafted WebAssembly module via wasm_runtime_load(). A remote attacker can supply a crafted WebAssembly module to cause a denial of service.
The issue occurs during module loading before any wasm code is executed, and the out-of-bounds write contains partially attacker-controlled data.
Remediation
Install update from vendor's website.