CVE Catalog

CVE-2026-58485

HighCVSS 7.1
Published: Updated: Translated: NVD NIST

Summary

In mcp-searxng before 1.7.1, web_url_read accepts a caller-controlled URL and validates only the literal hostname in assertUrlAllowed() before undiciFetch() performs OS DNS resolution. A public-looking attacker-controlled hostname that resolves to a private, loopback, link-local, or cloud-metadata address passes the lexical check and causes the MCP server to connect to the internal destination. In the default HTTP configuration, an unauthenticated network client can read internal services, expose credentials or tokens, and enumerate reachable internal hosts. Fixed in version 1.7.1.

Risk Assessment

An unauthenticated attacker can exploit the SSRF vulnerability to access internal services, expose credentials or tokens, and map internal infrastructure. In environments with cloud metadata access, this may lead to identity theft or privilege escalation.

Recommendation

Upgrade mcp-searxng to version 1.7.1, which properly validates the scheme, host, and resolved IP address. Until patched, consider disabling or restricting access to the web_url_read tool and ensure MCP_HTTP_ALLOW_PRIVATE_URLS is not enabled.

Other vulnerabilities in mcp-searxng

See all
Original NVD description (English source)

mcp-searxng is a Model Context Protocol server that gives AI assistants web search and URL-reading capabilities through SearXNG. Prior to 1.7.1, web_url_read receives its caller-controlled URL through src/index.ts and validates only the literal hostname in assertUrlAllowed() within src/url-reader.ts before undiciFetch() performs operating-system DNS resolution. A public-looking attacker-controlled hostname that resolves to a private, loopback, link-local, or cloud-metadata address therefore passes the lexical check and causes the MCP server to connect to the internal destination. In the default HTTP configuration, an unauthenticated network client can use this path to read internal services, expose credentials or service tokens, and enumerate reachable internal hosts; in STDIO deployments, prompt-influenced tool selection can provide the malicious URL. Direct private IP literals are blocked, and MCP_HTTP_ALLOW_PRIVATE_URLS remains an explicit opt-out. This issue is fixed in version 1.7.1.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS