/

CVE-2026-100617

Severity:

HIGH RISK

(8.8)

Missing Authorization (CWE-862) in Cap-go Channels

CVE-2026-100617

Deferred

Vulnerability type

Category:

Missing Authorization

CWE:

CWE-862

Impact:

Unauthorized privilege assignment and cross-organization access

Severity:

HIGH RISK

(8.8)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

Cap-go does not sufficiently verify that users named in channel_permission_overrides belong to the relevant organization. An authenticated application or organization administrator may therefore grant channel-scoped permissions to users outside the organization, potentially enabling unauthorized access or actions.

Affected context

The issue occurs in Cap-go deployments that use channel permission overrides and accept administrator-controlled principal identifiers without confirming their membership in the target organization. It becomes risky when an authenticated app or organization administrator can create or modify override records containing external user UUIDs.

Exploit preconditions

  • Attack surface: Channel permission override management
  • Required access: Authenticated application or organization administrator privileges
  • Trigger point: Creation or modification of a channel permission override
  • Required condition: The submitted principal identifier is not checked against organization membership
  • Why exploitation is possible: Authorization decisions rely on an externally supplied user identifier without enforcing the organization boundary

Why this happens

The underlying bug is a missing authorization check when permission override records are created. The application accepts a principal identifier and applies channel-scoped permissions without verifying that the referenced user is a member of the organization governing the channel. This behavior maps to CWE-862, Missing Authorization, because a required access-control decision is omitted at the point where privileges are assigned.

Potential impact

  • An administrator may grant channel permissions to users outside the organization
  • External users could gain access to channel-scoped capabilities
  • Unauthorized users may be able to promote bundles or perform other privileged channel actions
  • Organization boundaries and audit assumptions could be weakened

General mitigation guidance

Mitigation generally centers on enforcing organization membership as a

server-side authorization invariant for every permission override operation.

Common defensive patterns include:

  • Resolve the principal through a trusted identity record rather than trusting an arbitrary UUID
  • Verify that the principal and target channel belong to the same organization before writing an override
  • Apply deny-by-default authorization checks at both record creation and permission evaluation
  • Restrict override-management capabilities using least privilege
  • Use database constraints or policy enforcement to preserve tenant and organization boundaries
  • Record and review changes to channel permissions, especially those affecting privileged actions

How teams detect issues like this

Detection approaches may include:

  • Static analysis and code review checks for authorization decisions based solely on caller-supplied user identifiers
  • Review of all channel permission override paths for organization-membership validation
  • Queries and alerts for override rows whose principals are not members of the associated organization
  • Policy tests covering cross-organization identifiers and tenant-boundary violations
  • Audit monitoring for grants of privileged channel permissions to previously unrelated users
  • Neutral automated application-security review tools that identify missing access-control checks

Sources

SourceLink
github.comgithub.com/Cap-go/capgo.app/security/advisories/GHSA-626c-p6fq-3whq
vulncheck.comvulncheck.com/advisories/cap-go-capgo-app-authorization-bypass-via-channel-permission-overrides

Frequently asked

questions

Exploitation generally requires authenticated application or organization

administrator privileges capable of creating or changing channel permission

overrides.

The described attack requires authenticated administrative access. The impact

may nevertheless extend to users outside the organization if an override is

accepted for their identity.

Enforce server-side organization-membership and channel-ownership checks

before accepting an override and again when evaluating the resulting

permission.

Treat tenant and organization membership as authorization invariants, use

deny-by-default policies, test cross-tenant cases, and monitor permission

changes involving privileged actions.

Find out what's already
exploitable in your codebase.