SQLite before 3.54.0 contains a stack exhaustion vulnerability that allows attackers to bypass the SQLITE_LIMIT_EXPR_DEPTH nesting limit because common table expressions are not counted against it. Attackers can supply a WITH clause chaining tens of thousands of CTEs, via plain SQL or a view in an untrusted database file, causing unbounded selectExpander() recursion that crashes the process.
Fix
Patch, vendor advisory and mitigation references on NVD 2
- https://sqlite.org/src/info/f54730871303e655 patch
- https://github.com/sqlite/sqlite/commit/e6ff280c839fdfc7418fd5add12e8f32702a17fb patch
Every line above is quoted from NVD, CISA, Microsoft, the vendor's own advisory or DISA; nothing is generated.
Change history 1
- First seenCVSS 6.8 · sqliteNVD modified 2026-10-30 11:30
Affected (CPE criteria) 0
NVD has not attached CPE configurations yet.
References 8
- https://sqlite.org/bugs/info/2026-10-04T04:58:58Z issue-tracking
- https://sqlite.org/src/info/f54730871303e655 patch
- https://github.com/sqlite/sqlite/commit/e6ff280c839fdfc7418fd5add12e8f32702a17fb patch
- https://github.com/sqlite/sqlite/blob/version-3.53.4/src/select.c#L5754 technical-description
- https://sqlite.org/releaselog/3_54_0.html release-notes
- https://abraxaslabs.tech/research/sqlite-cte-nest third-party-advisory
- https://github.com/sqlite/sqlite product
- https://www.vulncheck.com/advisories/sqlite-before-3.54.0-stack-exhaustion-via-cte-chain-in-selectexpander third-party-advisory