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 csdisasm/csdisasmiter memcpy more than 24 bytes into csinsn.bytes, causing a heap buffer overflow in the disassembly path. Commit cbef767ab33b82166d263895f24084b75b316df3 fixes the issue.
{
"binaries": [
{
"binary_name": "libcapstone-dev",
"binary_version": "3.0.4-5"
},
{
"binary_name": "libcapstone3",
"binary_version": "3.0.4-5"
},
{
"binary_name": "python-capstone",
"binary_version": "3.0.4-5"
},
{
"binary_name": "python3-capstone",
"binary_version": "3.0.4-5"
}
]
}{
"binaries": [
{
"binary_name": "capstone-tool",
"binary_version": "4.0.1+really+3.0.5-1build1"
},
{
"binary_name": "libcapstone-dev",
"binary_version": "4.0.1+really+3.0.5-1build1"
},
{
"binary_name": "libcapstone3",
"binary_version": "4.0.1+really+3.0.5-1build1"
},
{
"binary_name": "python-capstone",
"binary_version": "4.0.1+really+3.0.5-1build1"
},
{
"binary_name": "python3-capstone",
"binary_version": "4.0.1+really+3.0.5-1build1"
}
]
}{
"binaries": [
{
"binary_name": "capstone-tool",
"binary_version": "4.0.2-5"
},
{
"binary_name": "libcapstone-dev",
"binary_version": "4.0.2-5"
},
{
"binary_name": "libcapstone4",
"binary_version": "4.0.2-5"
},
{
"binary_name": "python3-capstone",
"binary_version": "4.0.2-5"
}
]
}{
"binaries": [
{
"binary_name": "capstone-tool",
"binary_version": "4.0.2-5.1build1"
},
{
"binary_name": "libcapstone-dev",
"binary_version": "4.0.2-5.1build1"
},
{
"binary_name": "libcapstone4",
"binary_version": "4.0.2-5.1build1"
},
{
"binary_name": "python3-capstone",
"binary_version": "4.0.2-5.1build1"
}
]
}{
"binaries": [
{
"binary_name": "capstone-tool",
"binary_version": "5.0.6-1"
},
{
"binary_name": "libcapstone-dev",
"binary_version": "5.0.6-1"
},
{
"binary_name": "libcapstone5",
"binary_version": "5.0.6-1"
},
{
"binary_name": "python3-capstone",
"binary_version": "5.0.6-1"
}
]
}