CVE-2026-72860
Received Received - Intake

SSRF and Information Disclosure in 9router

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

Publication date: 2026-08-20

Last updated on: 2026-08-20

Assigner: VulnCheck

Description

The POST /api/provider-nodes/validate route in 9router takes a caller-supplied baseUrl and issues server-side HTTP requests to it, guarding the destination with assertPublicUrl from src/shared/utils/ssrfGuard.js. That guard compares hostname strings only: it resolves no DNS, does not revalidate after a redirect, and its IPv4-mapped IPv6 branch is unreachable. The branch matches ^::ffff:(\d+\.\d+\.\d+\.\d+)$, but the WHATWG URL parser canonicalizes such literals to hextets before the guard runs, so new URL("http://[::ffff:127.0.0.1]/").hostname yields [::ffff:7f00:1] and the pattern is tested against a string it is never handed. Every IPv4-mapped address therefore passes, and http://[::ffff:7f00:1] and http://[::ffff:a9fe:a9fe] reach loopback and link-local metadata addresses; a hostname whose A record points at an internal address passes as well because no resolution occurs. In the custom-embedding branch the upstream response body is truncated to 200 bytes and returned to the caller whenever the upstream status is neither 2xx nor 401 nor 403, which discloses the beginning of internal responses, and the other validation types remain usable for blind internal port scanning through status and timing differences. The caller-supplied apiKey is forwarded to the internal destination as an Authorization Bearer header. A dashboard session is required by default, and none is required when requireLogin is disabled.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-20
Last Modified
2026-08-20
Generated
2026-08-21
AI Q&A
2026-08-21
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Currently, no data is known.

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-184 The product implements a protection mechanism that relies on a list of inputs (or properties of inputs) that are not allowed by policy or otherwise require other action to neutralize before additional processing takes place, but the list is incomplete.
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.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability involves a server-side request forgery (SSRF) flaw in the POST /api/provider-nodes/validate route of 9router. The issue occurs because the SSRF guard only compares hostname strings without resolving DNS or validating after redirects. IPv4-mapped IPv6 addresses bypass the guard due to URL parser canonicalization, allowing access to internal and loopback addresses. Additionally, internal response bodies are truncated and disclosed under certain conditions, enabling blind port scanning via status and timing differences.

Detection Guidance

This vulnerability involves server-side request forgery (SSRF) due to improper validation of URLs, particularly IPv4-mapped IPv6 addresses. To detect it, inspect network logs for outbound requests to internal or unexpected addresses from the affected API endpoint. Check for truncated responses (200 bytes) from internal services when status codes are not 2xx, 401, or 403. Monitor for unusual Authorization Bearer headers being forwarded to internal destinations.

Impact Analysis

An attacker could exploit this to access internal systems, scan internal ports, or exfiltrate sensitive data from internal responses. The vulnerability allows unauthorized access to loopback addresses and internal metadata services, potentially leading to data breaches or further network compromise. The forwarded apiKey could also be used to impersonate legitimate users.

Compliance Impact

This vulnerability likely violates compliance requirements for data protection and access controls. GDPR requires protecting personal data, and HIPAA mandates safeguarding protected health information. The SSRF flaw could lead to unauthorized data exposure, violating confidentiality and integrity requirements under these regulations.

Mitigation Strategies

Disable the POST /api/provider-nodes/validate route if not needed. If required, implement strict hostname validation that resolves DNS and checks after redirects. Block internal IP ranges in requests and avoid forwarding caller-supplied apiKey as Authorization headers.

Chat Assistant

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

EPSS Chart