CVE-2026-18663
389-ds-base: 389-ds-base: pre-authentication double-free in get_ldapmessage_controls_ext() via critical Session Tracking control
Severity
ModerateRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · August 12, 2026
Updated · August 13, 2026
Description
A flaw was found in 389-ds-base. The get_ldapmessage_controls_ext() function frees the parsed controls array on the Session Tracking critical-control rejection path without clearing the SLAPI_REQCONTROLS pblock slot. Operation teardown then frees the same pointer again, causing a double-free. An unauthenticated remote attacker can trigger this with a single BIND request carrying a critical Session Tracking control, resulting in heap corruption and potential denial of service.
Statement
Red Hat rates this issue as Moderate severity primarily because the exploitation requires sending an unauthenticated BIND request with a critical Session Tracking control, but on RHEL 10 and RHDS 13 the ns-slapd process uses jemalloc, which absorbs the double-free without crashing. Live testing confirmed the error path is hit but the server continues running. Impact is limited to heap corruption; no information disclosure or privilege escalation has been demonstrated. Reliable denial of service only occurs on builds using the glibc allocator (upstream/Fedora), not on RHEL product builds. Only 389-ds-base 3.x is affected. Other versions are not affected as they lack the Session Tracking control feature.
CVSS score applicability
The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.
Mitigation
On builds that include upstream Issue 7389 (committed 2026-04-09, present in 389-ds-base-3.2 branch), administrators can add the Session Tracking control OID (1.3.6.1.4.1.21008.108.63.1) to the ds-ignored-control-criticality configuration attribute. This causes the server to ignore the criticality flag on this control, preventing the vulnerable rejection path from being reached.
Additionally, network-level restriction of access to the LDAP port (389/636) to trusted clients reduces exposure.
CVSS / CWE
CVSS 3.1 · 5.9CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
CWE-415 · Double Free