Back

HIGH

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

Published Aug 20, 2026

Description

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.

Affected products

Remediation

No remediation recorded yet.

Metrics

Weaknesses (2)

References (10)

Change history (0)

No recorded changes yet.

Sources
CVE.org / MITRE
Status PUBLISHED
Assigner GitHub_M
Published Aug 20, 2026
Updated Aug 21, 2026
Reserved Jun 17, 2026
CISA Vulnrichment
Updated Aug 21, 2026
NVD
Status Deferred
Modified Sep 18, 2026
Red Hat
Severity Moderate
Public date Aug 20, 2026