{"id":"CVE-2026-54914","summary":"WebAssembly Micro Runtime: Heap Buffer Overflow in WAMR WASI poll_oneoff Output Buffer","details":"WebAssembly Micro Runtime (WAMR) is a lightweight standalone WebAssembly (Wasm) runtime. Prior to 2.4.5, wasi_poll_oneoff in core/iwasm/libraries/libc-wasi/libc_wasi_wrapper.c validates the output pointer for only one wasi_event_t, while wasmtime_ssp_poll_oneoff in core/iwasm/libraries/libc-wasi/sandboxed-system-primitives/src/posix.c can write as many events as the guest-controlled nsubscriptions value. A crafted guest module can provide multiple subscriptions that produce events while positioning an output region large enough for only one event, causing a later out[nevents] write to cross the validated Wasm linear-memory boundary into adjacent host heap memory. The overwrite contains partly attacker-controlled event data and can reliably crash the host process, with further confidentiality or integrity consequences depending on heap layout. This issue is fixed in version 2.4.5.","aliases":["GHSA-wj3p-xhqm-pffc"],"modified":"2026-11-05T21:32:25.372551104Z","published":"2026-11-05T17:27:16.493Z","database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-122"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54914.json"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54914.json"},{"type":"FIX","url":"https://github.com/wasm-micro-runtime/wasm-micro-runtime/commit/1f98fb01d09b2ef5e49dc0be2e6006f962fd87f1"},{"type":"FIX","url":"https://github.com/wasm-micro-runtime/wasm-micro-runtime/commit/b49d10eac4176817305d60ea59d24bc69a53eb7b"},{"type":"WEB","url":"https://github.com/wasm-micro-runtime/wasm-micro-runtime/releases/tag/WAMR-2.4.5"},{"type":"ADVISORY","url":"https://github.com/wasm-micro-runtime/wasm-micro-runtime/security/advisories/GHSA-wj3p-xhqm-pffc"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54914"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/wasm-micro-runtime/wasm-micro-runtime","events":[{"introduced":"0"},{"fixed":"25bd7eb63e828e4bd242cc9b38d260b4b31c6605"},{"fixed":"1f98fb01d09b2ef5e49dc0be2e6006f962fd87f1"},{"fixed":"b49d10eac4176817305d60ea59d24bc69a53eb7b"}],"database_specific":{"extracted_events":[{"source":"AFFECTED_FIELD","strategy":"StringRangeExpression","range":[{"introduced":"0"},{"fixed":"2.4.5"}]},{"range":[{"fixed":"1f98fb01d09b2ef5e49dc0be2e6006f962fd87f1"}],"source":"REFERENCES_COMMIT"},{"source":"REFERENCES_COMMIT","range":[{"fixed":"b49d10eac4176817305d60ea59d24bc69a53eb7b"}]},{"source":"REFERENCES_TAG","original_tag":"WAMR-2.4.5","range":[{"fixed":"25bd7eb63e828e4bd242cc9b38d260b4b31c6605"}]}]}}],"versions":["WAMR-2.4.4","WAMR-2.4.3","WAMR-2.4.2","WAMR-2.4.1","WAMR-2.4.0","WAMR-2.3.1","WAMR-2.3.0","WAMR-2.2.0","WAMR-2.1.2","WAMR-2.1.1","WAMR-2.1.0","WAMR-2.0.0","WAMR-1.3.2","WAMR-1.3.1","WAMR-1.3.0","WAMR-1.2.3","WAMR-1.2.2","WAMR-1.2.1","WAMR-1.2.0","WAMR-1.1.2","WAMR-1.1.1","WAMR-1.1.0","WAMR-1.0.0","WAMR-05-18-2022","WAMR-01-18-2022","WAMR-12-30-2021","WAMR-08-10-2021","WAMR-04-15-2021","WAMR-03-25-2021","WAMR-01-29-2021","WAMR-09-29-2020","WAMR-09-08-2020","WAMR-07-10-2020","WAMR-06-15-2020","WAMR-04-15-2020","WAMR-03-30-2020","WAMR-03-19-2020","WAMR-03-05-2020","WAMR-02-27-2020","WAMR-02-18-2020","01-12-2020","tag-11-28-2019"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-54914.json"}}],"schema_version":"1.9.2","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:H/SC:N/SI:N/SA:N"}]}