CVE-2026-88863: Improper Privilege Management in Cap-go capgo.app
capgo.app (npm package `capgo`) through version 12.207.1 does not compare the caller's role rank against the requested role in the validateInvite() function of supabase/functions/_backend/private/invite_new_user_to_org.ts. The POST /private/invite_new_user_to_org endpoint only requires the org.update_user_roles permission for org_super_admin invitations, so an authenticated user holding only the org.invite_user permission (e.g., an org_member) can invite an external user as org_admin or org_billing_admin. When the invited account accepts the invitation via POST /private/accept_invitation, ensureOrgMembership creates the role binding using the Supabase service-role key, which bypasses the prevent_role_binding_priority_escalation and check_org_user_privileges database triggers. This allows privilege escalation resulting in full administrative control over the organization's apps, channels, members, and billing. The issue is addressed by pull request #3096, which compares the inviter's rank before permitting elevated invitations.
AI Analysis
Technical Summary
capgo.app versions up to 12.207.1 contain an improper privilege management vulnerability in the validateInvite() function located in supabase/functions/_backend/private/invite_new_user_to_org.ts. The POST /private/invite_new_user_to_org endpoint requires only org.update_user_roles permission for org_super_admin invitations, but does not verify the inviter's role rank against the requested role. Consequently, an authenticated user with org.invite_user permission can invite external users as org_admin or org_billing_admin. Upon acceptance of the invitation via POST /private/accept_invitation, the ensureOrgMembership function creates the role binding using the Supabase service-role key, bypassing database triggers that prevent role escalation. This allows privilege escalation to full administrative control over the organization's apps, channels, members, and billing. The vulnerability is fixed by pull request #3096, which enforces role rank comparison before allowing elevated invitations.
Potential Impact
An attacker with authenticated access and the org.invite_user permission can escalate privileges by inviting external users with higher roles such as org_admin or org_billing_admin. This leads to full administrative control over the organization's applications, communication channels, membership, and billing information. The vulnerability compromises the integrity and confidentiality of organizational resources.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. The issue is addressed by pull request #3096, which adds role rank comparison before permitting elevated invitations. Until an official fix is released, restrict permissions to trusted users and monitor invitation activities closely.
CVE-2026-88863: Improper Privilege Management in Cap-go capgo.app
Description
capgo.app (npm package `capgo`) through version 12.207.1 does not compare the caller's role rank against the requested role in the validateInvite() function of supabase/functions/_backend/private/invite_new_user_to_org.ts. The POST /private/invite_new_user_to_org endpoint only requires the org.update_user_roles permission for org_super_admin invitations, so an authenticated user holding only the org.invite_user permission (e.g., an org_member) can invite an external user as org_admin or org_billing_admin. When the invited account accepts the invitation via POST /private/accept_invitation, ensureOrgMembership creates the role binding using the Supabase service-role key, which bypasses the prevent_role_binding_priority_escalation and check_org_user_privileges database triggers. This allows privilege escalation resulting in full administrative control over the organization's apps, channels, members, and billing. The issue is addressed by pull request #3096, which compares the inviter's rank before permitting elevated invitations.
CVSS v4.0
Score 8.6high
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
capgo.app versions up to 12.207.1 contain an improper privilege management vulnerability in the validateInvite() function located in supabase/functions/_backend/private/invite_new_user_to_org.ts. The POST /private/invite_new_user_to_org endpoint requires only org.update_user_roles permission for org_super_admin invitations, but does not verify the inviter's role rank against the requested role. Consequently, an authenticated user with org.invite_user permission can invite external users as org_admin or org_billing_admin. Upon acceptance of the invitation via POST /private/accept_invitation, the ensureOrgMembership function creates the role binding using the Supabase service-role key, bypassing database triggers that prevent role escalation. This allows privilege escalation to full administrative control over the organization's apps, channels, members, and billing. The vulnerability is fixed by pull request #3096, which enforces role rank comparison before allowing elevated invitations.
Potential Impact
An attacker with authenticated access and the org.invite_user permission can escalate privileges by inviting external users with higher roles such as org_admin or org_billing_admin. This leads to full administrative control over the organization's applications, communication channels, membership, and billing information. The vulnerability compromises the integrity and confidentiality of organizational resources.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. The issue is addressed by pull request #3096, which adds role rank comparison before permitting elevated invitations. Until an official fix is released, restrict permissions to trusted users and monitor invitation activities closely.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- VulnCheck
- Date Reserved
- 2026-09-10T11:23:56.027Z
- Cvss Version
- 4.0
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 6aa2af3dacd9273b4925941f
Added to database: 09/10/2026, 13:23:09 UTC
Last enriched: 09/10/2026, 14:11:49 UTC
Last updated: 09/10/2026, 16:52:28 UTC
Views: 2
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.