CVE-2025-61911
October 10, 2025
python-ldap is a lightweight directory access protocol (LDAP) client API for Python. In versions prior to 3.4.5, the sanitization method "ldap.filter.escape_filter_chars" can be tricked to skip escaping of special characters when a crafted "list" or "dict" is supplied as the "assertion_value" parameter, and the non-default "escape_mode=1" is configured. The method "ldap.filter.escape_filter_chars" supports 3 different escaping modes. "escape_mode=0" (default) and "escape_mode=2" happen to raise exceptions when a "list" or "dict" object is supplied as the "assertion_value" parameter. However, "escape_mode=1" computes without performing adequate logic to ensure a fully escaped return value. If an application relies on the vulnerable method in the "python-ldap" library to escape untrusted user input, an attacker might be able to abuse the vulnerability to launch ldap injection attacks which could potentially disclose or manipulate ldap data meant to be inaccessible to them. Version 3.4.5 fixes the issue by adding a type check at the start of the "ldap.filter.escape_filter_chars" method to raise an exception when the supplied "assertion_value" parameter is not of type "str".
Affected Packages
python-ldap (PYTHON):
Affected version(s) >=2.3.13 <3.4.5Fix Suggestion:
Update to version 3.4.5Related ResourcesĀ (5)
Do you need more information?
Contact UsCVSS v4
Base Score:
5.5
Attack Vector
NETWORK
Attack Complexity
LOW
Attack Requirements
NONE
Privileges Required
NONE
User Interaction
NONE
Vulnerable System Confidentiality
LOW
Vulnerable System Integrity
LOW
Vulnerable System Availability
NONE
Subsequent System Confidentiality
NONE
Subsequent System Integrity
NONE
Subsequent System Availability
NONE
Exploit Maturity
POC
CVSS v3
Base Score:
6.5
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
NONE
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
LOW
Integrity
LOW
Availability
NONE
Weakness Type (CWE)
EPSS
Base Score:
0.03