[Pkg-javascript-devel] Bug#1150156: wabt: CVE-2026-90648
Salvatore Bonaccorso
carnil at debian.org
Tue Oct 6 10:55:11 BST 2026
Source: wabt
Version: 1.0.41+dfsg+~cs1.0.39-2
Severity: important
Tags: security upstream
Forwarded: https://github.com/WebAssembly/wabt/issues/2831
X-Debbugs-Cc: carnil at debian.org, Debian Security Team <team at security.debian.org>
Hi,
The following vulnerability was published for wabt.
CVE-2026-90648[0]:
| wasm2c in WebAssembly wabt through 1.0.41 allows sandbox escape in
| some situations that primarily involve 32-bit platforms, aka a
| "table flip" attack. It does not check the return value of calloc()
| in wasm_rt_allocate_funcref_table() (wasm2c/wasm-rt-impl-
| tableops.inc). When the funcref table allocation fails, table->data
| is left NULL while table->size keeps the guest-declared element
| count; thus, bounds checks still pass and table element accesses
| resolve to absolute memory addresses (i *
| sizeof(wasm_rt_funcref_t)). This gives arbitrary read and write of
| host process memory and - via table.get, table.set, and
| call_indirect - arbitrary code execution, defeating the isolation
| that wasm2c exists to provide (a full sandbox escape). wasm2c is
| used as an in-process sandboxing boundary by RLBox and WasmBoxC,
| including in Firefox, which compiles the Graphite, Hunspell, Ogg,
| Expat, and Woff2 libraries via wasm2c to contain untrusted font,
| media, and XML input. Therefore, sandboxing in these applications is
| potentially affected. Exploitation requires the funcref table
| allocation to fail, for example under an address-space limit
| (RLIMIT_AS), on 32-bit hosts, with vm.overcommit_memory=2, or under
| memory pressure. On 64-bit Linux with default overcommit the
| allocation succeeds and the defect is not triggered. The wasm2c
| memory allocator aborts on calloc failure in the same runtime; the
| table allocator lacks this abort behavior. This was introduced in
| commit ab9e0b55 (PR #813).
If you fix the vulnerability please also make sure to include the
CVE (Common Vulnerabilities & Exposures) id in your changelog entry.
For further information see:
[0] https://security-tracker.debian.org/tracker/CVE-2026-90648
https://www.cve.org/CVERecord?id=CVE-2026-90648
[1] https://github.com/WebAssembly/wabt/issues/2831
[2] https://github.com/WebAssembly/wabt/issues/2854
[3] https://github.com/WebAssembly/wabt/commit/e197d0b7bd3fe426f5963ae540f4426a1d49e89f
Please adjust the affected versions in the BTS as needed.
Regards,
Salvatore
More information about the Pkg-javascript-devel
mailing list