CVE-2026-49263: Capstone WASM `br_table` instruction-size truncation can cause no-progress disassembly and parser desynchronization
Capstone is a disassembly framework. Prior to version 6.0.0-Alpha9, Capstone's WebAssembly backend accepts attacker-controlled raw WASM instruction bytes through the public csdisasm() and csdisasmiter() APIs. For a large but well-formed brtable instruction, the WASM decoder accumulates the immediate length in a wider local variable but returns it through a uint16t instruction-size path. When the encoded instruction length is exactly 65,536 bytes, the size wraps to zero and csdisasm() can repeatedly decode the same instruction without advancing. For larger lengths, csdisasmiter() advances into the middle of the brtable payload and decodes target bytes as subsequent instructions. This is an availability and parser-integrity issue. Version 6.0.0-Alpha9 patches the issue.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
capstone (WebAssembly backend)to a version that resolves this vulnerability.Fixed in 6.0.0-Alpha9
Event History
Frequently Asked Questions
What is the severity of CVE-2026-49263?
The severity of CVE-2026-49263 is rated as risk 26.
How do I fix CVE-2026-49263?
To fix CVE-2026-49263, update to Capstone version 6.0.0-Alpha9 or later.
What is the vulnerability in CVE-2026-49263?
CVE-2026-49263 is due to `br_table` instruction-size truncation in Capstone's WebAssembly backend.
What can be exploited due to CVE-2026-49263?
CVE-2026-49263 allows attackers to cause no-progress disassembly and parser desynchronization.
Which APIs are affected in CVE-2026-49263?
The affected APIs in CVE-2026-49263 are `cs_disasm()` and `cs_disasm_iter()`.