CVE-2026-54628
Received Received - Intake

Server-Side Request Forgery in Anyquery SQL Engine

Vulnerability report for CVE-2026-54628, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-09-14

Last updated on: 2026-09-14

Assigner: GitHub, Inc.

Description

Anyquery is an SQL query engine built on top of SQLite. Prior to 0.4.5, anyquery server exposes URL-capable SQLite virtual table modules such as json_reader and log_reader through its unauthenticated MySQL-compatible server port without restricting outbound destinations. A remote attacker can provide a loopback, private-network, or link-local cloud metadata URL, causing go-getter in the Anyquery server process to fetch the selected resource and expose its response as queryable table data. This permits internal network probing, access to internal APIs, and disclosure of cloud credentials; low-integrity impact is possible when a reached internal API performs state-changing actions. This issue is fixed in version 0.4.5.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-09-14
Last Modified
2026-09-14
Generated
2026-09-15
AI Q&A
2026-09-15
EPSS Evaluated
N/A
NVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
anyquery anyquery to 0.4.5 (inc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-862 The product does not perform an authorization check when an actor attempts to access a resource or perform an action.
CWE-918 The web server receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure that the request is being sent to the expected destination.
CWE-284 The product does not restrict or incorrectly restricts access to a resource from an unauthorized actor.
CWE-441 The product receives a request, message, or directive from an upstream component, but the product does not sufficiently preserve the original source of the request before forwarding the request to an external actor that is outside of the product's control sphere. This causes the product to appear to be the source of the request, leading it to act as a proxy or other intermediary between the upstream component and the external actor.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability is a Server-Side Request Forgery (SSRF) in Anyquery's server mode prior to version 0.4.5. It allows unauthenticated attackers to exploit unrestricted SQLite virtual table modules like json_reader and log_reader to fetch URLs without proper outbound HTTP request restrictions. Attackers can connect to the MySQL-compatible server port and create virtual tables pointing to internal network endpoints or cloud metadata IPs, enabling internal network probing and data exfiltration.

Detection Guidance

Check if anyquery server is running on an exposed port (default MySQL-compatible port). Use commands like 'netstat -tulnp | grep anyquery' or 'ss -tulnp | grep anyquery' to identify listening ports. Inspect server logs for unusual outbound HTTP requests to internal or cloud metadata IPs (e.g., 169.254.169.254). Verify if virtual tables like json_reader or log_reader are configured to fetch external URLs.

Commands to test: 'curl -v http://localhost:<port>/query -d "CREATE VIRTUAL TABLE test USING json_reader(url=\"http://169.254.169.254/latest/meta-data/\")"' to check if the server allows such requests.

Impact Analysis

This vulnerability can allow attackers to probe internal networks, access internal APIs, and disclose cloud credentials. It may also enable low-integrity impact if internal APIs perform state-changing actions. The confidentiality impact is high due to potential data exfiltration, while integrity and availability impacts are low.

Mitigation Strategies

Upgrade anyquery to version 0.4.5 or later to patch the SSRF vulnerability. If upgrading is not immediately possible, restrict outbound HTTP requests from the anyquery server by configuring a firewall to block requests to internal, private, or cloud metadata IP ranges.

Disable unauthenticated access to the MySQL-compatible server port if not required. Monitor network traffic for suspicious outbound connections to cloud metadata endpoints or internal IPs.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-54628. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart