ZeroHour

CVE-2026-81094

niche

Missing authentication in mcp-router CLI exposes MCP aggregator to network clients

CVSS 4.0
9.3 critical
EPSS
<1%p36
Published
()
Modified
AI analysis

CVE-2026-81094 is a missing-authentication flaw (CWE-306) in the mcp-router CLI: the serve command in apps/cli/src/commands/serve.ts defaults its host to the all-interfaces address on a fixed port and only requires an access token when the operator explicitly supplies one. A default invocation therefore exposes the MCP aggregator, and every MCP server it fronts, to anyone able to reach that port. An attacker gains unauthenticated access to those backed services, with high confidentiality and integrity impact per the CVSS 4.0 score of 9.3, though no availability impact is scored. Anyone running mcp-router CLI releases before 0.6.3 is affected, especially operators who ran serve with defaults where the port is reachable from other hosts. No public proof-of-concept, CISA KEV listing, or in-the-wild exploitation is known; EPSS estimates roughly a 0.4 percent probability of exploitation within 30 days.

What to do: Upgrade to mcp-router 0.6.3 or later, which defaults the host to loopback and refuses to start without a token when bound to a non-loopback address. If upgrading is not possible, explicitly bind serve to loopback (or a firewalled interface) and always supply a token. Audit whether the aggregator port was reachable from untrusted networks and review logs for unauthenticated access to the backed MCP servers.

Affected
mcp-router (project) mcp-router CLI (serve command)all releases prior to 0.6.3 (< 0.6.3)
Estimated exposure
nichelikely hundreds to a few thousand developer environments (no published install counts) — No active-install, download, or internet-scan figures were provided, so the estimate rests on MCP aggregation CLIs being young, niche developer tooling typically run on individual workstations or small internal deployments rather than mass…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

The mcp-router CLI served its MCP aggregator on every interface and enforced authentication only when the operator asked for it. The serve command in apps/cli/src/commands/serve.ts defaulted its host to the all-interfaces address on a fixed port, and required a token only when the corresponding flag was supplied, so a default invocation exposed the aggregator, and every MCP server it fronted, to anyone able to reach the port. Release 0.6.3 defaults the host to the loopback address and refuses to start without a token whenever the host it is given is not a loopback address; no earlier release carries either check.

Weakness
CWE-306
Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.