CVE-2024-21503
MEDIUM5.3EPSS 0.08%Black vulnerable to Regular Expression Denial of Service (ReDoS)
Published: 3/19/2024Modified: 4/28/2026
Description
Versions of the package black before 24.3.0 are vulnerable to Regular Expression Denial of Service (ReDoS) via the lines_with_leading_tabs_expanded function in the strings.py file. An attacker could exploit this vulnerability by crafting a malicious input that causes a denial of service. Exploiting this vulnerability is possible when running Black on untrusted input, or if you habitually put thousands of leading tab characters in your docstrings.
Affected packages (3)
- Debian/blackfrom 0
- PyPI/blackfrom 0, < 24.3.0
- PyPI/blackfrom 0, < f00093672628d212b8965a8993cee8bedf5fe9b8 | from 0, < 24.3.0
CVSS scores
| Source | Version | Severity | Vector |
|---|---|---|---|
| osv | CVSS 3.1 | MEDIUM5.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L |
References (7)
- ADVISORYhttps://nvd.nist.gov/vuln/detail/CVE-2024-21503
- ADVISORYhttps://security-tracker.debian.org/tracker/CVE-2024-21503
- PATCHhttps://github.com/psf/black
- WEBhttps://github.com/psf/black/commit/f00093672628d212b8965a8993cee8bedf5fe9b8
- WEBhttps://github.com/psf/black/releases/tag/24.3.0
- WEBhttps://github.com/pypa/advisory-database/tree/main/vulns/black/PYSEC-2024-48.yaml
- WEBhttps://security.snyk.io/vuln/SNYK-PYTHON-BLACK-6256273