<Vulnerability name="CVE-2026-15722">
    <DocumentDistribution xml:lang="en">Copyright © 2012 Red Hat, Inc. All rights reserved.</DocumentDistribution>
    <ThreatSeverity>Important</ThreatSeverity>
    <PublicDate>2026-07-31T09:00:00</PublicDate>
    <Bugzilla id="2499961" url="https://bugzilla.redhat.com/show_bug.cgi?id=2499961" xml:lang="en:us">
389-ds-base: 389-ds-base: pre-authentication stack buffer overflow in get_ruvelement_from_berval() via unbounded replica ID parsing
    </Bugzilla>
    <CVSS3 status="draft">
        <CVSS3BaseScore>7.5</CVSS3BaseScore>
        <CVSS3ScoringVector>CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H</CVSS3ScoringVector>
    </CVSS3>
    <CWE>CWE-121</CWE>
    <Details xml:lang="en:us" source="Mitre">
A stack buffer overflow flaw was found in 389 Directory Server (389-ds-base). The get_ruvelement_from_berval() function in repl5_ruv.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.
    </Details>
    <Details xml:lang="en:us" source="Red Hat">
A stack buffer overflow flaw was found in 389 Directory Server (389-ds-base). The get_ruvelement_from_berval() function in repl5_ruv.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.
    </Details>
    <Statement xml:lang="en:us">
This flaw allows a remote unauthenticated attacker to crash the 389 Directory Server (ns-slapd) by sending a single crafted LDAP extended operation targeting the replication subsystem. The overflow is triggered during payload decoding, before the server checks whether the caller is authorized, so no credentials are needed on default configurations where anonymous access is enabled. The overflow data is limited to ASCII digit characters and a null byte. Stack protectors and ASLR prevent the overflow from being leveraged for code execution — the stack canary detects the corruption and aborts the process. The practical impact is therefore limited to denial of service. Customers who have restricted network access to the LDAP port to trusted replication partners, or who have disabled anonymous access by setting nsslapd-allow-anonymous-access to 'off' or 'rootdse', are not exposed to unauthenticated exploitation of this flaw.
    </Statement>
    <Acknowledgement xml:lang="en:us">
Red Hat would like to thank Sebastián Alba Vives for reporting this issue.
    </Acknowledgement>
    <Mitigation xml:lang="en:us">
Disable anonymous access by setting nsslapd-allow-anonymous-access to 'off' or 'rootdse' in cn=config. Alternatively, restrict network access to the LDAP port to trusted replication partners only using firewall rules.
    </Mitigation>
    <PackageState cpe="cpe:/a:redhat:directory_server:11">
        <ProductName>Red Hat Directory Server 11</ProductName>
        <FixState>Affected</FixState>
        <PackageName>redhat-ds:11/389-ds-base</PackageName>
    </PackageState>
    <PackageState cpe="cpe:/a:redhat:directory_server:12">
        <ProductName>Red Hat Directory Server 12</ProductName>
        <FixState>Affected</FixState>
        <PackageName>redhat-ds:12/389-ds-base</PackageName>
    </PackageState>
    <PackageState cpe="cpe:/a:redhat:directory_server:13">
        <ProductName>Red Hat Directory Server 13</ProductName>
        <FixState>Not affected</FixState>
        <PackageName>389-ds-base</PackageName>
    </PackageState>
    <PackageState cpe="cpe:/o:redhat:enterprise_linux:10">
        <ProductName>Red Hat Enterprise Linux 10</ProductName>
        <FixState>Affected</FixState>
        <PackageName>389-ds-base</PackageName>
    </PackageState>
    <PackageState cpe="cpe:/o:redhat:enterprise_linux:6">
        <ProductName>Red Hat Enterprise Linux 6</ProductName>
        <FixState>Out of support scope</FixState>
        <PackageName>389-ds-base</PackageName>
    </PackageState>
    <PackageState cpe="cpe:/o:redhat:enterprise_linux:7">
        <ProductName>Red Hat Enterprise Linux 7</ProductName>
        <FixState>Affected</FixState>
        <PackageName>389-ds-base</PackageName>
    </PackageState>
    <PackageState cpe="cpe:/o:redhat:enterprise_linux:8">
        <ProductName>Red Hat Enterprise Linux 8</ProductName>
        <FixState>Affected</FixState>
        <PackageName>389-ds:1.4/389-ds-base</PackageName>
    </PackageState>
    <PackageState cpe="cpe:/o:redhat:enterprise_linux:9">
        <ProductName>Red Hat Enterprise Linux 9</ProductName>
        <FixState>Affected</FixState>
        <PackageName>389-ds-base</PackageName>
    </PackageState>
    <References xml:lang="en:us">
https://www.cve.org/CVERecord?id=CVE-2026-15722
https://nvd.nist.gov/vuln/detail/CVE-2026-15722
    </References>
</Vulnerability>