Skip to main content

Capgo CVE-2026-88860

| EUVDEUVD-2026-75410 CRITICAL
Incorrect Authorization (CWE-863)
2026-09-10 VulnCheck GHSA-5rmr-6c73-3q3m
9.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Attacker granted channel override then org role revoked
  2. Delivery
    Stale override left active by cleanup bug
  3. Exploit
    Log in with retained account credentials
  4. Execution
    Invoke privileged channel action (change OTA version)
  5. Impact
    Push malicious update to production devices

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
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

Exploitation requires that the attacker previously held a channel-specific permission override in Capgo and that this override was NOT removed when their last organization role binding was deleted - the stale override is the exact prerequisite. The attacker must retain a working Capgo account/credentials for the same principal (this is an offboarding/insider-adjacent condition, not anonymous access), and the target must have used per-channel overrides rather than relying solely on base org roles. What limits exploitation: the attacker must have been a prior privileged member with a channel override (a random external attacker cannot trigger it), and organizations that never granted channel overrides, or that fully purge accounts on offboarding, are not exposed.

Impact

The provider CVSS 4.0 vector (AV:N/AC:L/PR:N/UI:N/VC:H/VI:H/VA:H, 9.3) rates this critical, but the PR:N (no privileges) metric is questionable: exploitation inherently requires an account that previously held a channel override, so the attacker authenticates as a known former member - this is an authorization escalation for an existing/expired principal, not a truly anonymous remote attack, which argues for PR:L. That nuance lowers the practical exposure somewhat, since a random internet attacker cannot trigger it - it is an insider/offboarding risk. No EPSS score, KEV listing, or public POC is provided, so there is no evidence of active exploitation or automation; the signal here is a credible vendor/VulnCheck advisory rather than observed attacks. The impact is nonetheless serious where it applies: control over production OTA channels means an attacker could ship malicious or broken updates to end-user devices, so any organization that offboards developers/contractors from Capgo should treat stale-override cleanup as a priority, and a mid-sized mobile team using Capgo for production releases should verify that revoked users no longer retain channel access. Overall: genuinely high-impact for affected deployments, but exploitation is gated on prior insider access rather than being broadly wormable.

Exploit ScenarioDerived

A contractor is granted a channel override to publish updates to a production OTA channel, then is offboarded and their organization role is deleted. Because Capgo leaves the channel override in place, the former contractor logs in with their still-valid account and pushes a malicious OTA version to production, silently delivering attacker-controlled code to all app users on that channel. No public exploit code is required - the flaw is triggered simply by exercising the retained permission through normal Capgo API/UI actions.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
No patch listed yet 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 10, 2026

Authorization bypass in Capgo (capgo.app), a live-update/OTA platform for Capacitor mobile apps, allows a de-provisioned user to retain channel-level permissions after their organization RBAC access has been revoked. Because Capgo does not clean up channel permission overrides when a user's last organization role binding is deleted, stale grants remain active - letting the former member perform privileged actions such as pushing or changing production OTA update versions. Reported by VulnCheck (GHSA-qfxq-2ch8-hjg9); no public exploit identified at time of analysis.

RemediationAI

Apply the vendor's server-side fix as described in GitHub Security Advisory GHSA-qfxq-2ch8-hjg9; the advisory does not enumerate an exact fixed release version in the provided data, so this is best characterized as a patch available per vendor advisory rather than a confirmed version number - self-hosted operators should upgrade to the latest Capgo release referenced by the advisory and cloud users should confirm with Capgo that the fix is deployed. As an immediate compensating control, audit existing channel permission overrides and manually revoke any that belong to users who no longer have an active organization role binding (this directly removes the stale grants but requires manual per-channel review). Additionally, when offboarding a user, explicitly delete their channel-specific overrides before or alongside removing their org role, and rotate/limit who can publish to production OTA channels so that a single stale override cannot change a shipped version. Consult the VulnCheck advisory (https://www.vulncheck.com/advisories/capgo-authorization-bypass-via-stale-channel-permission-overrides) for detection guidance.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

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

