CVE-2019-19588: Infinite Loop Vulnerability in validators Package
Summary
CVE-2019-19588: The validators package 0.12.2 through 0.12.5 for Python enters an infinite loop when validators.domain is called with a crafted domain string. Affects validators versions >= 0.12.2, < 0.12.6. Fixed in 0.12.6. How to fix ↓
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
The validators package is a Python library (available on PyPI) that provides a set of functions for validating various types of data, including domains, URLs, email addresses, and more. It is commonly used in Python applications to ensure the validity of user input and data. However, versions 0.12.2 through 0.12.5 of the validators package contain a vulnerability that can lead to an infinite loop when the validators.domain function is called with a crafted domain string.
Vulnerability Detail
The vulnerability in the validators package arises from a flaw in the validators.domain function. When a specially crafted domain string is passed to this function, it triggers an infinite loop, causing the application to hang indefinitely. This can be exploited by an attacker to cause a denial-of-service (DoS) condition, potentially impacting the availability of the affected application. The issue has been addressed in version 0.12.6 of the package.
How To Fix
Latest published version: 0.36.0 as of 23 Oct 2026
pip install --upgrade "validators==0.36.0"
Upgrading to it may include breaking changes; the version below is the minimum fixed release for this vulnerability.
If you need the minimum change
0.12.6
This is the first release that contains the fix.
pip install --upgrade "validators==0.12.6"
Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →
Conclusion
The validators package versions 0.12.2 through 0.12.5 for Python are vulnerable to an infinite loop issue when the validators.domain function is called with a crafted domain string. This can result in a denial-of-service condition. Users should upgrade to version 0.12.6 or later to address this vulnerability. For further support on vulnerability remediation, please contact DevNack.com.
See every vulnerability recorded for validators →
FAQ
The validators package is a Python library that provides functions for data validation, such as checking the validity of domains, URLs, email addresses, and more.
The vulnerability can lead to an infinite loop and cause a denial-of-service (DoS) condition, potentially affecting the availability of the affected application.
Versions 0.12.2 through 0.12.5 of the validators package are affected.
To fix the vulnerability, upgrade to version 0.12.6 or later of the validators package.
No, upgrading to the fixed version (0.12.6 or later) is the recommended solution.
References
Related vulnerabilities
Recent vulnerabilities recorded for validators.