Skip to content
OpenAdvisories
High · 8.8 CVE-2026-101062 EUVD-2026-88033GHSA-cfp9-746c-5jrwGHSA-xwmw-prc4-v3crGO-2026-6530

Obot before v0.23.0 Authentication Bypass via OAuth Dynamic Client Registration

Published Sep 27, 2026 · Updated Sep 30, 2026 · Assigned by VulnCheck

Description

Obot before v0.23.0 (affected versions <= v0.22.1) running with OBOT_SERVER_ENABLE_AUTHENTICATION=true exposes OAuth dynamic client registration without authentication and without any restriction on the redirect URIs a client may register. Because the authorization flow auto-completes for an already logged-in user with no consent screen, an attacker who registers a client pointing at their own domain and induces a logged-in victim to visit a single crafted authorization URL receives an authorization code at the attacker-controlled redirect URI and can exchange it for an access token and refresh token. The token minted by the MCP OAuth flow carries the victim's full group set in the JWT, and Obot validated only the issuer and not the audience, so the token is accepted as a bearer token against any Obot API endpoint the victim can access rather than being scoped to the requested MCP server, allowing the attacker to read or modify the victim's resources until the token is revoked. v0.23.0 adds a consent screen, restricts MCP OAuth tokens to the MCP involved in the request, and enforces audience validation.

Affected products

VendorProductAffectedFixed
obot-platform obot < 0.23.0 0.23.0

Affected packages

EcosystemPackageAffectedFixedRecord
Go github.com/obot-platform/obot < 0.23.0 0.23.0 GHSA-xwmw-prc4-v3cr

References