Description
SQLite command-line shell through 3.54.1 contains a command injection vulnerability in the .recover command that emits attacker-planted dot-commands stored in sqlite_schema.sql values verbatim. Attackers can craft a database whose schema holds a valid CREATE statement followed by a .shell or .system line, executing OS commands when victims pipe .recover output into sqlite3.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
SQLite SQLite
Default version status: unaffected
0 to ≤ 3.54.1affected
pkg:github/sqlite/sqliteReferences
- https://github.com/sqlite/sqlite/blob/version-3.54.1/ext/recover/sqlite3recover.c#L1221-L1223 ↗
- https://github.com/sqlite/sqlite/blob/version-3.54.1/src/shell.c.in#L7877-L7891 ↗
- https://abraxaslabs.tech/research/sqlite-cli-recover ↗
- https://github.com/sqlite/sqlite ↗
- https://www.vulncheck.com/advisories/sqlite-cli-through-3.54.1-command-injection-via-recover-output ↗