CVE-2026-47253
nichePath Traversal Directory Deletion in Anyquery SQL Engine Prior to 0.4.5
Anyquery, a SQL query engine built on SQLite, contains a path traversal vulnerability (CWE-22) in the clear_plugin_cache(plugin) SQL scalar function, which passes a caller-controlled plugin name through path.Join to os.RemoveAll without rejecting '..' traversal segments. An attacker holding any low-privileged bearer token can trigger the flaw via the /v1/query HTTP endpoint with a crafted plugin argument, causing the server to recursively delete any directory reachable outside $XDG_CACHE_HOME/anyquery/plugins/ that is writable by the Anyquery process. The impact is permanent data loss and denial of service (integrity and availability), with no disclosure of file contents. All deployments running Anyquery in server mode with the HTTP API enabled and a version prior to 0.4.5 are affected; the issue is fixed in version 0.4.5. No public proof of concept is known and the CVE is not on the CISA KEV list, so exploitation is presumed possible but not observed.
What to do: Upgrade Anyquery to version 0.4.5 or later immediately. Until patched, restrict network access to the /v1/query endpoint (e.g., bind to localhost or place behind an authenticated reverse proxy), audit and revoke unnecessary bearer tokens, and run the Anyquery server under a dedicated low-privilege account with minimal filesystem write permissions to limit blast radius. Review recent logs and filesystems for unexplained recursive directory deletions and verify backups for any affected hosts.
| Anyquery | < 0.4.5 |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
Anyquery is an SQL query engine built on top of SQLite. Prior to 0.4.5, the clear_plugin_cache(plugin) SQL scalar function in namespace/other_functions.go passes the caller-controlled plugin parameter through path.Join to os.RemoveAll without rejecting traversal segments. A low-privileged bearer-token holder can invoke the function through the /v1/query HTTP endpoint, causing path.Join to resolve .. segments outside $XDG_CACHE_HOME/anyquery/plugins/ and os.RemoveAll to recursively delete any reachable directory writable by the Anyquery server process. This causes permanent data loss and denial of service without disclosing file contents. This issue is fixed in version 0.4.5.
- Weakness
- CWE-22
- Vector
- CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:H
In the news0 stories
No ingested article mentions this CVE yet.