A stack buffer overflow flaw was found in 389 Directory Server (389-ds-base). The getruvelementfromberval() function in repl5ruv.c copies digit characters from a network-supplied RUV berval into a fixed 16-byte stack buffer without bounds checking. A remote unauthenticated attacker can crash the LDAP server by sending a crafted StartNSDS50ReplicationRequest extended operation containing a replica ID field with more than 16 digit characters. The overflow occurs during payload decoding, before any authorization check. Stack protectors limit impact to denial of service.
{
"binaries": [
{
"binary_name": "389-ds",
"binary_version": "2.0.15-1ubuntu2"
},
{
"binary_name": "389-ds-base",
"binary_version": "2.0.15-1ubuntu2"
},
{
"binary_version": "2.0.15-1ubuntu2",
"binary_name": "389-ds-base-libs"
},
{
"binary_name": "cockpit-389-ds",
"binary_version": "2.0.15-1ubuntu2"
},
{
"binary_name": "python3-lib389",
"binary_version": "2.0.15-1ubuntu2"
}
]
}{
"binaries": [
{
"binary_version": "2.4.5+dfsg1-1",
"binary_name": "389-ds"
},
{
"binary_name": "389-ds-base",
"binary_version": "2.4.5+dfsg1-1"
},
{
"binary_name": "389-ds-base-libs",
"binary_version": "2.4.5+dfsg1-1"
},
{
"binary_version": "2.4.5+dfsg1-1",
"binary_name": "cockpit-389-ds"
},
{
"binary_name": "python3-lib389",
"binary_version": "2.4.5+dfsg1-1"
}
]
}{
"binaries": [
{
"binary_name": "389-ds",
"binary_version": "3.1.2+vendor1-2"
},
{
"binary_version": "3.1.2+vendor1-2",
"binary_name": "389-ds-base"
},
{
"binary_version": "3.1.2+vendor1-2",
"binary_name": "389-ds-base-libs"
},
{
"binary_name": "cockpit-389-ds",
"binary_version": "3.1.2+vendor1-2"
},
{
"binary_name": "python3-lib389",
"binary_version": "3.1.2+vendor1-2"
}
]
}{
"binaries": [
{
"binary_version": "1.3.7.10-1ubuntu1+esm1",
"binary_name": "389-ds"
},
{
"binary_name": "389-ds-base",
"binary_version": "1.3.7.10-1ubuntu1+esm1"
},
{
"binary_version": "1.3.7.10-1ubuntu1+esm1",
"binary_name": "389-ds-base-libs"
},
{
"binary_version": "1.3.7.10-1ubuntu1+esm1",
"binary_name": "python3-dirsrvtests"
},
{
"binary_name": "python3-lib389",
"binary_version": "1.3.7.10-1ubuntu1+esm1"
}
]
}{
"binaries": [
{
"binary_name": "389-ds",
"binary_version": "1.4.3.6-2ubuntu0.1~esm1"
},
{
"binary_name": "389-ds-base",
"binary_version": "1.4.3.6-2ubuntu0.1~esm1"
},
{
"binary_version": "1.4.3.6-2ubuntu0.1~esm1",
"binary_name": "389-ds-base-libs"
},
{
"binary_name": "cockpit-389-ds",
"binary_version": "1.4.3.6-2ubuntu0.1~esm1"
},
{
"binary_name": "python3-lib389",
"binary_version": "1.4.3.6-2ubuntu0.1~esm1"
}
]
}