HIGH 7.5

CVE-2026-56214: Capgo Information Disclosure via Supabase RPC Endpoints

Capgo versions before 12.128.2 leak sensitive information about organizations and their payment status through two unprotected backend functions. An attacker with only your public API key—which most applications expose by design—can ask the backend whether any given organization exists and whether they're a paying customer. This enumeration attack doesn't require authentication and can be automated to profile your entire user base or identify lucrative targets for downstream attacks.

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-20 / 2026-06-22

NVD description (verbatim)

Capgo before 12.128.2 contains an information disclosure vulnerability in Supabase PostgREST RPC endpoints is_trial_org and is_paying_org that allows unauthenticated attackers to enumerate organizations and disclose billing status using the public sb_publishable key. Attackers can invoke these endpoints to determine organization existence via distinguishable return values and identify paying customers for targeted profiling.

3 reference(s) · View on NVD →

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

Technical summary

The vulnerability exists in Supabase PostgREST RPC endpoints is_trial_org and is_paying_org, which lack proper authentication controls. These functions accept organization identifiers and return distinguishable responses indicating billing status. Because they're callable via the public sb_publishable key (a credential embedded in client-side code), an unauthenticated attacker can systematically query the API to enumerate valid organizations and determine which ones maintain active paid subscriptions. The information disclosure stems from inadequate access control on sensitive business logic endpoints (CWE-200).

Business impact

This vulnerability creates two distinct operational risks. First, attackers gain a directory of all organizations using your platform, including company names and account types—enabling targeted phishing, account takeover campaigns, or competitive intelligence gathering. Second, the ability to identify paying customers arms threat actors with a customer segmentation tool to prioritize high-value targets for extortion, supply chain attacks, or social engineering. For SaaS platforms, this erodes customer trust and can trigger compliance violations if payment information inference is considered sensitive personal data under GDPR or similar regulations.

Affected systems

Capgo versions prior to 12.128.2 are affected. The vulnerability specifically targets deployments using Supabase as the backend, exploiting unauthenticated access to the is_trial_org and is_paying_org RPC endpoints. Any instance allowing client-side code to hold the public sb_publishable key while those endpoints lack role-based access controls is vulnerable.

Exploitability

Exploitability is straightforward and requires only network access. An attacker needs no authentication, no special privileges, and no user interaction. The attack is automatable: simple HTTP requests to known endpoint paths with sequential organization identifiers or names will reliably return status information. The public availability of the sb_publishable key in most web and mobile applications means the barrier to exploitation is negligible. No patched or updated software is required on the attacker's side, making this a persistent threat until Capgo is upgraded.

Remediation

Upgrade Capgo to version 12.128.2 or later. This patch version implements proper authentication and authorization controls on the affected RPC endpoints, ensuring that only authenticated users with appropriate permissions can query is_trial_org and is_paying_org. Additionally, review Supabase Row Level Security (RLS) policies to ensure sensitive business logic endpoints always validate caller identity before returning organization or billing data. Consider rotating or restricting the scope of public API keys if enumeration has already occurred.

Patch guidance

Update Capgo to 12.128.2 or later as soon as feasible. The patch should be treated as high-priority because the vulnerability is trivial to exploit and actively enables reconnaissance. Test the upgrade in a staging environment to verify that legitimate client calls to organization and billing endpoints still function correctly after RLS policies are enforced. If you maintain custom RPC functions for similar purposes, audit those functions immediately for comparable access control gaps.

Detection guidance

Monitor Supabase PostgREST logs for repeated or sequential calls to is_trial_org and is_paying_org endpoints from unauthenticated sessions or from the same IP address. Establish a baseline of normal query patterns; enumeration attacks will typically show high call volume with varying organization parameters in a short time window. Alert on any unauthenticated RPC invocations to these endpoints. Additionally, review API gateway access logs for POST requests to /.rpc/is_trial_org and /.rpc/is_paying_org that lack authentication tokens or show abnormal distribution of organization identifiers.

Why prioritize this

This vulnerability scores CVSS 7.5 (HIGH) due to high-confidence information disclosure with no complexity barriers, affecting confidentiality of sensitive business and customer data. While direct system compromise is not possible, the attack enables sophisticated secondary exploitation. The trivial exploitability and potential for large-scale automated enumeration warrant rapid patching ahead of less-actionable vulnerabilities. Organizations with large customer bases or high-value contracts should prioritize this within 24–48 hours.

Risk score, explained

The CVSS 7.5 score reflects a network-accessible vulnerability (AV:N) with low attack complexity (AC:L), no privilege requirements (PR:N), and no user interaction (UI:N). The scope is unchanged (S:U) because the impact is confined to confidentiality of data within the application's trust boundary. Confidentiality impact is rated HIGH due to the disclosure of organization existence and billing status—information that would normally require authentication to access. Integrity and availability are unaffected. The score appropriately captures the severity while acknowledging that remote unauthenticated exploitation is trivial.

Frequently asked questions

Can we detect if our organization was already enumerated?

Not reliably via the application alone. Supabase logs may show queries to is_trial_org and is_paying_org before patching, but distinguishing reconnaissance from legitimate usage is difficult. Assume that if your deployment was public and unpatched for an extended period, enumeration may have already occurred. Focus on immediate patching and monitor for downstream suspicious activity (unusual login attempts, phishing reports).

Does upgrading to 12.128.2 automatically fix all instances, or do we need to reconfigure Supabase?

Upgrading Capgo alone is necessary but may not be sufficient. Verify that the upgrade includes updated Row Level Security policies in your Supabase database. Some deployments may require manual policy updates or explicit permission adjustments. Test in staging and consult the Capgo 12.128.2 release notes for any required configuration steps.

Is the public sb_publishable key now unsafe to use in client applications?

The key itself is designed to be public—it cannot be revoked like a secret key. The vulnerability was poor endpoint design, not key compromise. After patching, the key remains safe for legitimate client operations. However, you may wish to audit which RPC endpoints and tables your public key can access, applying least-privilege Row Level Security rules to limit exposure if future vulnerabilities are discovered.

Should we notify customers about this vulnerability?

Yes, especially if your service was unpatched for a material period and if you have high-profile or regulated customers. Transparency is important for trust. Communicate that you discovered and patched an information disclosure issue, explain the scope (organization enumeration and billing status), confirm the patch was deployed, and recommend that customers monitor for suspicious account activity or phishing. Avoid overstating the risk to client systems themselves, but be clear about the business intelligence that could have been inferred.

This analysis is based on the vulnerability disclosure published on 2026-06-20 and updated 2026-06-22. Patch availability, version numbers, and remediation steps reflect the ground-truth source data and should be verified against official Capgo and Supabase advisories before implementation. This document does not constitute legal, compliance, or operational security advice; organizations should assess risk in the context of their specific deployment and regulatory environment. No exploit code or proof-of-concept details are provided. All recommendations assume responsible disclosure practices and good-faith patching procedures. Source: NVD (public-domain), retrieved 2026-07-28. Analysis generated by SEC.co (claude-haiku-4-5).