Impact
The vulnerability in 9Router allows an unauthenticated attacker to supply a spoofed X‑9r‑Real‑Ip header that is trusted as a local request, causing the application to skip API‑key validation for routes under /api/v1/. This bypass grants the attacker unrestricted access to the instance’s configured LLM providers, enabling consumption of paid credits and enumeration of providers and models. The weakness corresponds to CWE‑807 (Information Exposure Through Improper Information Handling).
Affected Systems
Affected deployments are those running 9Router version earlier than 0.5.6, particularly configurations that expose Next.js endpoints without the custom‑server.js wrapper that sanitizes the X‑9r‑Real‑Ip header. The vulnerability exists in the decolua:9router product, and any installation that has the public LLM API enabled is at risk.
Risk and Exploitability
The CVSS score of 7.3 indicates moderate to high severity. No EPSS score is available, and the issue is not listed in CISA KEV. The likely attack vector is a remote unauthenticated client sending an HTTP request with a forged X‑9r‑Real‑Ip header set to 127.0.0.1. If successful, the attacker can use the LLM API without credentials, consume paid tokens, and gain insight into the configured provider list. The impact is elevation of privilege and potential denial of service to the resource owner.
OpenCVE Enrichment
Github GHSA