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).
Weaknesses (CWE)
Related vulnerabilities
- CVE-2025-69755HIGHNeterbit NW-431F Router RCE and Data Exposure Vulnerability
- CVE-2026-0411HIGHNETGEAR Orbi Admin Takeover via Information Disclosure
- CVE-2026-36611HIGHMercusys AC12G Memory Disclosure Vulnerability
- CVE-2026-36719HIGHAgentChat v2.3.0 Unauthenticated Information Disclosure – Password Hash Leak
- CVE-2026-39007HIGHObserveinc Observe Unauthenticated Log Export Information Disclosure
- CVE-2026-41032HIGHNetwork Controller Unauthenticated Log File Disclosure Vulnerability
- CVE-2026-44486HIGHAxios Node.js Proxy Credential Leakage Vulnerability
- CVE-2026-44786HIGHDiscourse Chat Message Disclosure in MessageBus