Skip to main content

Capgo CVE-2026-56235

| EUVDEUVD-2026-38117 MEDIUM
Information Exposure (CWE-200)
2026-06-20 VulnCheck GHSA-g938-xgc8-q827
6.9
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain public Supabase API key from distributed app
  2. Delivery
    Send unauthenticated HTTP POST to PostgREST RPC endpoint
  3. Exploit
    Enumerate valid org_ids via oracle response differential
  4. Execution
    Extract cross-tenant usage telemetry (MAU, bandwidth, installs)
  5. Impact
    Enumerate app IDs for target organizations

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Data exposure prevention
MITRE ATT&CK

2 techniques across 2 tactics: Collection, Discovery

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires possession of the Capgo Supabase public API key (sb_publishable_*), which is embedded in Capacitor mobile applications distributed to end users and is not treated as a secret credential. No account registration, authentication, org membership, or elevated privilege is needed beyond this key. The attacker must have network access to reach the Supabase PostgREST HTTP endpoint, consistent with the CVSS 4.0 AV:N metric for a publicly accessible SaaS platform. Exploitation is read-only: the vulnerability grants no write, delete, or code-execution capability. Practical exploitation is further shaped by the need to discover or enumerate valid org_id values, though the differential oracle response (metrics vs. empty array) makes this enumeration feasible without additional information. The affected functions were incorrectly granted to anon by default across all Capgo deployments before 12.128.2 - no non-default configuration is required to be vulnerable.

Impact

The CVSS 4.0 score of 6.9 accurately reflects a low-complexity, unauthenticated, network-accessible information disclosure with limited confidentiality impact (VC:L). The attack requires no privileges beyond a widely distributed public API key and no user interaction, making it trivially accessible to any motivated party. Real-world impact is bounded by the sensitivity of the disclosed data: usage telemetry (MAU, bandwidth, installs, gets) rather than credentials, PII, or application code. For multi-tenant SaaS operators, however, cross-tenant leakage carries compliance exposure and competitive intelligence risk that can exceed what the CVSS numeric score implies - particularly when combined with app-ID enumeration and org-existence confirmation. The absence of CISA KEV listing and the lack of identified public exploit code keep the near-term threat level moderate. EPSS data was not provided in the source intelligence and cannot be assessed. No conflicting signals exist between the CVSS vector and the description; both consistently indicate a network-accessible unauthenticated read-only disclosure.

Exploit ScenarioDerived

An attacker extracts the sb_publishable_* Supabase API key from a decompiled or publicly distributed Capgo-powered mobile application, then issues HTTP POST requests to the PostgREST RPC endpoint for get_app_metrics with sequentially or randomly guessed org_id values. The oracle behavior - valid organizations return telemetry rows, invalid ones return an empty array - enables systematic enumeration of tenant existence followed by bulk harvesting of MAU, bandwidth, and app-ID data across all organizations on the platform. No exploit code has been publicly identified, but the attack requires only standard HTTP tooling and the public API key.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jun 22, 2026

Cross-tenant information disclosure in Capgo (cap-go/capgo) before version 12.128.2 exposes per-organization usage telemetry to any caller holding the publicly distributed Supabase API key. Three PostgREST RPC functions - get_app_metrics, get_global_metrics, and get_total_metrics - are granted to the Supabase anon role without enforcing org membership or permission checks, allowing queries against arbitrary org_id values to return MAU, bandwidth, installs, and app IDs belonging to other tenants. No active exploitation has been confirmed (not in CISA KEV) and no public exploit code has been identified at time of analysis; a vendor-released patch exists at version 12.128.2.

RemediationAI

Upgrade Capgo to version 12.128.2 or later, which is the vendor-confirmed fix per GitHub Security Advisory GHSA-gfpq-vphf-6gcm. The patch is expected to revoke anon-role EXECUTE privileges on the affected functions and enforce caller-side org membership verification - either through Supabase Row Level Security policies or JWT claim validation within the function body. For self-hosted Capgo deployments that cannot immediately upgrade, a targeted compensating control is to manually revoke the anon role's EXECUTE privilege on get_app_metrics, get_global_metrics, and get_total_metrics in PostgreSQL (REVOKE EXECUTE ON FUNCTION ... FROM anon); note this will break all anonymous metric access until the patched version is deployed. Restricting inbound access to the Supabase PostgREST endpoint at the network layer (IP allowlisting, API gateway rate limiting) can reduce exposure surface but does not eliminate the underlying authorization flaw and should not be treated as a substitute for patching.

