MCP server console · authless route (CVE-2026-33032 shape)
calling as
build

// what this is

One MCP server, two doors

A "DevOps assistant" MCP server exposes tools that manage a server's config: list_config, read_config, write_config, reload, export_history. The last three are privileged. The server has two HTTP endpoints that both reach those same tools: /mcp and /mcp_message.

The bug (vulnerable build): /mcp checks your bearer token, but /mcp_message is guarded only by an IP allow-list — and an empty allow-list means allow everyone. It never checks the token, yet it calls the same privileged handlers. This is the shape of CVE-2026-33032 ("MCPwn") in nginx-ui.
The fix (fixed build): both endpoints run the same auth middleware, an unconfigured allow-list denies by default, and the server validates the Origin header to block DNS-rebinding.

Use the top bar to switch who you are (token or none) and which build you hit. Everything is fake and in-memory, on 127.0.0.1 only. This is an authorized, local lab.

Tip: do each mission on vulnerable first, then switch to fixed and watch the same requests fail.