Skip to content

Black vulnerable to Regular Expression Denial of Service (ReDoS)

Moderate severity GitHub Reviewed Published Mar 19, 2024 to the GitHub Advisory Database • Updated Jul 3, 2024

Package

pip black (pip)

Affected versions

>= 0, < 24.3.0

Patched versions

24.3.0

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.

References

Published by the National Vulnerability Database Mar 19, 2024
Published to the GitHub Advisory Database Mar 19, 2024
Reviewed Mar 20, 2024
Last updated Jul 3, 2024

Severity

Moderate
5.3
/ 10

CVSS base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
Low
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L

CVE ID

CVE-2024-21503

GHSA ID

GHSA-fj7x-q9j7-g6q6

Source code

Loading Checking history
See something to contribute? Suggest improvements for this vulnerability.