CVE-2026-79748
nicheMissing Authorization Enables Authenticated RCE in MCPHub
MCPHub before version 0.12.15 fails to enforce admin-only authorization (CWE-862) on the POST /api/servers and PUT /api/servers/:name endpoints, and applies no allowlist or sanitization to the command and args fields used to launch MCP server processes. Any authenticated non-admin user can submit a server configuration containing an arbitrary binary (e.g., /bin/sh) and arguments, which MCPHub immediately spawns via child_process.spawn. Because the spawned process runs as the MCPHub server's OS user — commonly root in the published Docker image and in npx/systemd deployments — an attacker gains arbitrary command execution on the host, consistent with the CVSS scope-change and critical 9.9 rating. All MCPHub deployments prior to 0.12.15 are affected, with the greatest risk in multi-user deployments exposed over the network. Exploitation has not been observed: there is no public proof-of-concept, the flaw is not in CISA KEV, and EPSS estimates only a 0.3% chance of exploitation in the next 30 days.
What to do: Upgrade MCPHub to version 0.12.15 immediately. Until patched, restrict POST/PUT access to the /api/servers endpoints (e.g., via a reverse-proxy ACL), minimize non-admin accounts, run the MCPHub process as a non-root user instead of the default root in Docker/npx/systemd setups, and audit existing server configurations for unexpected command or args values. Environment-wide, check for anomalous spawned processes executed under the MCPHub service account that could indicate prior abuse.
| MCPHub (open-source project) MCPHub | All versions prior to 0.12.15 |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
MCPHub is a unified hub for centrally managing and dynamically orchestrating multiple MCP servers/APIs into separate endpoints with flexible routing strategies. Prior to version 0.12.15, the POST /api/servers and PUT /api/servers/:name endpoints in MCPHub create/update MCP server configurations and then immediately spawn the configured stdio process via child_process.spawn. Authentication is required, but there is no authorization check restricting these endpoints to admins, and there is no allowlist/sanitization on the command and args fields. As a result, any authenticated non-admin user can submit a server configuration with command:"/bin/sh" (or any other binary) and arbitrary args, causing MCPHub to execute the attacker-controlled process as the MCPHub server's OS user (commonly root in the published Docker image and in npx/systemd deployments). This issue has been patched in version 0.12.15.
- Weakness
- CWE-862
- Vector
- CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
In the news0 stories
No ingested article mentions this CVE yet.