VYPR
Unrated severityNVD Advisory· Published Jun 23, 2026· Updated Jun 23, 2026

Capgo - Information Disclosure via Unauthenticated /updates defaultChannel Parameter

CVE-2026-56322

Description

Capgo before 12.128.2 contains an information disclosure vulnerability in the unauthenticated /updates endpoint that resolves the defaultChannel parameter before enforcing privacy restrictions, allowing attackers to enumerate private channels and leak version/config state. Unauthenticated attackers can probe private channel names and distinguish valid channels from nonexistent ones based on response differences, revealing assigned bundle versions and platform-specific configuration details.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

Affected products

1

Patches

Vulnerability mechanics

Root cause

"The defaultChannel parameter is resolved by name before privacy/self-set restrictions are enforced, allowing unauthenticated callers to probe private channel existence and extract channel-specific metadata."

Attack vector

An unauthenticated attacker sends a POST request to the `/updates` endpoint with a caller-controlled `defaultChannel` parameter. The endpoint resolves the channel name before enforcing privacy checks, so the attacker can distinguish valid private channels from nonexistent ones based on differences in the error, version, and major fields of the JSON response [ref_id=1]. For valid private channels, the response also reveals the assigned bundle version and configuration details such as whether the platform is disabled or whether the update would be a major-version upgrade [CWE-200].

Affected code

The vulnerability resides in `capgo/supabase/functions/_backend/utils/pg.ts` (lines 709–710) where the `defaultChannel` parameter is resolved by `app_id` and channel name without requiring the channel to be public or self-settable, and in `capgo/supabase/functions/_backend/utils/update.ts` (lines 165–173, 226–233, 243–250) where the resolved channel is used to generate denial responses that leak channel-specific metadata before the privacy restriction is enforced at lines 253–259 [ref_id=1].

What the fix does

The advisory does not include a patch diff, but the recommended fix is to move the privacy/self-set restriction check before the channel resolution result is used to generate denial responses [ref_id=1]. By enforcing access controls on the resolved channel before any branch-specific metadata is returned, the `/updates` endpoint would no longer distinguish between nonexistent channels and private channels, and would not leak version or configuration state for channels the caller is not authorized to see.

Preconditions

  • inputThe attacker must know or guess a valid app_id for a Capgo-managed application.
  • networkThe target /updates endpoint must be publicly accessible without authentication.

Generated on Jun 24, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

2

News mentions

0

No linked articles in our index yet.