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
PR:N confirmed by public anon key access; C:L only as disclosed data is billing plan metadata, not credentials or application content.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
Capgo before 12.128.2 contains an authorization bypass vulnerability in the public.get_current_plan_max_org RPC function that allows unauthenticated attackers to retrieve arbitrary organization plan limits. Attackers can call the RPC endpoint with any organization UUID using only the public Supabase key to disclose billing information including MAU, bandwidth, storage, and build time limits for any organization.
AnalysisAI
Unauthenticated cross-tenant information disclosure in Capgo before 12.128.2 exposes billing plan metadata for arbitrary organizations via an improperly authorized Supabase RPC function. Any network-accessible attacker possessing only the public Supabase anon key can call the public.get_current_plan_max_org endpoint with any organization UUID to retrieve MAU limits, bandwidth, storage, and build time plan data belonging to unrelated tenants. No active exploitation is confirmed by CISA KEV, and no public exploit code has been identified at time of analysis.
Technical ContextAI
Capgo is an open-source live update delivery platform for Capacitor-based mobile applications, built on Supabase - a Postgres-backed backend-as-a-service that exposes database functions as REST API endpoints. The vulnerable function public.get_current_plan_max_org resides in the public Supabase schema, which is intentionally accessible using the client-embeddable anon key. CWE-285 (Improper Authorization) identifies the root cause: the RPC function omits any check verifying that the calling user is a member of, or authorized to query, the organization whose UUID is supplied as the parameter. Because Supabase row-level security or function-level caller validation was absent, the function acts as an unrestricted lookup across all tenant records. Affected product is identified by CPE cpe:2.3:a:capgo:capgo:*:*:*:*:*:*:*:* covering all versions prior to 12.128.2.
RemediationAI
Upgrade Capgo to version 12.128.2 or later, which patches the authorization logic in the public.get_current_plan_max_org RPC function to enforce caller-organization ownership checks. The fix is documented in the vendor security advisory at https://github.com/Cap-go/capgo/security/advisories/GHSA-v3jp-r95g-x4mm. For self-hosted Capgo deployments unable to upgrade immediately, a compensating control is to apply a Supabase row-level security policy or rewrite the RPC function body to validate that the authenticated caller's organization UUID matches the requested parameter before returning data; this requires direct Supabase database access and carries the trade-off of requiring ongoing maintenance as the schema evolves. Alternatively, restricting network-level access to the Supabase API to known client IP ranges can reduce exposure, but this may conflict with the platform's design as a mobile delivery service serving variable client IPs.
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-285 – Improper Authorization
View allSame technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-38370