HIGH 7.5

CVE-2026-56300: Capgo Unauthenticated API Key Validation Oracle (CVSS 7.5)

Capgo before version 12.128.2 has a security defect where two internal database functions—get_user_id and get_org_perm_for_apikey—are accessible over the network without requiring any authentication. An attacker with knowledge of Capgo's API can call these functions to test whether stolen API keys are valid, discover user identifiers and application names, and learn what permissions those keys grant. This turns a single leaked credential into a roadmap for further compromise, making credential theft significantly more damaging.

Source data · NVD / CISA · public domain

CVSS
3.1 · 7.5 HIGH · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Weaknesses (CWE)
CWE-200
Affected products
0 configuration(s)
Published / Modified
2026-06-30 / 2026-07-01

NVD description (verbatim)

Capgo before 12.128.2 contains unauthenticated security definer RPC functions get_user_id and get_org_perm_for_apikey that expose API key validity oracles and user UUID disclosure. Unauthenticated attackers using the public API key can validate leaked keys, enumerate users and apps, and determine permission levels, significantly increasing the actionability of compromised credentials.

3 reference(s) · View on NVD →

SEC.co analysis · AI-assisted, reviewed against source

Technical summary

CVE-2026-56300 is a missing authentication vulnerability in Capgo's RPC interface. Two security definer functions fail to enforce authentication checks before exposing sensitive metadata. The functions permit unauthenticated callers to (1) validate API key material against the system, (2) extract user UUIDs and organizational data, and (3) confirm permission scopes tied to those keys. The root cause is insufficient access control on privileged functions; security definer functions should validate caller identity before returning any data. This creates an oracle—an attacker can use the public API to quickly confirm which keys in a breach list are active and what they can access, removing the reconnaissance burden from a follow-up attack.

Business impact

Compromised API keys become immediately actionable without further detection risk. Attackers can validate stolen credentials in bulk, identify high-value targets (users and apps with elevated permissions), and plan targeted attacks with confidence. This amplifies the real-world damage from any credential leak affecting Capgo users. Incident response teams face increased pressure to rotate keys quickly, and organizations relying on Capgo for application deployment or CI/CD integration must assume that any key exposed in a third-party breach is now fully weaponized.

Affected systems

Capgo versions prior to 12.128.2 are affected. The vulnerability impacts all deployments of Capgo that expose the public RPC API, affecting both direct users and any downstream services or integrations that depend on Capgo's authentication model. Users running 12.128.2 or later are not vulnerable.

Exploitability

Exploitability is high. The attack requires no special privileges, no user interaction, and no complex setup—only network access to Capgo's API and knowledge of the two vulnerable function names. An attacker with a single leaked API key or even without credentials can probe the system to enumerate valid keys and users. The barrier to weaponization is exceptionally low, making this a practical risk for any organization that has experienced a credential leak from any source.

Remediation

Upgrade Capgo to version 12.128.2 or later. The patch adds authentication checks to the vulnerable RPC functions, preventing unauthenticated callers from invoking them. Organizations should treat this as urgent: rotate all API keys immediately upon patching, audit logs for any unauthorized calls to get_user_id or get_org_perm_for_apikey, and revoke keys that show signs of external use. If a credential leak is known to have occurred before patching, assume the leaked key has been tested and prioritize it for rotation.

Patch guidance

Apply Capgo version 12.128.2 or later without delay. This is not a minor update; it closes a direct attack vector on credential security. Plan deployment during your normal maintenance window but prioritize it ahead of non-urgent work. After patching, verify that the RPC functions now reject unauthenticated requests by attempting a test call to get_user_id or get_org_perm_for_apikey with no authentication token—the system should return an authentication error. Document the patch date for audit and compliance purposes.

Detection guidance

In logs and security tools, look for repeated calls to get_user_id or get_org_perm_for_apikey from external IPs or unusual API clients, especially in patterns suggesting enumeration (multiple sequential calls with different parameters). If your organization uses API key logging, flag any instance of a known-compromised key being used to call these functions before the patch was applied. Correlation between Capgo API logs and credential leak notifications is critical: any overlap indicates active exploitation.

Why prioritize this

This vulnerability scores HIGH (CVSS 7.5) because it directly amplifies the impact of credential compromise—a common and frequent occurrence. Unlike vulnerabilities requiring multi-step exploitation, this flaw turns a single leaked key into a reconnaissance tool. For any organization handling credentials or running Capgo in production, this is a direct threat that should be patched within days, not weeks. The lack of user interaction, ease of exploitation, and high confidentiality impact make it a top priority for any change control queue.

Risk score, explained

CVSS 7.5 reflects a network-accessible vulnerability with no authentication requirement (PR:N), no user interaction (UI:N), and high confidentiality impact (C:H) but no integrity or availability consequences. The attack complexity is low (AC:L), meaning standard tools and techniques suffice. The scope is unchanged (S:U), so the blast radius is confined to Capgo users. The score does not inflate based on exploit availability or active exploitation, but the practical risk is severe because leaked credentials are common and this flaw makes them immediately dangerous.

Frequently asked questions

Can this vulnerability be exploited without access to any credentials?

Partially. An attacker can call the vulnerable functions without authentication to probe for valid API keys and enumerate users. However, to extract permission details, they would need to have obtained or guessed an API key. The real risk is in an attacker combining a leaked key (from any source, including third-party breaches) with this oracle to confirm it works and learn what it can do.

How do I know if my Capgo instance has been exploited?

Check your RPC API logs for calls to get_user_id or get_org_perm_for_apikey from IPs outside your organization or from IP ranges you don't recognize. Look for patterns of repeated calls with different parameters (enumeration behavior). If you have received a credential breach notification from another service, cross-reference the timestamp with your Capgo logs around that time.

Do I need to change my API keys after patching?

Yes. You should assume any API key that existed before you patched is compromised if a credential leak is known. Rotate all keys after patching and review access logs for the period between any known leak and the patch date. If no external compromise is suspected, rotation is still recommended as a defense-in-depth measure.

Will the patch break my integrations or automations?

The patch adds authentication enforcement to two internal RPC functions. If your integrations are using standard Capgo client libraries and authentication methods, they will not be affected. However, if you have custom scripts or integrations calling get_user_id or get_org_perm_for_apikey directly without authentication, they will fail and must be updated to include proper authentication headers.

This analysis is based on the published CVE record and vendor advisory. Severity and exploitability assessments are current as of the publication date. Patch version numbers and availability should be verified directly with the Capgo vendor before deployment. Organizations should conduct internal testing before applying patches to production systems. This information is provided for security awareness and should not be used as the sole basis for compliance or remediation decisions without independent verification. Source: NVD (public-domain), retrieved 2026-08-09. Analysis generated by SEC.co (claude-haiku-4-5).