CVE-2024-3651: Denial of Service via Quadratic Complexity in kjd/idna
[potential DoS via resource consumption via specially crafted inputs to idna.encode()]
Other sources
Impact A specially crafted argument to the idna.encode() function could consume significant resources. This may lead to a denial-of-service.
Patches The function has been refined to reject such strings without the associated resource consumption in version 3.7.
Workarounds Domain names cannot exceed 253 characters in length, if this length limit is enforced prior to passing the domain to the idna.encode() function it should no longer consume significant resources. This is triggered by arbitrarily large inputs that would not occur in normal usage, but may be passed to the library assuming there is no preliminary input validation by the higher-level application.
References https://huntr.com/bounties/93d78d07-d791-4b39-a845-cbfabc44aadb
— GitHub
A specially crafted argument to the idna.encode() function could consume significant resources. This may lead to a denial-of-service.
Reference: https://github.com/kjd/idna/security/advisories/GHSA-jjg7-2v4v-x38h
— Red Hat
A vulnerability was identified in the kjd/idna library, specifically within the idna.encode() function, affecting version 3.6. The issue arises from the function's handling of crafted input strings, which can lead to quadratic complexity and consequently, a denial of service condition. This vulnerability is triggered by a crafted input that causes the idna.encode() function to process the input with considerable computational load, significantly increasing the processing time in a quadratic manner relative to the input size.
— NVD
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2024-3651?
CVE-2024-3651 has the potential to lead to a denial-of-service due to resource consumption.
How do I fix CVE-2024-3651?
To address CVE-2024-3651, update to the fixed version of the 'idna' library or the relevant packages as specified in the advisory.
Which software is affected by CVE-2024-3651?
CVE-2024-3651 affects specific versions of 'idna' and 'python-idna', as well as IBM MQ Operator and its corresponding container images.
What type of attack does CVE-2024-3651 facilitate?
CVE-2024-3651 facilitates a denial-of-service attack by consuming excessive resources through specially crafted inputs.
What are the recommended versions to mitigate CVE-2024-3651?
To mitigate CVE-2024-3651, it is recommended to use 'idna' version 3.7 or later, or the corresponding patched versions of 'python-idna' and IBM MQ products.