GitHub Advisoryadvisory · Go

GHSA-mf78-3rpf-r784 Anyquery: Local File Read (LFR) via Unrestricted SQLite Virtual Table Modules in Server Mode

HIGH Published 2026-07-14 Modified 2026-07-14 Official page ↗
Aliases
CVE-2026-54629
Ecosystem
Go
Packages
github.com/julien040/anyquery
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Weaknesses
CWE-22, CWE-284, CWE-552, CWE-73, CWE-862
Reviewed
2026-07-14

Affected packages

• Go github.com/julien040/anyquery: < 0.4.5 (no fix yet)

Description

Summary Anyquery's `server` mode lacks input sanitization and access control over its built-in SQLite virtual table modules (e.g., `csv_reader`, `log_reader`). Unauthenticated attackers connecting to the MySQL-compatible server port can create virtual tables pointing to local files on the system (e.g., `/etc/passwd`, `~/.ssh/id_rsa`). This allows full Local File Read (LFR) capabilities, compromising sensitive system configurations and credentials. Details Anyquery utilizes the `hashicorp/go-getter` library within its data ingestion modules. When Anyquery is launched in Server Mode (`anyquery server`), it binds to a TCP port and accepts MySQL protocol connections. The server handler does not restrict the usage of these virtual table modules to safe directories. An attacker can connect to the server and execute native SQLite virtual table creation queries to instantiate modules like `csv_reader` pointing to restricted files. Because the file read operation is initiated by the Anyquery server process, the attacker can read any file the process has access to. PoC (Proof of Concept) 1. Start the server on the victim machine: ```bash anyquery server --host 0.0.0.0 --port 8070 ``` 2. Connect from an attacker machine: ```bash mysql -u root -h -P 8070 ``` 3. Execute the following payload to read `/etc/passwd`: ```sql CREATE VIRTUAL TABLE passwd USING csv_reader('/etc/passwd'); SELECT * FROM passwd; ``` Impact • Confidentiality: High. Complete compromise of local file system confidentiality. • Integrity: None. • Availability: None. • CVSS Score: 7.5 (High) - `CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N` Remediation Implement a sandboxing mechanism in Server Mode (e.g., a `--restrict-paths` flag) to limit `read_*` operations to designated directories.

Related

Alias · CVE (1)

  • CVE-2026-54629 Anyquery is an SQL query engine built on top of SQLite. vulnerability

Weakness · CWE (5)

  • CWE-22 Improper Limitation of a Pathname to a Restricted Directory weakness
  • CWE-284 Improper Access Control weakness
  • CWE-552 Files or Directories Accessible to External Parties weakness
  • CWE-73 External Control of File Name or Path weakness
  • CWE-862 Missing Authorization weakness

References