{"id":"CVE-2024-21503","aliases":["ALPINE-CVE-2024-21503","DEBIAN-CVE-2024-21503","EUVD-2024-0019","GHSA-fj7x-q9j7-g6q6","PYSEC-2024-48","RHSA-2024:3781","ROOT-APP-PYPI-CVE-2024-21503","SUSE-SU-2024:2481-1","UBUNTU-CVE-2024-21503","openSUSE-SU-2024:13783-1","openSUSE-SU-2026:12001-1"],"status":"published","title":"Black vulnerable to Regular Expression Denial of Service (ReDoS)","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.\r\rExploiting this vulnerability is possible when running Black on untrusted input, or if you habitually put thousands of leading tab characters in your docstrings.","severity":{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L/E:P","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-12","score":0.00979,"percentile":0.62678,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-1333","CWE-75"],"published":"2024-03-19T05:00:01Z","modified":"2026-11-09T12:49:26Z","fixes":[{"ecosystem":"PyPI","package":"black","fixed_in":["24.3.0"],"sources":["ghsa","osv"]},{"ecosystem":"Alpine:v3.19","package":"black","fixed_in":["23.12.0-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.20","package":"black","fixed_in":["24.3.0-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.21","package":"black","fixed_in":["24.3.0-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.22","package":"black","fixed_in":["24.3.0-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.23","package":"black","fixed_in":["24.3.0-r0"],"sources":["osv"]},{"ecosystem":"Alpine:v3.24","package":"black","fixed_in":["24.3.0-r0"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"black","fixed_in":["24.4.0-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"black","fixed_in":["24.4.0-1"],"sources":["osv"]},{"ecosystem":"Root:PyPI","package":"rootio-black","fixed_in":["23.12.1+root.io.2","23.10.0+root.io.2","23.3.0+root.io.2","23.1a1+root.io.2","23.9.1+root.io.2","23.12.0+root.io.2","23.1.0+root.io.2","23.11.0+root.io.2","23.7.0+root.io.2","23.10.1+root.io.2","23.9.0+root.io.2"],"sources":["osv"]},{"ecosystem":"openSUSE:Leap 15.6","package":"python-black","fixed_in":["24.3.0-150400.9.8.1"],"sources":["osv"]},{"ecosystem":"openSUSE:Tumbleweed","package":"python-black","fixed_in":["26.5.1-1.3"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"24.3.0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.19","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"23.12.0-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.20","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"24.3.0-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.21","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"24.3.0-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.22","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"24.3.0-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.23","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"24.3.0-r0"}]}]},{"source":"osv","ecosystem":"Alpine:v3.24","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"24.3.0-r0"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["23.1.0-1","23.10.0-1","23.10.1-1","23.11.0-1","23.3.0-1","23.3.0-1~exp1","23.7.0-1","23.9.1-1","24.1.1-1","24.10.0-1","24.10.0-2","24.10.0-3","24.2.0-1","24.4.0-1","24.4.0-2","24.4.2-1","24.4.2-2","24.4.2-2~0exp0","24.8.0-1","25.1.0-0exp","25.1.0-1","25.1.0-2","25.1.0-3","25.11.0-1","25.12.0-1","25.12.0-2","25.9.0-1","26.1.0-1","26.10.0-1","26.10.0-2","26.10.1-1","26.3.1-1","26.5.1-1","26.5.1-2"]},{"source":"osv","ecosystem":"Debian:13","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"24.4.0-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"24.4.0-1"}]}]},{"source":"osv","ecosystem":"PyPI","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"24.3.0"}]}],"versions":["18.3a0","18.3a1","18.3a2","18.3a3","18.3a4","18.4a0","18.4a1","18.4a2","18.4a3","18.4a4","18.5b0","18.5b1","18.6b0","18.6b1","18.6b2","18.6b3","18.6b4","18.9b0","19.10b0","19.3b0","20.8b0","20.8b1","21.10b0","21.11b0","21.11b1","21.12b0","21.4b0","21.4b1","21.4b2","21.5b0","21.5b1","21.5b2","21.6b0","21.7b0","21.8b0","21.9b0","22.1.0","22.10.0","22.12.0","22.3.0","22.6.0","22.8.0","23.1.0","23.10.0","23.10.1","23.11.0","23.12.0","23.12.1","23.1a1","23.3.0","23.7.0","23.9.0","23.9.1","24.1.0","24.1.1","24.1a1","24.2.0"]},{"source":"osv","ecosystem":"PyPI","package":"black","ranges":[{"type":"GIT","events":[{"introduced":"0"},{"fixed":"f00093672628d212b8965a8993cee8bedf5fe9b8"}]},{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"24.3.0"}]}],"versions":["18.3a0","18.3a1","18.3a2","18.3a3","18.3a4","18.4a0","18.4a1","18.4a2","18.4a3","18.4a4","18.5b0","18.5b1","18.6b0","18.6b1","18.6b2","18.6b3","18.6b4","18.9b0","19.10b0","19.3b0","20.8b0","20.8b1","21.10b0","21.11b0","21.11b1","21.12b0","21.4b0","21.4b1","21.4b2","21.5b0","21.5b1","21.5b2","21.6b0","21.7b0","21.8b0","21.9b0","22.1.0","22.10.0","22.12.0","22.3.0","22.6.0","22.8.0","23.1.0","23.10.0","23.10.1","23.11.0","23.12.0","23.12.1","23.1a1","23.3.0","23.7.0","23.9.0","23.9.1","24.1.0","24.1.1","24.1a1","24.2.0"]},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"automation-controller-venv-tower","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:4.5.7-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"automation-controller-venv-tower","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:4.5.7-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el8","package":"receptor","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.4.8-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el8","package":"receptorctl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.4.8-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el8","package":"receptor","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.4.8-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el8","package":"receptorctl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.4.8-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"receptor","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.4.8-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"receptorctl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.4.8-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el9","package":"receptor","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.4.8-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el9","package":"receptorctl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.4.8-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el9","package":"receptor","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.4.8-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el9","package":"receptorctl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.4.8-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"receptor","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.4.8-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"receptorctl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.4.8-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el8","package":"python39-cryptography","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el8","package":"python39-cryptography-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el8","package":"python3x-cryptography","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el8","package":"python3x-cryptography-debugsource","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el8","package":"python39-cryptography","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el8","package":"python39-cryptography-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el8","package":"python3x-cryptography","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el8","package":"python3x-cryptography-debugsource","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-cryptography","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-cryptography-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-cryptography","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-cryptography-debugsource","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el9","package":"python-cryptography","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el9","package":"python-cryptography-debugsource","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el9","package":"python3-cryptography","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el9","package":"python3-cryptography-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el9","package":"python-cryptography","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el9","package":"python-cryptography-debugsource","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el9","package":"python3-cryptography","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el9","package":"python3-cryptography-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-cryptography","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-cryptography-debugsource","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-cryptography","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-cryptography-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:42.0.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-pillow","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:10.3.0-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-pillow-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:10.3.0-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-pillow","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:10.3.0-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-pillow-debugsource","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:10.3.0-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-pillow","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:10.3.0-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-pillow-debugsource","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:10.3.0-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-pillow","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:10.3.0-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-pillow-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:10.3.0-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-gunicorn","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.0.0-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-gunicorn","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.0.0-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-gunicorn","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.0.0-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-gunicorn","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.0.0-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el8","package":"python39-idna","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.7-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el8","package":"python3x-idna","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.7-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-idna","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.7-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-idna","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.7-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el9","package":"python-idna","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.7-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el9","package":"python3-idna","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.7-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-idna","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.7-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-idna","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.7-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-pydantic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.10.15-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-pydantic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.10.15-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-pydantic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.10.15-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-pydantic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:1.10.15-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-sqlparse","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.5.0-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-sqlparse","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.5.0-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-sqlparse","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.5.0-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-sqlparse","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:0.5.0-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el8","package":"python39-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.8.0-2.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el8","package":"python3x-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.8.0-2.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el8","package":"python39-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.8.0-2.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el8","package":"python3x-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.8.0-2.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.8.0-2.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.8.0-2.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el9","package":"python-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.8.0-2.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el9","package":"python3-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.8.0-2.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el9","package":"python-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.8.0-2.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el9","package":"python3-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.8.0-2.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.8.0-2.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:22.8.0-2.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-aiohttp","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.9.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-aiohttp-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.9.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-aiohttp","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.9.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-aiohttp-debugsource","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.9.5-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-aiohttp","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.9.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-aiohttp-debugsource","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.9.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-aiohttp","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.9.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-aiohttp-debuginfo","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.9.5-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"automation-hub","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:4.9.2-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-galaxy-ng","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:4.9.2-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-galaxy-ng","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:4.9.2-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"automation-hub","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:4.9.2-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-galaxy-ng","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:4.9.2-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-galaxy-ng","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:4.9.2-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-social-auth-app-django","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:5.4.1-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-social-auth-app-django","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:5.4.1-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-social-auth-app-django","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:5.4.1-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-social-auth-app-django","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:5.4.1-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el8","package":"python39-jinja2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.1.4-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el8","package":"python3x-jinja2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.1.4-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el8","package":"python39-jinja2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.1.4-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el8","package":"python3x-jinja2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.1.4-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-jinja2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.1.4-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-jinja2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.1.4-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el9","package":"python-jinja2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.1.4-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el9","package":"python3-jinja2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.1.4-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el9","package":"python-jinja2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.1.4-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_inside:2.4::el9","package":"python3-jinja2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.1.4-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-jinja2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.1.4-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-jinja2","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:3.1.4-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el8","package":"python39-requests","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.32.2-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el8","package":"python3x-requests","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.32.2-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python39-requests","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.32.2-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el8","package":"python3x-requests","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.32.2-1.el8ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el9","package":"python-requests","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.32.2-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform_developer:2.4::el9","package":"python3-requests","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.32.2-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python-requests","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.32.2-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Red Hat:ansible_automation_platform:2.4::el9","package":"python3-requests","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0:2.32.2-1.el9ap"}]}],"bundled":20},{"source":"osv","ecosystem":"Root:PyPI","package":"rootio-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"23.12.1+root.io.2"},{"fixed":"23.10.0+root.io.2"},{"fixed":"23.3.0+root.io.2"},{"fixed":"23.1a1+root.io.2"},{"fixed":"23.9.1+root.io.2"},{"fixed":"23.12.0+root.io.2"},{"fixed":"23.1.0+root.io.2"},{"fixed":"23.11.0+root.io.2"},{"fixed":"23.7.0+root.io.2"},{"fixed":"23.10.1+root.io.2"},{"fixed":"23.9.0+root.io.2"}]}]},{"source":"osv","ecosystem":"openSUSE:Leap 15.6","package":"python-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"24.3.0-150400.9.8.1"}]}]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["19.3b0-1"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["20.8b1-4","21.4b2-3","21.10b0-1","21.12b0-1"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["23.7.0-1","23.10.1-1","23.11.0-1","24.2.0-1ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["25.1.0-2","25.1.0-3"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["26.3.1-1","26.5.1-1"]},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"python-black","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"26.5.1-1.3"}]}]}],"products":[{"vendor":"psf","product":"black"},{"vendor":"python_software_foundation","product":"black"}],"references":[{"url":"https://security.snyk.io/vuln/SNYK-PYTHON-BLACK-6256273","tags":["x_transferred","web","article","report"]},{"url":"https://github.com/psf/black/releases/tag/24.3.0","tags":["x_transferred","web","article","report"]},{"url":"https://github.com/psf/black/commit/f00093672628d212b8965a8993cee8bedf5fe9b8","tags":["x_transferred","fix","web","article","report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-21503","tags":["advisory"]},{"url":"https://github.com/pypa/advisory-database/tree/main/vulns/black/PYSEC-2024-48.yaml","tags":["web"]},{"url":"https://github.com/advisories/GHSA-fj7x-q9j7-g6q6","tags":["advisory"]},{"url":"https://security.alpinelinux.org/vuln/CVE-2024-21503","tags":["advisory"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/21xxx/CVE-2024-21503.json","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2024-21503","tags":["advisory"]},{"url":"https://github.com/psf/black","tags":["package"]},{"url":"https://access.redhat.com/errata/RHSA-2024:3781","tags":["advisory"]},{"url":"https://access.redhat.com/security/updates/classification/#moderate","tags":["article"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2250765","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2255331","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2259479","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2266045","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2268017","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2268019","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2268273","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2269576","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2269617","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2270236","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2272563","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2274779","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2275106","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2275280","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2275989","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2277035","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2278038","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2278710","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2279476","tags":["report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2282114","tags":["report"]},{"url":"https://issues.redhat.com/browse/AAH-3111","tags":["article"]},{"url":"https://security.access.redhat.com/data/csaf/v2/advisories/2024/rhsa-2024_3781.json","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2023-5752","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2023-5752","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2023-5752","tags":["advisory"]},{"url":"https://github.com/pypa/pip/pull/12306","tags":["article"]},{"url":"https://mail.python.org/archives/list/security-announce@python.org/thread/F4PL35U6X4VVHZ5ILJU3PWUWN7H7LZXL/","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2023-45288","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2023-45288","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2023-45288","tags":["advisory"]},{"url":"https://nowotarski.info/http2-continuation-flood/","tags":["article"]},{"url":"https://pkg.go.dev/vuln/GO-2024-2687","tags":["advisory"]},{"url":"https://www.kb.cert.org/vuls/id/421644","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2023-45290","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2023-45290","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2023-45290","tags":["advisory"]},{"url":"http://www.openwall.com/lists/oss-security/2024/03/08/4","tags":["article"]},{"url":"https://go.dev/cl/569341","tags":["article"]},{"url":"https://go.dev/issue/65383","tags":["article"]},{"url":"https://groups.google.com/g/golang-announce/c/5pwGVUPoMbg","tags":["article"]},{"url":"https://pkg.go.dev/vuln/GO-2024-2599","tags":["advisory"]},{"url":"https://security.netapp.com/advisory/ntap-20240329-0004","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2023-49083","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2023-49083","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2023-49083","tags":["advisory"]},{"url":"https://github.com/pyca/cryptography/commit/f09c261ca10a31fe41b1262306db7f8f1da0e48a","tags":["article"]},{"url":"https://github.com/pyca/cryptography/pull/9926","tags":["article"]},{"url":"https://github.com/pyca/cryptography/security/advisories/GHSA-jfhm-5ghh-2f97","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2023-50447","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2023-50447","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2023-50447","tags":["advisory"]},{"url":"http://www.openwall.com/lists/oss-security/2024/01/20/1","tags":["article"]},{"url":"https://devhub.checkmarx.com/cve-details/CVE-2023-50447/","tags":["article"]},{"url":"https://duartecsantos.github.io/2023-01-02-CVE-2023-50447/","tags":["article"]},{"url":"https://github.com/python-pillow/Pillow/releases","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-1135","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-1135","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-1135","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-w3h3-4rj7-4ph4","tags":["advisory"]},{"url":"https://github.com/benoitc/gunicorn/commit/ac29c9b0a758d21f1e0fb3b3457239e523fa9f1d","tags":["article"]},{"url":"https://huntr.com/bounties/22158e34-cfd5-41ad-97e0-a780773d96c1","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-3651","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-3651","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-3651","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-3772","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-3772","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-3772","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-4340","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-4340","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-4340","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-2m57-hf25-phgg","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-21503","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-21503","tags":["advisory","report"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-24783","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-24783","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-24783","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-3q2c-pvp5-3cqp","tags":["advisory"]},{"url":"https://go.dev/cl/569339","tags":["article"]},{"url":"https://go.dev/issue/65390","tags":["article"]},{"url":"https://pkg.go.dev/vuln/GO-2024-2598","tags":["advisory"]},{"url":"https://security.netapp.com/advisory/ntap-20240329-0005","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-26130","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-26130","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-26130","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-27306","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-27306","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-27306","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-27351","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-27351","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-27351","tags":["advisory"]},{"url":"https://www.djangoproject.com/weblog/2024/mar/04/security-releases/","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-28219","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-28219","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-28219","tags":["advisory"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-28849","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-28849","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-28849","tags":["advisory"]},{"url":"https://github.com/follow-redirects/follow-redirects/security/advisories/GHSA-cxjh-pqwp-8mfp","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-30251","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-30251","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-30251","tags":["advisory"]},{"url":"https://github.com/aio-libs/aiohttp/security/advisories/GHSA-5m98-qgg9-wh84","tags":["article"]},{"url":"https://www.openwall.com/lists/oss-security/2024/05/02/4","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-32879","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-32879","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-32879","tags":["advisory"]},{"url":"https://github.com/python-social-auth/social-app-django/security/advisories/GHSA-2gr8-3wc7-xhj3","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-34064","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-34064","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-34064","tags":["advisory"]},{"url":"https://github.com/pallets/jinja/security/advisories/GHSA-h75v-3vvj-5mfj","tags":["article"]},{"url":"https://access.redhat.com/security/cve/CVE-2024-35195","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-35195","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-35195","tags":["advisory"]},{"url":"https://github.com/psf/requests/security/advisories/GHSA-9wx4-h78v-vm56","tags":["article"]},{"url":"https://www.suse.com/support/update/announcement/2024/suse-su-20242481-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1221530","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2024-21503","tags":["web"]},{"url":"https://ubuntu.com/security/CVE-2024-21503","tags":["report"]},{"url":"","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2024-21503","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.\r\rExploiting this vulnerability is possible when running Black on untrusted input, or if you habitually put thousands of leading tab characters in your docstrings.","status":"published","published":"2024-03-19T05:00:01.474Z","modified":"2024-08-01T22:20:40.916Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L/E:P","level":"medium","assessor":"cna"}],"cwes":["CWE-1333","CWE-75"],"updated_at":"2026-11-02T14:34:04.681315Z"}],"euvd":[{"id":"EUVD-2024-0019","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.\r\rExploiting this vulnerability is possible when running Black on untrusted input, or if you habitually put thousands of leading tab characters in your docstrings.","status":"published","published":"2024-03-19T05:00:01Z","modified":"2024-08-01T22:20:40Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L/E:P","level":"medium"}],"updated_at":"2026-11-03T03:50:29.983832Z"}],"ghsa":[{"id":"GHSA-fj7x-q9j7-g6q6","title":"Black vulnerable to Regular Expression Denial of Service (ReDoS)","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.\n\nExploiting this vulnerability is possible when running Black on untrusted input, or if you habitually put thousands of leading tab characters in your docstrings.","status":"published","published":"2024-03-19T06:30:52Z","modified":"2024-07-03T21:24:52Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","level":"medium"}],"cwes":["CWE-75","CWE-1333"],"updated_at":"2026-11-02T14:37:55.455438Z"}],"nvd":[{"id":"CVE-2024-21503","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.\r\rExploiting this vulnerability is possible when running Black on untrusted input, or if you habitually put thousands of leading tab characters in your docstrings.","status":"published","published":"2024-03-19T05:15:09.447Z","modified":"2026-06-17T07:09:37.93Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","level":"medium","assessor":"secondary"}],"cwes":["CWE-1333","CWE-75"],"updated_at":"2026-11-02T14:09:41.654534Z"}],"osv":[{"id":"ALPINE-CVE-2024-21503","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.\r\rExploiting this vulnerability is possible when running Black on untrusted input, or if you habitually put thousands of leading tab characters in your docstrings.","status":"published","published":"2024-03-19T05:15:09.447Z","modified":"2026-11-03T06:32:59.686203061Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","level":"medium"}],"updated_at":"2026-11-03T07:16:09.603409Z"},{"id":"CVE-2024-21503","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.\r\rExploiting this vulnerability is possible when running Black on untrusted input, or if you habitually put thousands of leading tab characters in your docstrings.","status":"published","published":"2024-03-19T05:00:01.474Z","modified":"2026-10-28T02:30:27.173756582Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L/E:P","level":"medium"}],"cwes":["CWE-1333"],"updated_at":"2026-11-02T15:44:38.577405Z"},{"id":"DEBIAN-CVE-2024-21503","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.\r\rExploiting this vulnerability is possible when running Black on untrusted input, or if you habitually put thousands of leading tab characters in your docstrings.","status":"published","published":"2024-03-19T05:15:09.447Z","modified":"2026-11-02T12:00:57.426021542Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","level":"medium"}],"updated_at":"2026-11-02T15:45:41.849198Z"},{"id":"GHSA-fj7x-q9j7-g6q6","title":"Black vulnerable to Regular Expression Denial of Service (ReDoS)","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.\n\nExploiting this vulnerability is possible when running Black on untrusted input, or if you habitually put thousands of leading tab characters in your docstrings.","status":"published","published":"2024-03-19T06:30:52Z","modified":"2026-09-10T03:50:10.486429507Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","level":"medium"}],"cwes":["CWE-1333","CWE-75"],"updated_at":"2026-11-02T15:46:46.39441Z"},{"id":"RHSA-2024:3781","title":"Red Hat Security Advisory: Red Hat Ansible Automation Platform 2.4 Product Security and Bug Fix Update","status":"published","published":"2024-10-02T11:01:59Z","modified":"2026-10-17T10:03:21Z","cvss":[{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:53:13.30378Z"},{"id":"UBUNTU-CVE-2024-21503","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.","status":"published","published":"2024-03-19T05:15:00Z","modified":"2026-11-09T12:49:26.513227085Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","level":"medium"}],"updated_at":"2026-11-09T13:27:42.046613Z"},{"id":"openSUSE-SU-2024:13783-1","title":"python310-black-24.3.0-1.1 on GA media","description":"These are all security issues fixed in the python310-black-24.3.0-1.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2024-06-15T00:00:00Z","modified":"2026-02-04T03:28:52.045212Z","updated_at":"2026-11-02T16:58:36.327643Z"},{"id":"openSUSE-SU-2026:12001-1","title":"python313-black-26.5.1-1.3 on GA media","description":"These are all security issues fixed in the python313-black-26.5.1-1.3 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2026-10-04T00:00:00Z","modified":"2026-10-05T10:15:55.496834483Z","updated_at":"2026-11-02T16:58:40.245664Z"},{"id":"PYSEC-2024-48","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.\r\rExploiting this vulnerability is possible when running Black on untrusted input, or if you habitually put thousands of leading tab characters in your docstrings.","status":"published","published":"2024-03-19T05:15:00Z","modified":"2026-06-10T17:00:37.560368446Z","updated_at":"2026-11-02T15:52:54.242332Z"},{"id":"ROOT-APP-PYPI-CVE-2024-21503","title":"CVE-2024-21503 in rootio-black - Patched by Root","description":"Root has patched CVE-2024-21503 in the rootio-black package for Root:PyPI. Multiple fixed versions available.","status":"published","published":"2026-07-17T11:30:25Z","modified":"2026-07-17T12:15:11.692776218Z","updated_at":"2026-11-02T15:53:27.940619Z"},{"id":"SUSE-SU-2024:2481-1","title":"Security update for python-black","description":"This update for python-black fixes the following issues:\n\nUpdated to version 24.3.0:\n\n- CVE-2024-21503: Fixed a performance downgrade on docstrings that\n  contain large numbers of leading tab characters (bsc#1221530).\n","status":"published","published":"2024-07-15T09:30:04Z","modified":"2026-02-04T03:01:59.6269Z","updated_at":"2026-11-02T15:53:55.136363Z"}]}}
