CVE-2026-44304 Overview
CVE-2026-44304 is an LDAP Injection vulnerability [CWE-90] in Netflix Lemur, an open-source tool that manages Transport Layer Security (TLS) certificate creation. The flaw resides in Lemur's Lightweight Directory Access Protocol (LDAP) authentication module at lemur/auth/ldap.py. The module constructs LDAP search filters using unsanitized user input through Python string interpolation. An authenticated LDAP user can inject filter metacharacters via the username field to manipulate group membership queries and escalate privileges to administrator. Versions prior to 1.9.0 are affected, and the issue is fixed in 1.9.0.
Critical Impact
Authenticated attackers can elevate privileges to administrator by injecting LDAP filter syntax into the username field, gaining full control over TLS certificate issuance workflows.
Affected Products
- Netflix Lemur versions prior to 1.9.0
- Lemur LDAP authentication module (lemur/auth/ldap.py)
- Deployments relying on LDAP-backed group membership for authorization
Discovery Timeline
- 2026-05-12 - CVE-2026-44304 published to NVD
- 2026-05-14 - Last updated in NVD database
Technical Details for CVE-2026-44304
Vulnerability Analysis
Lemur's LDAP authentication module builds LDAP search filters by interpolating the supplied username directly into the query string. LDAP filter syntax uses metacharacters such as *, (, ), &, |, and \ to express boolean logic and wildcard matching. When user-supplied content reaches the filter unescaped, an attacker rewrites filter semantics to alter the directory query.
In Lemur, the authorization flow queries LDAP for the group memberships associated with the authenticating user. By injecting filter syntax, an attacker forces the query to return groups they do not legitimately belong to, including administrative groups. Lemur then maps those groups to internal roles and grants administrator privileges.
Exploitation requires an existing authenticated LDAP account, which lowers the barrier compared to unauthenticated attacks but does not require any special role. Successful exploitation grants administrative control over certificate issuance, revocation, and key material.
Root Cause
The root cause is improper neutralization of special elements used in an LDAP query [CWE-90]. The module uses Python string interpolation to assemble filters instead of parameterized LDAP queries or escaping routines such as ldap.filter.escape_filter_chars. Any character with meaning in RFC 4515 filter syntax passes through unchanged.
Attack Vector
The attack vector is network-based and requires low-privileged authentication. An attacker submits a crafted username during login that includes LDAP filter metacharacters. The injected payload modifies the group membership lookup, causing the directory to return administrative groups for the attacker's session. Lemur applies the returned group set to the user's role assignment, completing the privilege escalation.
The vulnerability mechanism is documented in the GitHub Security Advisory GHSA-3r34-vq8m-39gh. No public proof-of-concept exploit is currently available, and the issue is not listed in the CISA Known Exploited Vulnerabilities catalog.
Detection Methods for CVE-2026-44304
Indicators of Compromise
- LDAP authentication events containing filter metacharacters such as *, )(, |, or & inside the username field
- Unexpected administrator role assignments in Lemur audit logs immediately following a login event
- LDAP server query logs showing modified or unusually broad group membership filters originating from the Lemur service account
Detection Strategies
- Inspect Lemur application logs for authentication attempts where the submitted username contains characters outside the expected identifier character set
- Correlate LDAP directory query logs with Lemur login events to identify filter structures that diverge from the application's standard template
- Alert on privilege changes in Lemur where a user transitions to an administrative role without an administrator-initiated change
Monitoring Recommendations
- Forward Lemur and LDAP server logs to a centralized logging or SIEM platform for cross-source correlation
- Track issuance of high-value TLS certificates and revocation actions performed by accounts recently granted administrator rights
- Monitor outbound LDAP queries from Lemur for anomalous filter complexity or wildcard usage
How to Mitigate CVE-2026-44304
Immediate Actions Required
- Upgrade Lemur to version 1.9.0 or later, which contains the fix for the LDAP injection flaw
- Audit all Lemur administrator accounts and revoke any administrator role granted without a corresponding change-management record
- Rotate TLS certificates and private keys issued during any period where unauthorized administrative access cannot be ruled out
Patch Information
The vulnerability is fixed in Netflix Lemur 1.9.0. The patch updates lemur/auth/ldap.py to sanitize user-supplied input before incorporating it into LDAP search filters. Operators should review the GitHub Security Advisory GHSA-3r34-vq8m-39gh for full upgrade guidance.
Workarounds
- Disable LDAP-based authentication in Lemur and use an alternative authentication backend until the upgrade can be applied
- Restrict network access to the Lemur web interface so only trusted administrators can reach the login endpoint
- Enforce strict input validation at an upstream reverse proxy to reject usernames containing LDAP filter metacharacters
# Upgrade Lemur to the patched release
pip install --upgrade "lemur>=1.9.0"
# Verify the installed version
python -c "import lemur; print(lemur.__version__)"
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

