CVE-2024-0232
Medium · 5.5CVSS
5.5
EPSS
0.4%
Published
Jan 16, 2024
CISA due date
—
Cloudanix analysis
A flaw in a common database tool can make programs crash when they receive certain bad data, briefly stopping services until they restart.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Denial Of Service
- Component
- Library
- Class
- Use After Free
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Heap use-after-free in jsonParseAddNodeArray() within sqlite3.c triggered by specially crafted JSON input, resulting in application crash and denial of service.
Why it matters to the business
Applications relying on SQLite may experience unexpected crashes and temporary loss of service when handling untrusted input, disrupting operations dependent on database functionality.
How an attack unfolds
A local attacker supplies malicious JSON content to a victim application that invokes SQLite's JSON parsing routines; the use-after-free condition is triggered during node array construction in jsonParseAddNodeArray, causing the process to crash.
How to fix it
Upgrade SQLite to commit 43fa051ec7c5a7d89e1f5f541a5cd34d53e07422 or a later fixed revision in all affected installations.
How to confirm the fix worked
Confirm the running SQLite version incorporates the referenced commit, then exercise JSON parsing paths with known trigger inputs to verify absence of crashes.
Typical attack path
- Craft malicious JSON payload designed to trigger the use-after-free in jsonParseAddNodeArray
- Deliver the payload to the target application via local input mechanisms
- Induce the application to parse the JSON using SQLite functions
- Trigger heap corruption leading to denial of service crash
How to detect it
Monitor process logs and crash dumps for segmentation faults or aborts occurring during SQLite JSON parsing operations; correlate with application entry points that accept external data.
What your security team should do
- Apply the fixed SQLite commit across all environments immediately
- Audit applications and libraries for SQLite dependencies and prioritize updates
- Implement input validation or sandboxing around untrusted JSON processing where feasible
The record
A heap use-after-free issue has been identified in SQLite in the jsonParseAddNodeArray() function in sqlite3.c. This flaw allows a local attacker to leverage a victim to pass specially crafted malicious input to the application, potentially causing a crash and leading to a denial of service.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Bitnami | sqlite | 3.43.0 | No fix |
| Bitnami | sqlite | 3.43.0 | 3.43.2 |
| Debian:12 | sqlite3 | 0 | No fix |
| Debian:13 | sqlite3 | 0 | 3.43.2-1 |
| Ubuntu:24.04:LTS | sqlite3 | 0 | 3.44.2-1 |
Related vulnerabilities
- CVE-2025-6965 There exists a vulnerability in SQLite versions before 3.50.2 where the number of… Also affects sqlite
- CVE-2022-46908 SQLite through 3.40.0, when relying on --safe for execution of an untrusted CLI script… Also affects sqlite
- CVE-2020-35525 In SQlite 3.31.1, a potential null pointer derreference was found in the INTERSEC query… Also affects sqlite
- CVE-2022-35737 SQLite 1.0.12 through 3.39.x before 3.39.2 sometimes allows an array-bounds overflow if… Also affects sqlite
- CVE-2019-8457 SQLite3 from 3.6.0 to and including 3.27.2 is vulnerable to heap out-of-bound read in the… Also affects sqlite3
- CVE-2016-6153 os_unix.c in SQLite before 3.13.0 improperly implements the temporary directory search… Also affects sqlite3
- CVE-2013-7443 Buffer overflow in the skip-scan optimization in SQLite 3.8.2 allows remote attackers to… Also affects sqlite3
- CVE-2026-109618 PHP uses longjmp() for out-of-memory (OOM) errors to exit the current context and abort… CWE-416