CVE-2026-100627: Capgo bundle promotion API channel RBAC deny override bypass

Published Sep 26, 2026
·
Updated

Capgo (Cap-go/capgo.app) server backend Supabase functions contain an incorrect authorization flaw in the API-key bundle promotion path. The PUT /bundle endpoint, available to "all" and "write" API keys, dispatches to setChannel, which authorizes with checkPermission(c, 'channel.promotebundle', { appId: body.appid }) and omits the request's channelid. Because the omitted scope field is passed to rbaccheckpermissiondirect as SQL NULL, and channel-scope override evaluation is gated on pchannelid IS NOT NULL, per-channel allow/deny overrides are never evaluated. A principal holding app-level channel.promotebundle (granted by default to the appdeveloper and appuploader roles) can therefore promote a bundle to a channel for which an explicit per-channel deny override exists, updating public.channels.version for the supplied channelid; the target channel is only validated after authorization. The issue is confirmed on main at commit de66fa51e7ff2f50283cc1455c3d80ab3eb0ae43 and likely earlier versions; no patched version is known at the time of publication.

Affected Software

1 affected component
Capgo Capgo

Event History

Sep 26, 2026
CVE Published
via MITRE·01:23 PM
Data Sourced
via MITRE·01:23 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·02:16 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Which principals can bypass a channel-specific deny override?

A principal needs app-level channel.promote_bundle permission and an API key with either the "all" or "write" capability. The app_developer and app_uploader roles receive the required app-level permission by default.

2

Are deployments using explicit per-channel deny overrides still exposed?

Yes. The affected authorization path does not evaluate channel-scope allow or deny overrides, so an explicit deny for the target channel does not prevent a permitted app-level principal from promoting a bundle to it.

3

What can an attacker change through this issue?

They can promote a bundle to a supplied channel and update that channel's public.channels.version value. The target channel is validated only after the authorization decision.

4

Is a patched version available?

No patched version is known at the time of publication. The issue is confirmed on main at commit de66fa51e7ff2f50283cc1455c3d80ab3eb0ae43 and is likely present in earlier versions.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203