CVE-2026-54629
HIGHCVE-2026-54629 is a high-severity (CVSS 7.5) vulnerability in github.com/julien040/anyquery. O3 Security confirms whether CVE-2026-54629 is actually reachable in your code before you act, and blocks exploitation at runtime until you patch.
Anyquery: Local File Read (LFR) via Unrestricted SQLite Virtual Table Modules in Server Mode
Real-World Exposure
github.com/julien040/anyqueryReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects Go packages — download data is not available via public APIs for these ecosystems.
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)
- Start the server on the victim machine:
anyquery server --host 0.0.0.0 --port 8070 - Connect from an attacker machine:
mysql -u root -h <VICTIM_IP> -P 8070 - Execute the following payload to read
/etc/passwd: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.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🐹Go | github.com/julien040/anyquery | all versions | No fix |
Detection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for github.com/julien040/anyquery. O3's reachability analysis confirms whether the vulnerable code path is actually invoked in your application, so you act on real exposure instead of every transitive match.
Remediation status
No patched version of github.com/julien040/anyquery has shipped for CVE-2026-54629 yet. Where your build allows, override or pin the dependency away from the vulnerable range, and apply any maintainer-recommended mitigation.
Mitigate without a patch
If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.
How O3 protects you
O3 pinpoints whether CVE-2026-54629 is reachable in your code and exactly where to fix it, then blocks exploitation in production at runtime until the patched version is deployed.
Tailored to CVE-2026-54629. Runtime protection reduces exposure until a permanent patch is applied and verified — it complements patching, it doesn't replace it.
Frequently Asked Questions
Is CVE-2026-54629 in your dependencies?
O3 detects CVE-2026-54629 across Go dependencies and uses function-level reachability to confirm whether the vulnerable code path is actually reachable — not just present. No false positives.