Security advisory
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.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2024-21503
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 3 Nov 2026, 08:21 UTC · Revision 1
Source evidence
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.
osv:CVE-2024-21503
Complete source record
{
"id": "378f29c9cfd75b9b16e78827ba12fe8b8b2afb3c9cb22f9924032f74958fa3e6",
"url": "https://osv.dev/vulnerability/CVE-2024-21503",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2024-21503",
"summary": "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.",
"evidence": "osv:CVE-2024-21503",
"products": [],
"severity": "medium",
"structured": {
"id": "CVE-2024-21503",
"aliases": [
"CVE-2024-21503",
"GHSA-fj7x-q9j7-g6q6",
"PYSEC-2024-48"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L/E:P"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/psf/black",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "552baf822992936134cbd31a38f69c8cfe7c0f05"
},
{
"fixed": "f00093672628d212b8965a8993cee8bedf5fe9b8"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "24.3.0"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"fixed": "552baf822992936134cbd31a38f69c8cfe7c0f05"
}
],
"source": "REFERENCES_TAG",
"original_tag": "24.3.0"
},
{
"range": [
{
"fixed": "f00093672628d212b8965a8993cee8bedf5fe9b8"
}
],
"source": "REFERENCES_COMMIT"
}
]
}
}
],
"versions": [
"24.2.0",
"24.1.1",
"24.1.0",
"23.12.1",
"23.12.0",
"23.11.0",
"23.10.1",
"23.10.0",
"23.9.1",
"23.9.0",
"23.7.0",
"23.3.0",
"23.1.0",
"22.12.0",
"22.10.0",
"22.8.0",
"22.6.0",
"22.3.0",
"22.1.0",
"21.12b0",
"21.11b1",
"21.11b0",
"21.10b0",
"21.9b0",
"21.8b0",
"21.7b0",
"21.6b0",
"21.5b2",
"21.5b1",
"21.5b0",
"21.4b2",
"21.4b1",
"21.4b0",
"20.8b1",
"20.8b0",
"19.10b0",
"19.3b0",
"18.9b0",
"18.6b4",
"18.6b3",
"18.6b2",
"18.6b1",
"18.6b0",
"18.5b1",
"18.5b0",
"18.4a4",
"18.4a3",
"18.4a2",
"18.4a1",
"18.4a0",
"18.3a4",
"18.3a3",
"18.3a2",
"18.3a1",
"18.3a0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-21503.json"
}
}
],
"modified": "2026-10-28T02:30:27.173756582Z",
"provider": "osv",
"references": [
"https://github.com/psf/black/releases/tag/24.3.0",
"https://security.snyk.io/vuln/SNYK-PYTHON-BLACK-6256273",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/21xxx/CVE-2024-21503.json",
"https://nvd.nist.gov/vuln/detail/CVE-2024-21503",
"https://github.com/psf/black/commit/f00093672628d212b8965a8993cee8bedf5fe9b8"
],
"provider_metadata": {
"cwe_ids": [
"CWE-1333"
],
"cna_assigner": "snyk",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/21xxx/CVE-2024-21503.json"
}
},
"related_cves": [
{
"value": "CVE-2024-21503",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 493776,
"published_at": "2024-03-19T05:00:01.474+00:00"
}