Fake SQLite Vulnerability Reports Expose Flaws in Automated CVE Verification
AI-generated fake security advisories reveal weaknesses in automated CVE validation processes.
1Fake Vulnerability Reports
A newly created GitHub repository published over 50 vulnerability advisories for SQLite. JFrog security researchers found that most of these reports were generated by AI. Initially marked as critical by NVD and CISA's ADP, detailed investigation revealed the claims to be baseless. This incident highlights weaknesses in automated vulnerability verification systems.
2CVE-2026-51302 Investigation
Red Hat initially assigned CVE-2026-51302 a 10.0 critical severity score. However, JFrog's research proved the vulnerability non-existent. SQLite 3.41 did not include the exprComputeOperands() function, and sqlite3ReleaseTempReg() had no heap memory management. Consequently, the claim was entirely unfounded, and the severity score was downgraded to 7.6.
3Debunking ExprListDelete Claim
Another fake advisory alleged that ExprListDelete() failed to clear back-references in parent structures. However, no such back-reference mechanism existed in SQLite's source code. Moreover, the supposed patch showed no changes to expr.c between versions 3.51.2 and 3.51.3, proving the claim fabricated.
4sqlite3ExprDelete Function Analysis
A use-after-free vulnerability was claimed in specific lines of sqlite3ExprDelete(). The cited lines turned out to be a comment and a memory allocation call. The function is called during OOM error handling, but the pointer is never reused, preventing any potential vulnerability. PoC tests confirmed the claim invalid.
5jsonParseFree and jsonBlobEdit Claims
The advisory claimed jsonParseFree() left dangling references accessed by jsonBlobEdit(). However, jsonBlobEdit() was absent in SQLite 3.41.0. jsonParseFree() is used only in destructors where the surrounding structure is immediately discarded. PoC tests demonstrated the alleged vulnerability non-existent.
6Examining jsonRemoveFunc Claim
A use-after-free was alleged in jsonRemoveFunc at specific line numbers. SQLite 3.41.0's json.c file is only 2706 lines long, making the cited lines non-existent. The actual function implementation, found 2000 lines earlier, contained no memory management flaws, debunking the claim.
7Flaws in CVE Submission Process
MITRE's public CVE submission form lacks real identity verification, allowing anyone to submit vulnerability descriptions and propose CVSS scores. NIST's halt on deep analysis in February 2024 eroded system reliability. CISA and other ADPs' efforts remain insufficient due to a fragmented global pipeline and massive backlog.
8Systemic Issues and Consequences
This incident exposes systemic problems in automated vulnerability ingestion. An audit revealed 54 of 55 advisories from the same GitHub account were entirely fabricated, with one containing a real bug wrapped in unverified CVE metadata. Such fake CVEs can mislead enterprise scanners, causing unnecessary alerts and resource waste.