CVE-2026-41573
moderateAuthenticated LDAP Injection in OpenAM Prior to 16.1.1
OpenAM (Open Access Management) versions prior to 16.1.1 contain an LDAP injection flaw (CWE-90) in IdentityResourceV1.queryCollection(), which passes the _queryId parameter from the //{realm}/users REST endpoint to CrestQuery with escapeQueryId disabled, silently bypassing the protection added for CVE-2021-29156. The unescaped value is concatenated into an LDAP filter inside DJLDAPv3Repo.getFilter(), so any authenticated (low-privileged) user can supply LDAP metacharacters to manipulate the filter sent to the backing directory. This enables user/account enumeration and blind LDAP injection, letting an attacker infer directory contents and potentially extract sensitive user attributes through crafted queries. Organizations running OpenAM below 16.1.1 with the users query endpoint reachable to authenticated users are affected, and the issue is fixed in version 16.1.1. No public proof-of-concept exists and the flaw is not in CISA's KEV, so exploitation is currently none known.
What to do: Upgrade to OpenAM 16.1.1, which fixes the escapeQueryId bypass in the users queryCollection path. Until patched, restrict which authenticated principals can issue queries against //{realm}/users and monitor access logs for _queryId values containing LDAP metacharacters (parentheses, asterisks, backslashes), which would indicate enumeration or blind injection attempts. If you run a downstream fork of OpenAM rather than the upstream project, verify the maintainer has applied the equivalent fix, since the original CVE-2021-29156 hardening is insufficient on its own.
| Open Identity Platform Coalition (OpenAM open-source project) OpenAM (Open Access Management) | Prior to 16.1.1 (< 16.1.1) |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
Open Access Management (OpenAM) is an access management solution. Prior to 16.1.1, IdentityResourceV1.queryCollection() passes the _queryId parameter from /json/{realm}/users to CrestQuery with escapeQueryId disabled, bypassing protection added for CVE-2021-29156. The unescaped value reaches DJLDAPv3Repo.getFilter(), where it is concatenated into an LDAP filter, allowing an authenticated attacker to inject LDAP metacharacters for user enumeration and blind LDAP injection. This issue is fixed in version 16.1.1.
- Weakness
- CWE-90
- Vector
- CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
In the news0 stories
No ingested article mentions this CVE yet.