Affected VersionsENISA

capgo 0 <12.128.2

Affected Packages

euvd capgo fix: 12.128.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Capgo is a Capacitor-based live-update platform (CPE: cpe:2.3:a:cap-go:capgo:*:*:*:*:*:*:*:*) that uses Supabase as its backend infrastructure, which exposes PostgreSQL functions as HTTP REST endpoints via PostgREST. In Supabase's permission model, the anon role is issued a non-secret, publicly embeddable project key (sb_publishable_*) intended for anonymous, unauthenticated callers, subject to Row Level Security (RLS) policies. The root cause (CWE-200: Exposure of Sensitive Information to Unauthorized Actor) is that all three RPC functions accept an org_id parameter and return that organization's telemetry without verifying the caller is a member of or authorized for that organization. Because the functions are bound to the anon role, possession of the public API key - routinely distributed inside Capacitor mobile apps - is the sole prerequisite. An additional oracle effect arises from the differential response: a valid org_id returns metric rows while an invalid one returns an empty array, enabling systematic enumeration of tenant existence.

Know when Capgo 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

Vendor (VulnCheck) PRIMARY 6.9 MEDIUM
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
vuln.today AI 5.3 MEDIUM

Network-accessible anon-role RPC using a public API key; impact limited to read-only telemetry disclosure with no integrity, availability, or scope-change effects.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Jun 20, 2026 - 17:16 EUVD

DescriptionCVE.org

Cap-go capgo before 12.128.2 contains an authorization bypass in several Supabase PostgREST RPC functions (get_app_metrics, get_global_metrics, get_total_metrics) that are granted to the anon role without enforcing org membership or permission checks. An unauthenticated attacker using only the public Supabase API key (sb_publishable_*) can query arbitrary org_id values to disclose cross-tenant usage telemetry (MAU, bandwidth, installs, gets), enumerate app IDs for a target org, and determine org existence via an oracle (valid org returns metrics, invalid returns []).

Threat Intelligence Overview

EPSS Score
0.3%
Top 81% exploitable
Social Media
1
Sightings
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment CIRCL GitHub VulDB

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

34
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Capgo

View all
CVE-2026-56081 CRITICAL
9.3 Jun 19

Account pre-registration hijack in Capgo before 12.128.2 lets a remote unauthenticated attacker claim an account under a

CVE-2026-56223 CRITICAL
9.3 Jun 24

Cross-domain SSO account takeover in Capgo before 12.128.2 allows an attacker with enterprise org admin access and a mal

CVE-2026-56073 CRITICAL
9.3 Jun 19

Authentication bypass in Capgo prior to version 12.128.2 lets attackers defeat email-based OTP verification by tampering

CVE-2026-56237 CRITICAL
9.3 Jun 24

Authentication bypass in Capgo before 12.128.2 lets remote unauthenticated attackers mint arbitrary API keys by tamperin

CVE-2026-56324 HIGH
8.8 Jun 22

Rate-limit bypass in Capgo versions prior to 12.128.2 lets remote unauthenticated attackers flood the channel_self endpo

CVE-2026-56245 HIGH
8.8 Jun 24

Cross-tenant data poisoning in Supabase Capgo before 12.128.2 allows remote unauthenticated attackers to corrupt billing

CVE-2026-56233 HIGH
8.7 Jun 30

Server-side privilege escalation in Capgo before 12.128.2 lets authenticated users holding build permissions abuse a pat

CVE-2026-56323 HIGH
8.7 Jun 22

Unauthenticated information disclosure in Capgo before 12.128.2 lets remote attackers query the /functions/v1/channel_se

CVE-2026-56238 HIGH
8.7 Jul 12

Unauthenticated information disclosure in Capgo before 12.128.2 exposes confidential business metrics through the Supaba

CVE-2026-56248 HIGH
8.7 Jun 23

Unauthenticated denial of service in Cap-go capgo (capgo-backend) before 12.128.12 allows remote attackers to exhaust Po

CVE-2026-56305 HIGH
8.7 Jul 10

Account takeover in Capgo before 12.128.2 stems from a password-change endpoint that omits current-password validation (

CVE-2026-56300 HIGH
8.7 Jun 30

Information disclosure in Capgo (Capacitor live-update/OTA platform) before 12.128.2 lets unauthenticated callers abuse

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy