What’s Vulnerable › Vulnerabilities
CVE-2026-54284: sqlparse: TokenList.__init__ materializes O(subtree) value per group, causing CPU DoS before depth/token caps trigger
- Severity: high (CVSS 8.7 v4.0)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.3% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-08-17 · updated 2026-10-23
- Weakness: CWE-407
Description
sqlparse is a non-validating SQL parser module for Python. Prior to 0.6.0, TokenList construction and string conversion in sqlparse/sql.py repeatedly flatten nested token subtrees constructed by group_parenthesis and group_case, causing quadratic CPU consumption through sqlparse.parse(), sqlparse.format(), and sqlparse.split() before depth and token limits terminate processing. 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/939b129e24c0ad5d51368b1aa72fffcaca76f06f
- https://github.com/andialbrecht/sqlparse/security/advisories/GHSA-pwgv-4x5q-6m9f
- https://github.com/andialbrecht/sqlparse/security/advisories/GHSA-pwgv-4x5q-6m9f
Get alerted when CVE-2026-54284 or the next vulnerability affects your stack