Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Network-reachable management API with low complexity, but requires authorized channel-manager privileges (PR:L); impact is integrity-only routing manipulation, so C:N/A:N.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
Capgo before 12.128.2 allows multiple public channels for the same app and platform to coexist simultaneously, while unnamed /updates requests without defaultChannel implicitly resolve to a single hidden winner channel. An authorized app or channel manager can create ambiguous default update state and silently influence which bundle unnamed clients receive, breaking release routing integrity and predictability.
AnalysisAI
Release-routing integrity failure in Capgo before 12.128.2 lets an authorized app or channel manager covertly steer which update bundle unnamed clients receive. Because the platform permits multiple public channels per app/platform to coexist and silently resolves channel-less /updates requests to a single hidden 'winner' channel, a low-privileged insider can manipulate default update state and serve a chosen bundle to clients that did not specify a channel. There is no public exploit identified at time of analysis, and the issue is not in CISA KEV.
Technical ContextAI
Capgo is a live (over-the-air) update service for Capacitor-based mobile apps, distributing JavaScript/asset bundles to deployed apps through named 'channels' (e.g. production, beta). Clients poll an /updates endpoint to learn which bundle to download. The flaw is rooted in CWE-670 (Always-Incorrect Control Flow Implementation): the routing logic allows several channels to be marked public/default for the same app and platform at once, and when a client requests updates without specifying a defaultChannel, the backend deterministically but opaquely picks one channel as the implicit winner. The affected component is the Capgo backend release-routing logic, identified by CPE cpe:2.3:a:capgo:capgo:*:*:*:*:*:*:*:*, with all versions prior to 12.128.2 affected.
RemediationAI
Vendor-released patch: upgrade to Capgo 12.128.2 or later, which corrects the release-routing logic so default/public channel resolution is unambiguous. As compensating controls until upgrade, avoid configuring more than one public/default channel per app and platform combination, and require clients to specify an explicit defaultChannel on /updates requests so routing no longer depends on the implicit hidden-winner selection - the trade-off is that every client build and update call must be audited to pin its channel, which adds configuration overhead. Additionally, tighten the set of accounts holding app/channel-manager privileges and audit channel-configuration changes, since the vulnerability is abusable only by such authorized roles. Reference the vendor advisory GHSA-3cmp-pm5x-8464 (https://github.com/Cap-go/capgo/security/advisories/GHSA-3cmp-pm5x-8464) for full details.
Authentication bypass in Capgo before 12.128.2 lets remote unauthenticated attackers mint arbitrary API keys by tamperin
Cross-domain SSO account takeover in Capgo before 12.128.2 allows an attacker with enterprise org admin access and a mal
Account pre-registration hijack in Capgo before 12.128.2 lets a remote unauthenticated attacker claim an account under a
Authentication bypass in Capgo prior to version 12.128.2 lets attackers defeat email-based OTP verification by tampering
Rate-limit bypass in Capgo versions prior to 12.128.2 lets remote unauthenticated attackers flood the channel_self endpo
Cross-tenant data poisoning in Supabase Capgo before 12.128.2 allows remote unauthenticated attackers to corrupt billing
Server-side privilege escalation in Capgo before 12.128.2 lets authenticated users holding build permissions abuse a pat
Unauthenticated information disclosure in Capgo before 12.128.2 lets remote attackers query the /functions/v1/channel_se
Account takeover in Capgo before 12.128.2 stems from a password-change endpoint that omits current-password validation (
Information disclosure in Capgo (Capacitor live-update/OTA platform) before 12.128.2 lets unauthenticated callers abuse
Unauthenticated information disclosure in Capgo before 12.128.2 lets remote attackers read organization RBAC role bindin
Cross-tenant authorization bypass in Capgo before 12.128.2 lets authenticated users impersonate another tenant's limited
Same technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-40439
GHSA-g8vq-gjgw-gfc8