CVE-2026-55893 PUBLISHED

Capstone SH disassembler `set_reg_n` heap buffer overflow via crafted SH2A FPU bytecode

Assigner: GitHub_M
Reserved: 17.06.2026 Published: 20.08.2026 Updated: 20.08.2026

Capstone is a disassembly framework. In 6.0.0-Alpha9 and earlier, Capstone's arch/SH/SHDisassembler.c SH floating-point decoders such as opFADD, opFMUL, and opFSUB call set_reg() and set_reg_n() using sh_info.op.op_count without checking the fixed-size operands[] array. Repeated crafted instructions processed through cs_disasm_iter() or cs_disasm() with CS_ARCH_SH, CS_MODE_SH2A or CS_MODE_SH4A, CS_MODE_SHFPU, and CS_OPT_DETAIL can increment the operand count beyond the 176-byte sh_info allocation and perform a four-byte heap buffer overflow write. The corruption can crash the process and may enable code execution depending on heap layout. This issue is fixed in version 6.0.0-Alpha10.

Metrics

CVSS Vector: CVSS:4.0/AV:L/AC:H/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
CVSS Score: 7.3

Product Status

Vendor capstone-engine
Product capstone
Versions
  • Version < 6.0.0-Alpha10 is affected

References

Problem Types

  • CWE-122: Heap-based Buffer Overflow CWE