Description
SQLite before 3.54.0 contains an authorization bypass vulnerability in lookupName() that invokes the authorizer only for the first joined table's USING column. Attackers able to submit SQL can query a shared USING column in a RIGHT or FULL JOIN to read columns denied via sqlite3_set_authorizer() SQLITE_READ restrictions.
Published: 2026-10-30
Score: 2 Low
EPSS: n/a
KEV: No
Impact: Authorization bypass via unprotected columns in JOIN operations
Action: Apply Patch
AI Analysis

Impact

SQLite versions prior to 3.54.0 allow an attacker to bypass authorization limits set by sqlite3_set_authorizer() for read operations. The vulnerability originates in the lookupName() routine, which triggers the authorizer only for the first table in a RIGHT or FULL JOIN that uses a shared column in the USING clause. As a result, an attacker who can supply arbitrary SQL can read columns that should otherwise be denied by SQLITE_READ restrictions, exposing sensitive data. The weakness corresponds to CWE‑863 and presents a confidentiality risk when the attacker has execution or injection access to the SQLite instance.

Affected Systems

All installations of SQLite 3.53.x and earlier, including the native SQLite binaries bundled with applications that rely on those versions. The vulnerability is specifically tied to the SQLite library, version 3.53.4 and earlier, until the 3.54.0 release unconditionally fixes the authorizer invocation logic.

Risk and Exploitability

The CVSS score of 2 indicates a low severity rating under the standard metric set, and the EPSS score is not available, suggesting no empirical data on exploitation frequency. However, the vulnerability exists in widely deployed embedded databases and can be triggered through crafted SQL input, making it actionable for attackers who can inject queries. The permissive exploit path via a crafted RIGHT or FULL JOIN means capability is sufficient for a read‑only data leak. The vulnerability is not listed in the CISA KEV catalog, implying no known, widespread, or actively weaponized exploits at the time of analysis.

Generated by OpenCVE AI on October 30, 2026 at 12:26 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update SQLite to version 3.54.0 or later, which corrects the authorizer bypass in JOIN operations.
  • If upgrading immediately is not possible, restrict the use of RIGHT or FULL JOIN statements with USING clauses to trusted input contexts or disable external SQL input channels.
  • Ensure that sqlite3_set_authorizer() is configured to enforce all necessary read restrictions and monitor for unexpected read activity on previously protected columns.

Generated by OpenCVE AI on October 30, 2026 at 12:26 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 30 Oct 2026 11:45:00 +0000

Type Values Removed Values Added
Description SQLite before 3.54.0 contains an authorization bypass vulnerability in lookupName() that invokes the authorizer only for the first joined table's USING column. Attackers able to submit SQL can query a shared USING column in a RIGHT or FULL JOIN to read columns denied via sqlite3_set_authorizer() SQLITE_READ restrictions.
Title SQLite before 3.54.0 Authorizer Bypass via RIGHT or FULL JOIN USING
First Time appeared Sqlite
Sqlite sqlite
Weaknesses CWE-863
CPEs cpe:2.3:a:sqlite:sqlite:*:*:*:*:*:*:*:*
Vendors & Products Sqlite
Sqlite sqlite
References
Metrics cvssV3_1

{'score': 2.5, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N'}

cvssV4_0

{'score': 2, 'vector': 'CVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-10-30T11:30:41.921Z

Reserved: 2026-10-30T00:57:05.903Z

Link: CVE-2026-119377

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-30T12:16:36.650

Modified: 2026-10-30T12:16:36.650

Link: CVE-2026-119377

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-30T13:00:14Z

Weaknesses