Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to Capgo platform
-
DeliveryRegister app with underscore-wildcard app_id targeting victim
-
ExploitVictim triggers preview subdomain resolution
-
ExecutionILIKE wildcard matches victim's app_id
-
ImpactPreview routing hijacked, disrupting legitimate app's preview
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V2 - Validation and Business Logic Input validation, allowlisting
|
| Exploitation Conditions | Exploitation requires a valid, authenticated Capgo account with the ability to register new applications (CVSS PR:L). The attacker must know or successfully infer the target application's app_id in order to craft a colliding identifier. Only applications using Capgo's preview subdomain feature are affected by this flaw; the description does not indicate that production subdomains or other routing mechanisms share the same vulnerable lookup path. High attack complexity (AC:H) reflects the need to precisely position underscore wildcard characters in the attacker-controlled app_id to achieve a match against the victim's identifier. Exploitation is constrained to disrupting preview availability for the targeted app; the CVSS vector (VC:N/VI:N) confirms no path to confidentiality or integrity compromise. Self-hosted Capgo deployments where the preview subdomain feature is disabled or not network-exposed are not at risk from external attackers. |
| Impact | The CVSS 4.0 base score of 2.3 (AV:N/AC:H/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N) accurately represents a low-severity, narrowly scoped vulnerability. Real-world exploitation requires an authenticated Capgo account with application-registration capability, knowledge or inference of the target app's exact app_id, and deliberate construction of a colliding identifier - all reflected in PR:L and AC:H. Impact is bounded to low-severity availability disruption of the preview subdomain feature (VA:L) with no confidentiality or integrity compromise per the CVSS vector. Notably, the intelligence tags include 'Information Disclosure,' which is not reflected in the VC:N metric; this may indicate secondary leakage - for example, confirming app_id existence through collision behavior - but this is inferred rather than confirmed by the CVE description. No EPSS data was provided in the source intelligence. No active exploitation is confirmed (CISA KEV absent), and no public proof-of-concept exploit has been identified at time of analysis. This vulnerability is low priority for most organizations but warrants timely patching by Capgo operators due to the trivial upgrade path. |
| Exploit ScenarioDerived | An authenticated Capgo user registers an application with an app_id such as 'orgXmyappXprod' where X represents any single character, which under ILIKE matching acts as a wildcard that resolves to the victim app 'org_myapp_prod' (using literal underscores). When the victim's preview subdomain request is processed, the resolver incorrectly matches the attacker's app instead of the legitimate one, disrupting preview routing for the target application. No public exploit code exists at time of analysis, but the attack is conceptually straightforward for any authenticated Capgo user with working knowledge of SQL LIKE wildcard semantics. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 22, 2026
Preview subdomain resolution in Capgo before 12.128.2 is susceptible to app-id confusion because the resolver uses PostgreSQL's ILIKE operator - which treats underscores as single-character wildcards - instead of exact equality matching for app_id lookups. An authenticated attacker who can register a Capgo application can craft an app_id with strategically placed underscores that collide with a victim application's identifier, hijacking preview subdomain resolution and breaking preview functionality for the targeted app. No public exploit code exists and no active exploitation has been confirmed (KEV absent); the CVSS 4.0 score of 2.3 reflects genuinely low real-world risk constrained by high attack complexity, required authentication, and limited availability-only impact.
RemediationAI
The primary fix is upgrading to Capgo version 12.128.2 or later, which addresses the root cause by replacing ILIKE with exact equality matching for app_id lookups in the preview subdomain resolver. The vendor security advisory at https://github.com/Cap-go/capgo/security/advisories/GHSA-cw88-ch2j-8vqj and the corroborating VulnCheck advisory at https://www.vulncheck.com/advisories/capgo-app-id-confusion-via-ilike-wildcard-in-preview-subdomain-lookup both confirm patch availability at this version. If an immediate upgrade is not feasible, a compensating control is to enforce an app_id naming policy that prohibits underscore characters in all newly registered applications, which eliminates the wildcard collision surface; however, this approach would break existing apps that already use underscores in their identifiers and would require migrating those identifiers - a significant operational trade-off. No other workaround resolves the underlying SQL metacharacter issue without a code-level change.
Affected VersionsENISA
Affected Packages
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
The vulnerability originates in Capgo's preview subdomain resolver, which performs app_id lookups using PostgreSQL's ILIKE operator (case-insensitive LIKE pattern matching). Under SQL LIKE semantics, an underscore character (_) functions as a wildcard matching any single character, and a percent sign (%) matches any sequence of characters. Because app identifiers in Capgo commonly use underscores as word separators, passing these identifiers directly into an ILIKE expression - without escaping metacharacters - causes each underscore to behave as a positional wildcard rather than a literal character. The root cause is classified as CWE-20 (Improper Input Validation): user-supplied app_id values are not sanitized or escaped before being embedded in a pattern-matching SQL query. CPE data (cpe:2.3:a:capgo:capgo:*:*:*:*:*:*:*:*) confirms all Capgo releases prior to 12.128.2 carry this flaw. The correct fix is either replacing ILIKE with an exact equality operator (=) or escaping underscore and percent metacharacters in the input before constructing the pattern.
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
CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
Exploitation requires authenticated app registration and precise wildcard app_id construction (PR:L, AC:H); impact is limited to preview availability disruption with no confidentiality or integrity effect.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
Capgo before 12.128.2 uses ILIKE pattern matching instead of exact matching for app_id lookup in the preview subdomain resolver, allowing underscore characters in app_id to act as SQL wildcards. Attackers can create apps with app_ids differing by one character at underscore positions to cause unintended pattern matches, breaking preview functionality for legitimate apps or causing app-id confusion.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Cross-domain SSO account takeover in Capgo before 12.128.2 allows an attacker with enterprise org admin access and a mal
Authentication bypass in Capgo before 12.128.2 lets remote unauthenticated attackers mint arbitrary API keys by tamperin
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
EUVD-2026-38113
GHSA-pw45-xmrx-x2w8
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB