CVE-2025-59089: Python-kdcproxy: remote dos via unbounded tcp upstream buffering
HASH(0x5604d82f1d08)
Other sources
If an attacker causes kdcproxy to connect to an attacker-controlled KDC server (e.g. through server-side request forgery), they can exploit the fact that kdcproxy does not enforce bounds on TCP response length to conduct a denial-of-service attack. While receiving the KDC's response, kdcproxy copies the entire buffered stream into a new buffer on each recv() call, even when the transfer is incomplete, causing excessive memory allocation and CPU usage. Additionally, kdcproxy accepts incoming response chunks as long as the received data length is not exactly equal to the length indicated in the response header, even when individual chunks or the total buffer exceed the maximum length of a Kerberos message. This allows an attacker to send unbounded data until the connection timeout is reached (approximately 12 seconds), exhausting server memory or CPU resources. Multiple concurrent requests can cause accept queue overflow, denying service to legitimate clients.
— MITRE
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2025-59089?
CVE-2025-59089 has been classified as a denial-of-service vulnerability.
How do I fix CVE-2025-59089?
To fix CVE-2025-59089, update kdcproxy to the latest version that addresses this vulnerability.
What causes CVE-2025-59089?
CVE-2025-59089 is caused by kdcproxy connecting to an attacker-controlled KDC server without enforcing TCP response length bounds.
Who is affected by CVE-2025-59089?
CVE-2025-59089 affects users of the Python kdcproxy software.
What impact does CVE-2025-59089 have?
CVE-2025-59089 can lead to denial-of-service attacks, making the kdcproxy service unavailable.