Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify publicly reachable fabric-ca enrollment endpoint
-
DeliveryEnumerate valid LDAP usernames via directory or prior recon
-
ExploitCraft HTTP Basic Auth request with LDAP injection payload in username field
-
ExecutionUnescaped username alters uid search filter before password validation
-
PersistLDAP query resolves to victim account
-
ImpactEnrollment certificate issued under victim identity
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization LDAP query parameterization
MITRE ATT&CK
1 technique across 1 tactic: Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that fabric-ca be explicitly configured with an LDAP backend - the ldap configuration block in fabric-ca-server-config.yaml must reference an active LDAP server. The CA enrollment endpoint must be reachable by the attacker over the network. No credentials are required; the injection payload is carried in the username field of HTTP Basic Auth and takes effect before password validation. fabric-ca deployments using the default local SQLite or PostgreSQL identity stores are entirely unaffected regardless of network exposure. Meaningful exploitation also requires the attacker to know or enumerate a valid victim username in the LDAP directory in order to steer authentication toward a specific account. |
| Impact | No CVSS vector or EPSS score was supplied with this advisory, so quantitative risk signals are unavailable and must be inferred from the description and patch diff. The attack is network-accessible and requires no authentication, as injection occurs in the username field of HTTP Basic Auth before password validation - a materially dangerous pre-auth position. However, exploitation requires that fabric-ca be explicitly configured with an LDAP backend, a non-default operator decision, which substantially narrows the affected population. The primary impact is manipulation of LDAP authentication logic: an attacker can redirect the uid search filter to match a victim account, potentially enabling certificate issuance under a false identity. In Hyperledger Fabric's trust model, unauthorized certificate issuance carries chain-of-trust consequences that extend beyond the CA instance itself, elevating the effective integrity risk. No public exploit code and no CISA KEV listing have been identified, which reduces immediate urgency; however, any operator running an LDAP-backed fabric-ca should treat this as a near-term patch priority given the privileged role of a CA. EPSS data is absent, so exploitation probability cannot be independently quantified. |
| Exploit ScenarioDerived | An attacker with network access to a fabric-ca enrollment endpoint sends an HTTP Basic authentication request where the username field contains crafted LDAP filter syntax - for example, *)(uid=victim)(|(uid=* - which, when interpolated unescaped into the uid search filter, causes the LDAP directory to match an unintended entry. The manipulated filter resolves to the victim account before password validation runs, potentially allowing the attacker to redirect the enrollment flow and obtain a certificate bound to the victim's identity. No public proof-of-concept code has been identified, but the technique is well-understood and straightforward for anyone familiar with LDAP filter syntax. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 14, 2026
LDAP injection in Hyperledger fabric-ca allows unauthenticated network attackers to manipulate LDAP search filters at the CA enrollment endpoint before password validation occurs. Versions 1.5.20 and earlier are affected when the LDAP backend is configured; installations using the default local identity store are not exposed. No public exploit code has been identified at time of analysis and the vulnerability is not listed in the CISA KEV catalog, but a vendor-released patch is available in version 1.5.21.
RemediationAI
The primary remediation is upgrading fabric-ca to version 1.5.21, which introduces proper LDAP filter escaping via ldap.EscapeFilter() in the GetUser function. The patch commit is available at https://github.com/hyperledger/fabric-ca/commit/d379df823534d56dec0166a6da8f0415e3beee24 and the vendor advisory at https://github.com/hyperledger/fabric-ca/security/advisories/GHSA-xghw-p77p-3r7x. For operators who cannot immediately upgrade, the most effective compensating control is disabling the LDAP backend and switching to the local identity store, which eliminates the attack surface entirely but requires reconfiguring identity management workflows. An alternative interim measure is restricting network access to the CA enrollment endpoint via IP allowlist or firewall rule, which reduces exposure but does not remediate the underlying injection flaw. Operators not using an LDAP backend require no action.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in go, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Hyperledger fabric-ca (Go module pkg:go/github.com/hyperledger/fabric-ca) is the certificate authority component of the Hyperledger Fabric enterprise blockchain framework, responsible for issuing enrollment and transaction signing certificates. The vulnerability resides in lib/server/ldap/client.go in the GetUser function, which constructs an LDAP uid search filter by directly interpolating the raw HTTP Basic Auth username via fmt.Sprintf without sanitization. The root cause is CWE-90 (Improper Neutralization of Special Elements used in an LDAP Query): LDAP metacharacters such as *, (, ), and backslash alter the resulting filter logic. The patch introduced in version 1.5.21 applies ldap.EscapeFilter(username) before the username is substituted into the filter string, neutralizing all LDAP special characters. The commit also refactors the AdminConn field to use an interface type, enabling the new mock-based unit test suite that verifies escaping of wildcards, parentheses, and backslashes.
Know when LDAP gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
Network-accessible pre-auth endpoint (AV:N/PR:N); integrity rated High due to potential fraudulent certificate issuance from a CA; limited LDAP data exposure warrants C:L; no availability impact identified.
Primary rating from Vendor (https://github.com/hyperledger/fabric-ca).
CVSS VectorVendor: https://github.com/hyperledger/fabric-ca
Lifecycle Timeline
1DescriptionCVE.org
When fabric-ca is configured with an LDAP backend, the username from HTTP Basic authentication is included in an LDAP uid search filter without proper escaping. An unauthenticated attacker with network access to the CA enrollment endpoint could exploit this to perform LDAP injection before password validation, and potentially steer authentication attempts toward a victim account.
Recommendation
- All users of fabric-ca with an LDAP backend should update to a fixed version.
- For users not using an LDAP backend, no action is required.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.
The remoting module in Jenkins before 2.32 and LTS before 2.19.3 allows remote attackers to execute arbitrary code via a
In Joomla!. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable, no authentication required,
An issue was discovered on Accellion FTA devices before FTA_9_12_180. Rated critical severity (CVSS 9.8), this vulnerabi
Mastodon is a free, open-source social network server based on ActivityPub Mastodon allows configuration of LDAP for aut
Dolibarr 11.0.3 contains a persistent cross-site scripting vulnerability in LDAP synchronization settings that allows at
A reflected cross-site scripting (xss) vulnerability exists in the ldapUser functionality of MedDream PACS Premium 7.3.6
Authentication bypass in Apache Druid versions 0.17.0 through 35.x. Affects all versions prior to 36.0.0 when specific p
Arbitrary certificate disclosure in Apache CXF's XKMS server lets remote attackers abuse an LDAP injection flaw (CWE-90)
An issue was discovered in linqi before 1.4.0.1 on Windows. Rated critical severity (CVSS 9.8), this vulnerability is re
A vulnerability, which was classified as problematic, has been found in Jahastech NxFilter 4.3.2.5.jsp?actionFlag=test&i
An unauthenticated Apache Traffic Control Traffic Ops user can send a request with a specially-crafted username to the P
Authentication bypass in Open Identity Platform OpenAM Community Edition (through 16.0.6) lets an unauthenticated remote
Same technique Code Injection
View allVendor StatusVendor
SUSE
| Product | Status |
|---|---|
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
EUVD-2026-78835
GHSA-xghw-p77p-3r7x
NVD
CVE.org
EPSS
Exploit-DB