Capgo - Denial of Service via Unlimited Demo App Creation
Description
Capgo before 12.128.2 contains a denial of service vulnerability in the POST /app/demo endpoint that allows authenticated users with org write permissions to create unlimited demo applications without rate limiting or quota enforcement. Attackers can repeatedly invoke this endpoint to generate approximately 138 database write operations per request, causing degraded performance, increased costs, and potential service instability.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Affected products
1Patches
Vulnerability mechanics
Root cause
"Missing rate limiting and quota enforcement on the POST /app/demo endpoint allows authenticated users to create unlimited demo applications, each triggering ~138 database write operations."
Attack vector
An authenticated user with org write permissions can repeatedly send POST requests to `https://api.capgo.app/app/demo` with a valid `owner_org` and API key. Each request triggers approximately 138 database write operations across tables such as `apps`, `app_versions`, `manifest`, `channels`, `deploy_history`, `devices`, `daily_mau`, `daily_bandwidth`, `daily_storage`, `daily_version`, and `build_requests` [ref_id=1]. Because no rate limiting or quota enforcement exists, an attacker can exhaust database resources, degrade performance for legitimate users, and increase storage/compute costs [CWE-770] [ref_id=1].
Affected code
The vulnerability resides in `supabase/functions/_backend/public/app/demo.ts` — specifically the `createDemoApp()` handler for the `POST /app/demo` endpoint. The handler only checks that the user has an `owner_org` and `write` permission via `hasOrgRight(..., 'write')`, but applies no rate limiting, quota enforcement, or plan checks before performing ~138 database write operations per request using the `supabaseAdmin` service-role client.
What the fix does
The advisory recommends enforcing plan quotas before demo app creation, adding strict per-user and per-org rate limiting (e.g., 1 per hour/day), moving heavy demo-data generation to an async job with bounded work, and optionally restricting demo creation to UI-only flows [ref_id=1]. No patch diff is provided in the bundle, so the exact code changes are not visible; the remediation guidance focuses on preventing unlimited write amplification by introducing rate limits and quota checks.
Preconditions
- authAttacker must have a valid API key (capgkey) and an org ID for which they hold write permission.
- networkThe target server must be reachable at the POST /app/demo endpoint.
- configNo rate limiting or quota enforcement must be active on the endpoint (which is the case in the vulnerable version).
Generated on Jun 23, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
2- github.com/Cap-go/capgo/security/advisories/GHSA-q2xx-6h9x-43fwmitrevendor-advisory
- www.vulncheck.com/advisories/capgo-denial-of-service-via-unlimited-demo-app-creationmitrethird-party-advisory
News mentions
0No linked articles in our index yet.