Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach Obot registry endpoint over network
-
DeliverySend unauthenticated GET /v0.1/servers
-
ExploitAuthorizer default-allows unlisted /v0.1 prefix
-
ExecutionReceive 200 OK with catalog metadata
-
ImpactHarvest server names, repository and connect URLs
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitable ONLY when Obot is run with the config flag OBOT_SERVER_ENABLE_REGISTRY_AUTH=true (with registry auth disabled the registry is intentionally public and this is not a defect). Given that setting, no authentication, credentials, or user interaction are needed - a single GET /v0.1/servers over the network returns 200 OK. LIMITING FACTORS: the registry handler still applies per-user ACR filtering, so an anonymous caller only sees entries accessible to the anonymous identity (default-catalog/wildcard entries); only non-secret metadata (names, descriptions, repository URLs, icons, connect URLs) is exposed - no secret env/header values - and the attacker cannot connect to the servers because connecting is properly auth-protected. Affects Obot versions < v0.23.0. |
| Impact | This is a low-impact, high-confidence information-disclosure flaw, not a priority vulnerability. The vendor CVSS 3.1 vector (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N = 5.3) and the input CVSS 4.0 vector (VC:L, VI:N, VA:N = 6.9) agree on the shape: network-reachable, unauthenticated, but confidentiality-only and LOW magnitude. No EPSS score, no CISA KEV listing, and no public POC were provided. There is no SSVC data in the input. The GHSA advisory explicitly caps worst-case impact at disclosure of registry inventory metadata (server names, descriptions, repository URLs, icons, connect URLs) that the operator chose to place behind auth - critically, NO credential/secret env or header values are exposed, and anonymous callers still cannot connect to the servers because connection is properly auth-gated. The two CVSS scores diverge in headline number (5.3 vs 6.9) purely due to base-formula differences, not a signal conflict; both encode single-metric LOW confidentiality with no integrity/availability. Net: a real but minor authorization gap, easy to trigger yet with bounded consequences - patch on normal cadence, not an emergency. |
| Exploit ScenarioDerived | An operator deploys Obot with OBOT_SERVER_ENABLE_REGISTRY_AUTH=true, expecting the MCP registry to require authentication. An unauthenticated attacker on the network sends a simple GET /v0.1/servers and receives 200 OK with catalog metadata (server names, descriptions, repository and connect URLs) for entries visible to the anonymous identity. No public exploit code was identified at time of analysis; exploitation requires only a single unauthenticated HTTP request (AC:L, PR:N, no UI). |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 27, 2026
Unauthenticated disclosure of MCP Registry metadata affects Obot deployments running versions up to and including v0.22.1 when the operator has enabled registry authentication via OBOT_SERVER_ENABLE_REGISTRY_AUTH=true. A single unauthenticated GET request to /v0.1/servers returns 200 OK and exposes the registry inventory - server names, descriptions, repository URLs, icons, and connect URLs - that the operator explicitly intended to place behind authentication, because the authorizer's default-allow logic never matched the registry's top-level /v0.1 prefix. No public exploit code has been identified at time of analysis, and the independent assessment rates this as a low-impact, high-confidence information-disclosure flaw (CVSS v3.1 5.3) rather than the CVSS v4.0 6.9 figure in the CVE record: the per-user ACR filter still limits anonymous callers to entries visible to the anonymous identity, no secret environment or header values are exposed, and connecting to listed servers remains properly auth-protected.
RemediationAI
Vendor-released patch: upgrade to Obot v0.23.0 or later, which treats the /v0.1 registry prefix as a protected route and enforces authentication for unauthenticated callers; see the vendor advisory at https://github.com/obot-platform/obot/security/advisories/GHSA-pr6h-vr44-xq8j. If an immediate upgrade is not possible, the practical compensating control is to restrict network reachability of the /v0.1 endpoints at the perimeter - for example via a reverse proxy or firewall rule that requires client authentication or limits access to trusted source ranges for /v0.1/* - with the trade-off that any legitimate registry clients (including CLI tooling and integrations that query the catalog) will also be blocked or prompted unless they are explicitly allow-listed. Note that disabling OBOT_SERVER_ENABLE_REGISTRY_AUTH is not a remediation: it converts the deployment into the intentionally public registry configuration rather than fixing the authorization gap, and it removes the operator's intended access restriction entirely. Operators should also review which entries are reachable by the anonymous identity (default-catalog/wildcard ACRs), since narrowing those rules reduces the volume of metadata an unauthenticated caller can enumerate even before patching. The advisory credits HE WEI (@hewei-gikaku) for responsible disclosure.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in go, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is CWE-862 (Missing Authorization) in the Obot MCP (Model Context Protocol) registry server, distributed as the Go module go/github.com/obot-platform/obot prior to v0.23.0. Obot's authorization layer works by rejecting a hard-coded set of known-protected route prefixes and then default-allowing every other path. The MCP Registry API is mounted at the top-level /v0.1 prefix, which was never added to that protected set, so anonymous requests to endpoints such as /v0.1/servers were authorized before the WWW-Authenticate challenge for /v0.1 could be reached. This is the same root cause previously addressed in GHSA-vw82-7fv8-r6gp, whose fix hardened /mcp-connect/ but left the /v0.1 registry prefix inside the default-allow branch. The registry handler itself still applies per-user ACR (access-control-rule) filtering, so an anonymous caller receives only entries reachable by the anonymous identity - typically default-catalog and wildcard entries - and the response payload is non-secret metadata only (names, descriptions, repository URLs, icons, connect URLs). The affected CPE is cpe:2.3:a:obot-platform:obot:*:*:*:*:*:*:*:* with a fixed version of 0.23.0.
Know when Obot gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
Single unauthenticated network GET (AV:N/AC:L/PR:N/UI:N) yields only limited non-secret metadata disclosure (C:L), with no integrity or availability impact and no scope change.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
Obot versions before v0.23.0 fail to enforce authentication on MCP Registry endpoints under /v0.1/* when registry authentication is enabled. Unauthenticated attackers can read registry metadata including server names, descriptions, repository URLs, and connect URLs by sending GET requests to /v0.1/servers.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Obot deployments started with the README's Docker quickstart expose port 0.0.0.0:8080 with authentication disabled, allo
Authorization bypass in Obot before v0.21.1 lets any authenticated user with a known MCP Server ID connect to restricted
OAuth dynamic client registration in Obot through v0.22.1 allows unauthenticated remote attackers to register an OAuth c
An authorization bypass in Obot 0.21.1 through 0.24.1 lets any authenticated account holding the low-privileged 'Basic-r
Server-side request forgery in Obot through v0.22.1 allows an authenticated user holding the Power User, Power User Plus
Obot versions 0.12.0 through 0.26.1 return admin- and power-user-supplied static secrets (API keys, tokens) on MCP catal
Authorization bypass in Obot 0.26.0 through 0.26.1 lets an authenticated user who matches any configured vMCP (virtual M
Obot versions 0.25.0 through 0.25.5 and 0.26.0 can persist stale group memberships after an administrator revokes a user
EUVD-2026-88032
GHSA-63cq-34vq-4f48
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB