Skip to main content
← All vulnerabilities
CVE-2026-119379EUVD-2026-113790GHSA-6W9F-4X4X-X559

SQLite before 3.54.0 Heap Buffer Overflow via Session Extension sessionUpdateFind()

Only affects SQLite before 3.54.0 built with SQLITE_ENABLE_SESSION that applies changesets from untrusted sources. Fixed in 3.54.0.

Published
Last modified
published
Not listed in CISA KEV
Specific setups only
Fix
Fixed in 3.54.0
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: total

Summary

SQLite, a widely used embedded database engine, is affected when it is built with the session extension and version 3.54.0 or later is not in use. An attacker who supplies a specially crafted changeset could corrupt heap memory, which could crash the application or potentially allow further malicious behavior.

Summarized by anthropic/claude-haiku-5.5. Verify details against the original sources.

Read the original description

SQLite before 3.54.0 built with the session extension contains a heap buffer overflow vulnerability in sqlite3changeset_apply() that allows attackers to corrupt heap memory by supplying crafted changesets. Attackers can repeat a table name in a second changeset block with a larger column count, causing sessionUpdateFind() to memset past the undersized aUpdateMask allocation.

Timeline

  1. CVE published
  2. First seen by cve.now
  3. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: total

  4. Record last updated

Affected versions

  • SQLite SQLite

    fixed in 3.54.0

References 8

sqlite.org

GitHub · sqlite/sqlite

abraxaslabs.tech

vulncheck.com

FAQ

Questions about CVE-2026-119379

What does this mean?

The bug is a heap out-of-bounds write, which corrupts heap memory inside the library process. It is triggered by a crafted changeset passed to sqlite3changeset_apply() or related apply APIs.Source: sqlite.org

Am I affected, and how do I check?

Versions before 3.54.0 are affected, but only when the library is built with SQLITE_ENABLE_SESSION and the application passes changesets from an untrusted source to sqlite3changeset_apply() or related apply APIs. To check, look at the version reported by sqlite3 --version or sqlite3_libversion(), and at whether the build defines SQLITE_ENABLE_SESSION.Source: sqlite.org

What should I do about it?

Upgrade to SQLite 3.54.0 or later, which contains the fix.Source: sqlite.org

Is it being exploited?

It is not in CISA's Known Exploited Vulnerabilities catalog, and CISA's SSVC assessment does not mark exploitation as active. That does not mean it has not been attacked: vendors and researchers can report attacks before CISA lists them. No public exploit code is tracked.Source: cve.now feed data