Capstone is a disassembly framework. In versions 6.0.0-Alpha5 and prior, Skipdata length is not bounds-checked, so a user-provided skipdata callback can make cs_disasm/cs_disasm_iter memcpy more than 24 bytes into cs_insn.bytes, causing a heap buffer overflow in the disassembly path. Commit cbef767ab33b82166d263895f24084b75b316df3 fixes the issue.
A heap overflow condition is a buffer overflow, where the buffer that can be overwritten is allocated in the heap portion of memory, generally meaning that the buffer was allocated using a routine such as malloc().
| Name | Vendor | Start Version | End Version |
|---|---|---|---|
| Capstone | Capstone-engine | * | 6.0.0 (excluding) |
| Capstone | Capstone-engine | 6.0.0-alpha1 (including) | 6.0.0-alpha1 (including) |
| Capstone | Capstone-engine | 6.0.0-alpha2 (including) | 6.0.0-alpha2 (including) |
| Capstone | Capstone-engine | 6.0.0-alpha3 (including) | 6.0.0-alpha3 (including) |
| Capstone | Capstone-engine | 6.0.0-alpha4 (including) | 6.0.0-alpha4 (including) |
| Capstone | Capstone-engine | 6.0.0-alpha5 (including) | 6.0.0-alpha5 (including) |
| Red Hat Enterprise Linux 10 | RedHat | capstone-0:5.0.1-7.el10_1 | * |
| Red Hat Enterprise Linux 10.0 Extended Update Support | RedHat | capstone-0:5.0.1-7.el10_0 | * |
| Red Hat Enterprise Linux 9 | RedHat | capstone-0:4.0.2-11.el9_7 | * |
| Red Hat Enterprise Linux 9.0 Update Services for SAP Solutions | RedHat | capstone-0:4.0.2-5.el9_0 | * |
| Red Hat Enterprise Linux 9.2 Update Services for SAP Solutions | RedHat | capstone-0:4.0.2-11.el9_2 | * |
| Red Hat Enterprise Linux 9.4 Extended Update Support | RedHat | capstone-0:4.0.2-11.el9_4 | * |
| Red Hat Enterprise Linux 9.6 Extended Update Support | RedHat | capstone-0:4.0.2-11.el9_6 | * |
| Red Hat Hardened Images | RedHat | capstone-main-5.0.7-0.1.hum1 | * |
| Capstone | Ubuntu | esm-apps/xenial | * |
| Capstone | Ubuntu | plucky | * |
| Capstone | Ubuntu | questing | * |