In radare2 through 3.1.3, the assemble function inside libr/asm/p/asmarmcs.c allows attackers to cause a denial-of-service (application crash via an rnumcalc out-of-bounds read) by crafting an arm assembly input because a loop uses an incorrect index in armass.c and certain length validation is missing in armass64.c, a related issue to CVE-2018-20459.
[
{
"id": "CVE-2018-20457-65313591",
"source": "https://github.com/radareorg/radare2/commit/e5c14c167b0dcf0a53d76bd50bacbbcc0dfc1ae7",
"signature_type": "Line",
"target": {
"file": "libr/asm/arch/arm/armass64.c"
},
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"234972124300723021303519189872586181159",
"64855739719150176419708370774937598661",
"126982576917966750042234182581912397903",
"2465101767988780529990207923766591025"
],
"threshold": 0.9
}
},
{
"id": "CVE-2018-20457-81cc582b",
"source": "https://github.com/radareorg/radare2/commit/e5c14c167b0dcf0a53d76bd50bacbbcc0dfc1ae7",
"signature_type": "Line",
"target": {
"file": "libr/asm/arch/arm/armass.c"
},
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"320504459856674577202378585621657567447",
"241052845637009396674950399335434319279",
"92424657880786021492995607119010819530",
"217390376035072865716445880018909325770"
],
"threshold": 0.9
}
},
{
"id": "CVE-2018-20457-84106391",
"source": "https://github.com/radareorg/radare2/commit/e5c14c167b0dcf0a53d76bd50bacbbcc0dfc1ae7",
"signature_type": "Function",
"target": {
"file": "libr/asm/arch/arm/armass64.c",
"function": "parseOperands"
},
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 3280.0,
"function_hash": "159900584179997407881165760870783466648"
}
}
]