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/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-accessible unauthenticated endpoint with trivial exploitation; confidentiality impact is low as only organization UUID existence is confirmed, with no integrity or availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
Capgo before 12.128.2 contains an information disclosure vulnerability in the /private/validate_password_compliance endpoint that returns different error responses for malformed, non-existent, and existing organization IDs. Unauthenticated attackers can enumerate valid organization UUIDs by observing response status codes and error messages, allowing confirmation of organization existence.
AnalysisAI
Organization UUID enumeration in Capgo before 12.128.2 allows unauthenticated remote attackers to confirm the existence of valid organization identifiers by exploiting differential error responses from the /private/validate_password_compliance endpoint. The endpoint returns distinct HTTP status codes and error message bodies depending on whether a submitted organization ID is malformed, non-existent, or valid - functioning as an unauthenticated oracle. No public exploit code has been identified at time of analysis, and this vulnerability is not listed in the CISA KEV catalog, though automated scripted enumeration is trivially feasible given the low attack complexity (CVSS 4.0 base score 6.9, AV:N/AC:L/PR:N).
Technical ContextAI
Capgo (CPE: cpe:2.3:a:capgo:capgo:*:*:*:*:*:*:*:*) is a live-update platform for Capacitor-based mobile applications, providing over-the-air update delivery and organization management features. The vulnerable component is the /private/validate_password_compliance HTTP endpoint, which is intended for password policy validation but accepts an organization ID as part of its input. CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor) covers this root cause: the server-side logic branches on the internal state of the organization ID and leaks that branching decision through observable differences in error responses - a classic enumeration oracle. UUID-based identifiers, while not sequential, are not secret by design, so even brute-force or leaked-UUID-list approaches become viable once an oracle is available to confirm validity.
RemediationAI
Upgrade Capgo to version 12.128.2 or later, which is the vendor-confirmed fixed release per the GitHub Security Advisory GHSA-fwwh-rqv7-6pjf (https://github.com/Cap-go/capgo/security/advisories/GHSA-fwwh-rqv7-6pjf). The fix should normalize error responses for the /private/validate_password_compliance endpoint so that malformed, non-existent, and valid organization IDs all return an indistinguishable response - eliminating the oracle behavior. If immediate upgrade is not possible, a compensating control for self-hosted deployments is to place a WAF or reverse proxy rule that intercepts requests to /private/validate_password_compliance and returns a uniform 400 or 404 response regardless of backend logic; note this may break legitimate password compliance validation workflows if that endpoint is in active use. Rate-limiting requests to this endpoint is a partial mitigation that slows but does not prevent enumeration. For SaaS-hosted Capgo users, the fix is applied server-side and no client action is required beyond confirming the service version.
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 weakness CWE-200 – Information Exposure
View allSame technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-40436
GHSA-663r-mq2m-pmfm