OpenDMARC through 1.3.2 and 1.4.x through 1.4.0-Beta1 has improper null termination in the function opendmarc_xml_parse that can result in a one-byte heap overflow in opendmarc_xml when parsing a specially crafted DMARC aggregate report. This can cause remote memory corruption when a '\0' byte overwrites the heap metadata of the next chunk and its PREV_INUSE flag.
{
"unresolved_ranges": [
{
"cpes": [
"cpe:2.3:o:debian:debian_linux:9.0:*:*:*:*:*:*:*"
],
"extracted_events": [
{
"range": [
{
"introduced": "9.0"
},
{
"last_affected": "9.0"
}
],
"source": "CPE_STRING"
}
],
"vendor_product": "debian:debian_linux"
},
{
"cpes": [
"cpe:2.3:o:fedoraproject:fedora:33:*:*:*:*:*:*:*",
"cpe:2.3:o:fedoraproject:fedora:34:*:*:*:*:*:*:*"
],
"extracted_events": [
{
"range": [
{
"introduced": "33"
},
{
"last_affected": "33"
},
{
"introduced": "34"
},
{
"last_affected": "34"
}
],
"source": "CPE_STRING"
}
],
"vendor_product": "fedoraproject:fedora"
}
]
}{
"extracted_events": [
{
"cpe": "cpe:2.3:a:trusteddomain:opendmarc:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"last_affected": "1.3.2"
}
],
"source": "CPE_RANGE"
},
{
"cpe": "cpe:2.3:a:trusteddomain:opendmarc:1.4.0:beta0:*:*:*:*:*:*",
"range": [
{
"introduced": "1.4.0-beta0"
},
{
"last_affected": "1.4.0-beta0"
}
],
"source": "CPE_STRING"
},
{
"cpe": "cpe:2.3:a:trusteddomain:opendmarc:1.4.0:beta1:*:*:*:*:*:*",
"range": [
{
"introduced": "1.4.0-beta1"
},
{
"last_affected": "1.4.0-beta1"
}
],
"source": "CPE_STRING"
}
]
}