Vulnerability in Black
CVE-2024-21503
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.
Vulnerability class: ReDoS (Regular Expression Denial of Service)
EPSS: 0.010 (58.3th percentile) — read the EPSS interpretation.
CVSS v3 metric
CVSS v3 base score 5.3 (Medium). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L.
Affected products
- N/a Black — versions 0
Weakness classification (CWE)
Public proof-of-concept exploits
References
Frequently asked questions
- What is CVE-2024-21503?
- CVE-2024-21503 is a medium-severity vulnerability in Black, classified under Inefficient Regular Expression Complexity. CVSS score: 5.3/10. Published 2024-03-19.
- How severe is CVE-2024-21503?
- Medium severity. CVSS v3 base score is 5.3 out of 10.
- Is CVE-2024-21503 known to be exploited?
- 3 public proof-of-concept repositories are indexed. Not currently listed in the CISA KEV catalog.