/

CVE-2026-100615

Severity:

HIGH RISK

(8.8)

Authorization Bypass (CWE-269) in Cap-go API Key Manager

CVE-2026-100615

Deferred

Vulnerability type

Category:

Improper Authorization

CWE:

CWE-269

Impact:

Privilege Escalation and Account Takeover

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

A privilege-validation flaw in Cap-go allows an apikey_manager to rotate a sibling API key belonging to a higher-privileged org_super_admin principal. The attacker may then recover the replacement plaintext credential and use it to authenticate with the higher-privileged identity.

Affected context

The issue occurs in Cap-go deployments where API keys can be enumerated and rotated through the API, and where an apikey_manager can target keys owned by the same organization. Risk is present when the rotation endpoint does not independently verify that the caller has sufficient privilege for the specific target key.

Exploit preconditions

  • Attack surface: Cap-go API key enumeration and rotation endpoints
  • Required access: An authenticated account with the apikey_manager role
  • Target condition: A higher-privileged sibling API key owned within the same organizational scope
  • Trigger point: A request to the API key rotation endpoint
  • Why exploitation is possible: The service validates the caller's general role but does not adequately authorize rotation of the selected target key or protect the returned replacement secret

Why this happens

The underlying bug is an object-level authorization failure in API key management. The rotation operation trusts the caller's broad apikey_manager role without enforcing a target-specific privilege check, allowing access to a more sensitive sibling credential.

This behavior maps to CWE-269: Improper Privilege Management, because a lower-privileged principal can perform a privileged operation and obtain credentials associated with a higher-privileged identity.

Potential impact

  • An attacker may obtain a higher-privileged API credential
  • The attacker could authenticate as an org_super_admin
  • Organizational data and administrative settings may be exposed or modified
  • Existing access controls could be bypassed through credential reuse
  • Compromised credentials may enable persistence or further lateral movement

General mitigation guidance

Mitigation generally focuses on enforcing authorization for the specific API key being managed rather than relying only on the caller's role.

Common defensive patterns include:

  • Applying target-level ownership and privilege checks before rotation
  • Preventing lower-privileged roles from rotating or revealing stronger credentials
  • Treating replacement secrets as sensitive and minimizing plaintext exposure
  • Using secure secret-delivery mechanisms with narrowly scoped, time-limited access
  • Applying least privilege to API roles and separating key administration from organization administration
  • Recording and reviewing key enumeration, rotation, and secret-retrieval events

How teams detect issues like this

Organizations can identify similar authorization flaws through:

  • Static analysis and review rules requiring object-level authorization on key-management operations
  • Code review checks for role-only authorization without target-resource validation
  • Tests that attempt cross-privilege access within the same organization
  • API policy enforcement preventing lower-privileged identities from rotating stronger keys
  • Monitoring unusual key enumeration, rotation frequency, and plaintext secret retrieval
  • Automated security testing that validates authorization decisions for every target resource

Sources

SourceLink
github.comgithub.com/Cap-go/capgo.app/security/advisories/GHSA-8h52-44r7-w343
vulncheck.comvulncheck.com/advisories/cap-go-capgo-app-before-12.267.1-privilege-escalation-via-api-key-rotation

Frequently asked

questions

It may be exploitable remotely through the Cap-go API when an attacker has a valid session or credential for an account with the apikey_manager role.

The attacker needs authenticated access as an apikey_manager and a target context in which higher-privileged sibling API keys can be enumerated or selected.

Enforce authorization against the specific target key before rotation, ensuring that the caller cannot manage credentials with greater privilege than the caller is allowed to administer.

Use object-level authorization tests, minimize plaintext secret handling, separate administrative roles, and monitor key-management operations for unusual cross-privilege activity.

Find out what's already
exploitable in your codebase.