CVE-2025-54998 Overview
CVE-2025-54998 is a user lockout bypass vulnerability in OpenBao, an open-source secrets management platform used to store and distribute credentials, certificates, and cryptographic keys. Affected versions 0.1.0 through 2.3.1 allow attackers to bypass the automatic user lockout mechanism in the Userpass and Lightweight Directory Access Protocol (LDAP) authentication backends. The root cause is an inconsistency in how user entity aliases are attributed between the pre-flight check and the full login request. The issue is fixed in OpenBao 2.3.2. This vulnerability is tracked under CWE-307: Improper Restriction of Excessive Authentication Attempts.
Critical Impact
Attackers can bypass built-in brute-force protections on OpenBao Userpass and LDAP endpoints, enabling sustained credential-guessing attacks against secrets management infrastructure.
Affected Products
- OpenBao versions 0.1.0 through 2.3.1 (Userpass authentication backend)
- OpenBao versions 0.1.0 through 2.3.1 (LDAP authentication backend)
- Downstream distributions bundling vulnerable OpenBao releases
Discovery Timeline
- 2025-08-09 - CVE-2025-54998 published to the National Vulnerability Database (NVD)
- 2026-06-17 - Last updated in NVD database
Technical Details for CVE-2025-54998
Vulnerability Analysis
OpenBao enforces automatic user lockouts to limit repeated failed authentication attempts against the Userpass and LDAP auth methods. The lockout counter is keyed to a user entity alias derived from the incoming credentials. The vulnerability arises because the alias computed during the pre-flight phase of a login request does not match the alias attributed during the full login evaluation. Attackers can exploit this mismatch to submit repeated failed authentication attempts without incrementing the lockout counter for the target account.
Root Cause
The defect is a logic flaw in alias attribution between two stages of the same login flow. Because the pre-flight and full-login paths generate different alias identifiers for the same input, the lockout tracker records failures against inconsistent keys. The threshold that would normally trigger user_lockout therefore never accumulates against the true target identity. The upstream fix aligns alias generation across both request phases and ships in release 2.3.2.
Attack Vector
The attack is network-reachable and requires no prior authentication or user interaction. An attacker with access to the OpenBao API can send crafted login requests to auth/userpass/login/<username> or the equivalent LDAP endpoint. By iterating over candidate passwords, the attacker performs a brute-force attack that would normally be halted after a small number of failures. The bypass restores the ability to conduct high-volume credential guessing against high-value secrets management infrastructure.
No public proof-of-concept exploit is currently available. See the GitHub Security Advisory GHSA-j3xv-7fxp-gfhx and the OpenBao patch commit for technical details of the fix.
Detection Methods for CVE-2025-54998
Indicators of Compromise
- High volumes of POST requests to /v1/auth/userpass/login/* or /v1/auth/ldap/login/* from a single source without a corresponding lockout event in audit logs.
- Repeated failed authentication events for the same username where the OpenBao user_lockout counter fails to advance as expected.
- Successful logins from unusual source IP addresses or geographies immediately following long sequences of failed attempts.
Detection Strategies
- Query OpenBao audit device logs for authentication failures grouped by username and correlate against expected lockout thresholds configured in user_lockout_config.
- Alert when the ratio of failed to successful logins per account exceeds normal baselines, regardless of whether OpenBao emitted a lockout event.
- Monitor for enumeration patterns such as sequential username attempts or dictionary-style password iteration against Userpass and LDAP endpoints.
Monitoring Recommendations
- Forward OpenBao audit logs to a centralized analytics platform and retain them long enough to reconstruct multi-hour brute-force campaigns.
- Track version metadata across OpenBao clusters to identify instances still running vulnerable releases 0.1.0 through 2.3.1.
- Instrument reverse proxies and API gateways in front of OpenBao to record request rates per source IP, per user, and per endpoint.
How to Mitigate CVE-2025-54998
Immediate Actions Required
- Upgrade all OpenBao instances to version 2.3.2 or later, which contains the alias attribution fix.
- Rotate any credentials for Userpass or LDAP accounts that may have been subjected to brute-force attempts during the vulnerability window.
- Review OpenBao audit logs for evidence of sustained failed-login activity against Userpass or LDAP endpoints.
Patch Information
The fix is delivered in OpenBao 2.3.2 and is available in the upstream patch commit. Related guidance is published in the HashiCorp Advisory HCSEC-2025-16, which covers the equivalent issue in HashiCorp Vault. Operators of both OpenBao and Vault should evaluate their exposure independently.
Workarounds
- Apply rate-limiting quotas on authentication endpoints using the OpenBao rate limit quotas API to cap request volume per source.
- Restrict network access to OpenBao API listeners so that only trusted management networks can reach auth/userpass/* and auth/ldap/* paths.
- Enforce strong password policies and prefer multi-factor authentication backends over static Userpass credentials where feasible.
# Example: apply a rate-limit quota to the userpass login endpoint
bao write sys/quotas/rate-limit/userpass-login \
path="auth/userpass/login" \
rate=10 \
interval="1m" \
block_interval="10m"
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

