OpenDMARC through 1.3.2 and 1.4.x through 1.4.0-Beta1 has improper null termination in the function opendmarcxmlparse that can result in a one-byte heap overflow in opendmarcxml 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 PREVINUSE flag.
{
"availability": "Available with Ubuntu Pro: https://ubuntu.com/pro",
"binaries": [
{
"binary_version": "1.3.1+dfsg-3ubuntu0.1~esm1",
"binary_name": "libopendmarc-dev"
},
{
"binary_version": "1.3.1+dfsg-3ubuntu0.1~esm1",
"binary_name": "libopendmarc2"
},
{
"binary_version": "1.3.1+dfsg-3ubuntu0.1~esm1",
"binary_name": "opendmarc"
},
{
"binary_version": "1.3.1+dfsg-3ubuntu0.1~esm1",
"binary_name": "rddmarc"
}
]
}
{
"availability": "No subscription required",
"binaries": [
{
"binary_version": "1.3.2-3ubuntu0.2",
"binary_name": "libopendmarc-dev"
},
{
"binary_version": "1.3.2-3ubuntu0.2",
"binary_name": "libopendmarc2"
},
{
"binary_version": "1.3.2-3ubuntu0.2",
"binary_name": "opendmarc"
},
{
"binary_version": "1.3.2-3ubuntu0.2",
"binary_name": "rddmarc"
}
]
}
{
"availability": "No subscription required",
"binaries": [
{
"binary_version": "1.3.2-7ubuntu0.1",
"binary_name": "libopendmarc-dev"
},
{
"binary_version": "1.3.2-7ubuntu0.1",
"binary_name": "libopendmarc2"
},
{
"binary_version": "1.3.2-7ubuntu0.1",
"binary_name": "opendmarc"
}
]
}