What’s Vulnerable › Vulnerabilities
CVE-2026-84305: sqlparse: Reindentation of tuple lists causes near-cap quadratic CPU consumption
- Severity: medium (CVSS 5.1 v4.0)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-09-01 · updated 2026-09-09
- Weakness: CWE-407
Description
sqlparse is a non-validating SQL parser module for Python. Prior to 0.6.0, sqlparse.format(sql, reindent=True) and sqlformat --reindent route attacker-controlled parenthesized tuple lists through ReindentFilter._get_offset() in sqlparse/filters/reindent.py, where _flatten_up_to_token() repeatedly rebuilds and joins the statement prefix. Thousands of offset calculations walk an expanding token tree, producing quadratic CPU consumption for inputs that remain below MAX_GROUPING_TOKENS and causing request delays, reduced throughput, or worker starvation. This issue is fixed in version 0.6.0.
Affected products
- Pypi Sqlparse: before 0.6.0; 0.1.0, 0.1.1, 0.1.10, 0.1.11, 0.1.12, 0.1.13 (+32) — fixed in 0.6.0
- andialbrecht sqlparse: before 0.6.0
How to fix
Upgrade to a fixed version: Pypi Sqlparse 0.6.0. Check the vendor advisory for mitigations.
References
- https://github.com/andialbrecht/sqlparse/commit/a51df6d9e2d31b44be9adb6bc8732517db6bf96b
- https://github.com/andialbrecht/sqlparse/releases/tag/0.6.0
- https://github.com/andialbrecht/sqlparse/security/advisories/GHSA-cfqr-cjx5-5jcm
- https://github.com/andialbrecht/sqlparse/security/advisories/GHSA-cfqr-cjx5-5jcm
Get alerted when CVE-2026-84305 or the next vulnerability affects your stack