CVE-2025-69261
Integer Overflow in WasmEdge Memory Component Causes Segmentation Fault
Publication date: 2025-12-30
Last updated on: 2026-03-09
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| linuxfoundation | wasmedge | to 0.16.0 (exc) |
| linuxfoundation | wasmedge | 0.16.0 |
| linuxfoundation | wasmedge | 0.16.0 |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-190 | The product performs a calculation that can produce an integer overflow or wraparound when the logic assumes that the resulting value will always be larger than the original value. This occurs when an integer value is incremented to a value that is too large to store in the associated representation. When this occurs, the value may become a very small or negative number. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability in WasmEdge is caused by an integer multiplication overflow in the function `MemoryInstance::getSpan()` within `memory.h`. Specifically, when calculating the byte size as `sizeof(T) * Size`, the multiplication can wrap around a 32-bit unsigned integer, resulting in an incorrect smaller value. This causes the subsequent memory bounds check to incorrectly allow out-of-bounds access, potentially leading to unsafe memory operations such as segmentation faults or memory corruption. [2]
How can this vulnerability impact me? :
The vulnerability can lead to out-of-bounds memory access in the WasmEdge runtime, which may cause segmentation faults or arbitrary memory corruption. This can result in crashes or potentially exploitable conditions within applications using WasmEdge, affecting their stability and security. [2]
How can this vulnerability be detected on my network or system? Can you suggest some commands?
This vulnerability can be detected by running a WASM module that triggers the integer wrap issue in WasmEdge's memory handling. Specifically, a minimal WASI program invoking __wasi_poll_oneoff() with a large timeout value (e.g., 0x50000000) compiled for wasm32-wasi can be used. Running this WASM module with the vulnerable WasmEdge runtime (version 0.16.0-alpha.1) will cause a segmentation fault in WasiPollOneoff(), indicating the presence of the vulnerability. There are no specific network commands provided, but testing with such a crafted WASM module on your system can reveal the issue. [2]
What immediate steps should I take to mitigate this vulnerability?
The immediate mitigation step is to upgrade WasmEdge to version 0.16.0-alpha.3 or later, where the vulnerability has been patched by refining the overflow detection in the getSpan() function to prevent integer wrap and out-of-bounds memory access. [1, 2]