Java : Unsafe LDAP access control: anonymous bind
Classification
OWASP Top 10 2013 A1-Injection A4-Insecure Direct Object References A7-Missing Function Level Access Control OWASP Top 10 2017 A5-Broken Access Control OWASP Top 10 2021 A1-Broken Access Control OWASP ASVS Access Control Access Control Access Control Access Control Authentication Authentication Authentication PCI DSS 4.0 2.2.5 6.2.4 HIPAA §164.312 (a)(1) §164.312 (a)(2)(i) §164.312 (d) CWE CWE-90 CWE-284 CWE-287 CWE-862 CWE-1027 CWE-1030 CWE-1033 CWE/SANS Top 25 2011 CWE-862 CWE/SANS Top 25 2021 CWE-287 CWE-862Overview
In the absence of proper access control, LDAP query execution via anonymous bind may give an attacker unauthorized access to LDAP directories.
LDAP is an application-level protocol for accessing and maintaining distributed directory information services (X.500 directory service). If LDAP query is based on data from an untrusted source (e.g., user input) and the data do not pass validation, an attacker can modify the query and execute it with the application rights.
Anonymous bind is equivalent to the lack of authentication when executing LDAP-queries.