CVE-2026-18651: 389-ds-base: 389-ds-base: sasl plain bind installs connection credentials before account-lock check, allowing continued access as a locked account
A flaw was found in 389 Directory Server (389-ds-base). In idssaslcheckbind(), on a successful SASLOK from the underlying Cyrus SASL library, the connection is marked SASL-complete and bind credentials are installed via bindcredentialssetnolock() before the account-lock check (slapicheckaccountlock()) is performed for non-root binds. If the subsequent lock check determines the account is locked (nsAccountLock: true), the bind is failed and reported to the client, but the already-installed SASL-complete flag and bind credentials are not reverted. A client that already knows the correct password for an account that has since been administratively locked can bind via SASL PLAIN, receive an "account locked" failure response, and continue using the same, already-authenticated TCP connection to perform further LDAP operations as that account -- defeating account lock as an access-revocation control. Setting nsslapd-close-on-failed-bind does not mitigate this. This finding was independently reported by two unrelated parties (OpenAI Security Research and Andrew Rukin of Arenadata) who converged on the identical root cause.
Other sources
A flaw was found in 389 Directory Server. During SASL PLAIN authentication, the server installs connection-level bind credentials before performing the account-lock check. If the account is subsequently found to be locked, the bind is reported as failed to the client, but the already-installed authenticated state on the connection is not reverted. A client that supplies valid credentials for an account that has been administratively locked can continue to use the same connection with that account's privileges, defeating account lock as an access-revocation control.
— MITRE
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2026-18651?
The severity of CVE-2026-18651 is medium, with a score of 5.4.
How do I fix CVE-2026-18651?
To address CVE-2026-18651, ensure you update the 389 Directory Server to the latest patched version.
What does CVE-2026-18651 affect?
CVE-2026-18651 affects the 389 Directory Server Project's 389-ds-base software.
What risk is associated with CVE-2026-18651?
CVE-2026-18651 has a risk score of 34, indicating a potential vulnerability in account locking mechanisms.
What is the primary issue described in CVE-2026-18651?
The primary issue in CVE-2026-18651 is that connection credentials are installed before the account-lock check is performed.