[ CVE-2026-61427 · Published 15 Jul 2026 ]
PraisonAI: MCP HTTP-stream transport is unauthenticated by default, exposing tool enumeration and an unvalidated tool-call surface
[ Why it matters ]Priority signals
- Public proof-of-concept exploit exists (CISA SSVC)
[ Description ]Official description
PraisonAI before 4.6.78 exposes the MCP HTTP-stream transport without authentication by default: the CLI --api-key option defaults to None, and the server only enforces Authorization/Bearer checks when an API key is configured. When an operator runs 'praisonai mcp serve --transport http-stream' without an API key, an unauthenticated client (no Authorization header, and no Origin header, which is also permitted) can initialize a session, enumerate the available tools (tools/list), and invoke tools (tools/call). Additionally, the dispatcher forwards tool-call arguments to handlers without validating them against the advertised inputSchema. The server binds to 127.0.0.1 by default, so remote exploitation requires the operator to bind to a network-accessible address (e.g., --host 0.0.0.0).
[ Fixes ]Fixes and patches
- praisonai 4.6.78Fixed version · GitHub Advisories · pip package praisonai: upgrade to 4.6.78 or later (affected <= 4.6.77)
[ Packages ]Affected open-source packages
- praisonai pipAffected <= 4.6.77 · fixed in 4.6.78 · GHSA-hc5v-gxvj-58wh