Internet Bug Bounty · Report #2939077
CVE-2024-56374 Potential denial-of-service in IPv6 validation
Summary
CVE-2024-56374: Potential denial-of-service vulnerability in IPv6 validation
Lack of upper bound limit enforcement in strings passed when performing IPv6 validation could lead to a potential denial-of-service attack. The undocumented and private functions clean_ipv6_address and is_valid_ipv6_address were vulnerable, as was the django.forms.GenericIPAddressField form field, which has now been updated to define a max_length of 39 characters.
The django.db.models.GenericIPAddressField model field was not affected.
How it was found
Hi IBB :)
in Django i found a potential Dos in IPv6 validation.
Due to Lack of upper bound limit enforcement in strings passed in IPv6 validation(is_valid_ipv6_address,clean_ipv6_address methods) ,when a large malformed string with repeatable : characters like, abcd:abcd:abcd:..... is passed that cause huge resource consumption and slower processing which results in denial-of-service attack .
you can see my cve (CVE-2024-56374) with Security Advisory here: https://www.djangoproject.com/weblog/2025/jan/14/security-releases/
Impact
With large malformed string passed for IPv6 validation can perform denial-of-service attack.