/

CVE-2026-103758

Severity:

HIGH RISK

(8.1)

Authorization Bypass (CWE-863) in Obot MCP Gateway

CVE-2026-103758

Awaiting Analysis

Vulnerability type

Category:

Authorization Bypass

CWE:

CWE-863

Impact:

Unauthorized access to restricted MCP servers and tool execution

Severity:

HIGH RISK

(8.1)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

Obot contains an authorization bypass in the MCP connection route, allowing authenticated users with basic privileges to reach MCP servers that should be restricted by Access Control Rules. By supplying a composite MCP identifier, an eligible user may proxy requests through the MCP gateway and invoke tools on protected servers.

Affected context

The vulnerability occurs in Obot deployments where:

  • Authenticated users can access the MCP connection functionality
  • The checkUI deny list does not cover the /mcp-connect-composite/ route
  • Composite MCP identifiers can be used to route requests through mcpGateway.Proxy
  • Access Control Rules are intended to restrict the targeted MCP servers or tools

The issue is most relevant when basic-role users can reach this route and construct or obtain a composite MCP ID.

Exploit preconditions

  • Attack surface: Obot's MCP connection and gateway endpoints
  • Required access: An authenticated Obot account, potentially with a basic role
  • Trigger point: A request to the composite MCP connection route using a composite MCP identifier
  • Authorization condition: The route is not covered by the applicable UI deny-list checks
  • Why exploitation is possible: Requests may be proxied to MCP servers without consistently enforcing the Access Control Rules intended to protect them

Why this happens

The underlying issue is incomplete authorization coverage across related application routes. The checkUI deny list omits the /mcp-connect-composite/ path, allowing requests to reach gateway functionality that can proxy MCP operations without applying the expected access restrictions.

This behavior maps to CWE-863: Incorrect Authorization, where an application fails to properly enforce permissions for a resource or operation after the user has authenticated.

Potential impact

  • A basic-role user may access MCP servers outside their intended permissions.
  • An attacker could invoke tools exposed by restricted MCP servers.
  • Protected data or connected services could be accessed through authorized gateway pathways.
  • Security boundaries defined by Access Control Rules could be bypassed.
  • Downstream systems may be affected depending on the tools and credentials available to the MCP servers.

General mitigation guidance

Mitigation generally focuses on enforcing authorization consistently at the gateway and MCP operation boundaries.

Common defensive patterns include:

  • Apply the same authorization policy to every MCP connection route, including composite connection paths.
  • Perform server- and tool-level permission checks immediately before proxying requests.
  • Treat route-level UI checks as supplementary controls rather than the primary authorization boundary.
  • Derive permissions from trusted server-side identity and policy data instead of user-controlled identifiers.
  • Use least-privilege roles for users, service accounts, and MCP server credentials.
  • Deny access by default when a route, composite identifier, server, or tool is not explicitly authorized.

How teams detect issues like this

Organizations can look for authorization bypass indicators through:

  • Static analysis and route inventories that compare protected endpoints with authorization middleware coverage.
  • Code review checks for deny lists, allow lists, and middleware that do not cover equivalent route variants.
  • Tests that exercise each MCP route with basic, elevated, and unauthenticated identities.
  • Gateway logs showing basic-role users accessing unexpected MCP servers or tools.
  • Policy enforcement requiring server-side authorization immediately before proxy operations.

Automated code review and API security testing tools may help identify inconsistent authorization coverage, but should be supplemented with role-based integration tests.

Sources

SourceLink
github.comgithub.com/obot-platform/obot/security/advisories/GHSA-6fwv-3h4c-37j9
vulncheck.comvulncheck.com/advisories/obot-0.21.1-through-0.24.1-authorization-bypass-via-mcp-connect-composite-route

Frequently asked

questions

It may be exploitable through Obot's network-accessible MCP endpoints when an attacker has a valid authenticated account and the deployment exposes the affected functionality.

No. The described condition specifically allows users with a basic role to reach restricted MCP functionality when they can use a composite MCP identifier and the route authorization is incomplete.

Enforce authorization consistently on the composite MCP route and again at the gateway boundary before proxying requests to a server or invoking a tool. Access should be denied unless the user's permissions are explicitly verified.

Maintain centralized authorization policies, test every route variant across role levels, avoid relying solely on UI deny lists, and monitor for unexpected cross-server or cross-tool access.

Find out what's already
exploitable in your codebase.