Technical ContextAI · show details

Capgo is a code-push / over-the-air (OTA) update service for Capacitor-based mobile applications, using a role-based access control (RBAC) model layered with per-channel permission overrides (fine-grained grants that supplement a user's base organization role). The root cause is CWE-863 (Incorrect Authorization): the deprovisioning logic removes a user's organization role binding but fails to cascade that removal to any channel-scoped permission overrides tied to the same user. When the last org role binding is deleted, the code path that should invalidate dependent channel grants does not fire, so authorization checks for those channels still resolve to 'allowed'. The affected component is identified by CPE cpe:2.3:a:cap-go:capgo.app, a cloud/SaaS-delivered application, meaning the flaw lives in Capgo's server-side authorization enforcement rather than in the mobile client.

Know when Cap Go 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 9.3 CRITICAL
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 8.8 HIGH

Network-exploitable via Capgo API/UI with low complexity, but requires a pre-existing account with a stale override (PR:L); control over production OTA versions yields high C/I/A over the affected channel.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/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
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Capgo fails to clean up channel permission overrides when a user's last organization role binding is deleted, leaving stale overrides active. Attackers can retain channel-specific permissions after their base RBAC access has been revoked to perform unauthorized actions like changing production OTA versions.

Technical POC Analysis

CWE-863 Incorrect Authorization in Capgo's Supabase backend.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Capgo, a live-update platform for Capacitor mobile apps, fails to revoke channel-level permissions when users are offboarded, allowing de-provisioned team members to continue deploying production OTA updates after organizational access is revoked. Although no public exploit has been identified at time of analysis, the absence of remediation creates immediate supply-chain risk for any organization using Capgo. No patch is currently available from the vendor.

Business Impact: Severe
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: Manually audit and explicitly revoke channel permissions for all de-provisioned users at offboarding; implement audit logging and alerting on all OTA push operations to detect deployments by inactive accounts; restrict production channel access to currently active personnel only; require multi-person approval workflow for all production OTA updates; conduct periodic access reviews to identify and purge stale permissions.

Threat Intelligence Overview

EPSS Score
0.2%
Top 94% exploitable
Prevalence
Low
niche OTA update service for Capacitor apps, limited enterprise footprint
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium

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 CRITICAL
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
CRITICAL severity
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· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
Very High

Priority Score

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

Affected Products (CPE)CVE.org

cpe:2.3:a:cap-go:capgo.app:*:*:*:*:*:*:*:*

More in Cap Go

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-88864 CRITICAL
9.3 Sep 10

Improper access control in Capgo (capgo.app) lets any holder of an ordinary full API key forge a trusted SSO provider by

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-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-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-100622 HIGH
8.7 Sep 26

Unauthenticated retrieval of deleted over-the-air update bundles from capgo.app through version 12.129.0 is possible via

CVE-2026-100623 HIGH
8.7 Sep 26

Capgo's direct exposure of the public.org_users table through Supabase PostgREST lets an authenticated user who already

CVE-2026-100619 HIGH
8.7 Sep 26

Authenticated principals who hold an app-scoped upload/write/all API key with upload+ rights - or any user granted write

CVE-2026-100614 HIGH
8.7 Sep 26

Cross-tenant metadata modification in Capgo before 12.244.1 allows an authenticated attacker to alter image object metad

CVE-2026-88862 HIGH
8.7 Sep 10

Privilege escalation in the Capgo (capgo.app) backend through version 12.242.4 allows an authenticated API key holder to

CVE-2026-100615 HIGH
8.7 Sep 26

Privilege escalation in Capgo (capgo.app) before 12.267.1 allows a principal holding the apikey_manager role to rotate a

CVE-2026-100617 HIGH
8.7 Sep 26

Authenticated administrators on Capgo (capgo.app) can grant channel-scoped permissions to non-member users because the p

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