Описание
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.
Отчет
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.
Меры по смягчению последствий
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.
Затронутые пакеты
| Платформа | Пакет | Состояние | Рекомендация | Релиз |
|---|---|---|---|---|
| Red Hat Directory Server 11 | redhat-ds:11/389-ds-base | Not affected | ||
| Red Hat Directory Server 12 | redhat-ds:12/389-ds-base | Not affected | ||
| Red Hat Directory Server 13 | 389-ds-base | Fix deferred | ||
| Red Hat Enterprise Linux 10 | 389-ds-base | Fix deferred | ||
| Red Hat Enterprise Linux 6 | 389-ds-base | Not affected | ||
| Red Hat Enterprise Linux 7 | 389-ds-base | Not affected | ||
| Red Hat Enterprise Linux 8 | 389-ds:1.4/389-ds-base | Not affected | ||
| Red Hat Enterprise Linux 9 | 389-ds-base | Not affected |
Показывать по
Дополнительная информация
Статус:
EPSS
5.9 Medium
CVSS3
Связанные уязвимости
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.
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.
A flaw was found in 389-ds-base. The get_ldapmessage_controls_ext() fu ...
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.
EPSS
5.9 Medium
CVSS3