Summary
CVE-2026-56303 is a high-severity information disclosure vulnerability in Capgo, an open-source live update platform for Ionic/Capacitor mobile applications. The flaw resides in the find_apikey_by_value PostgreSQL function, which is marked SECURITY DEFINER and granted execution rights to the unauthenticated anon database role, exposing sensitive API key metadata to any remote attacker via an unauthenticated REST endpoint. The vulnerability is rated CVSS 4.0: 8.7 (High) and was addressed in version 12.128.2.
Technical details
- Root cause: The
find_apikey_by_valuePostgreSQL function is markedSECURITY DEFINER, meaning it executes with the elevated privileges of its definer rather than the calling user. Execution rights on this function are granted to theanonrole — the role used by PostgREST for unauthenticated connections — with no authentication token required. - Trigger conditions: An attacker sends an unauthenticated POST request to
/rest/v1/rpc/find_apikey_by_valuesupplying a valid API key value as the function parameter. Possession of a valid API key value is the only prerequisite, making this a targeted rather than opportunistic exploit. - Attack vector: Network-accessible HTTP POST to the PostgREST RPC endpoint on any internet-facing self-hosted Capgo deployment. No authentication header or session token is required.
- Impact: A successful call returns sensitive API key metadata, including the associated
user_id, key mode, organizational scoping, and expiration details (CVSS VC:H). This data can be chained with other unauthenticated Capgo RPC endpoints — such asget_orgs_v6andget_identity_apikey_only, also fixed in version 12.128.2 — to enumerate organization memberships, management email addresses (PII), roles, and subscription metadata, enabling further unauthorized access or privilege escalation. Multiple related CVEs were disclosed simultaneously (CVE-2026-56235, CVE-2026-56242, CVE-2026-56243, CVE-2026-56316), reflecting systematic research that confirms a broad unauthenticated attack surface across Capgo’s PostgREST API layer.
Affected software
- Capgo — all versions prior to 12.128.2 (self-hosted deployments exposing the PostgREST REST API to the internet)
Severity
- CVSS v4.0: 8.7 (High) —
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N - CVSS v3.1: 7.5 (High) —
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - CWE: CWE-200 — Exposure of Sensitive Information to an Unauthorized Actor
Mitigation and recommended actions
- Immediate: Upgrade to Capgo version 12.128.2 or later, which revokes the
EXECUTEprivilege on the affectedSECURITY DEFINERfunctions from theanonrole. - If immediate patching is not possible: Restrict public network access to the PostgREST
/rest/v1/rpc/path at the firewall or reverse proxy level. Additionally, revokeEXECUTErights onfind_apikey_by_value(and related SECURITY DEFINER functions) from theanondatabase role directly. Review and rotate any API keys that may have been queried or disclosed.
IONIX Status
The IONIX research team is tracking ongoing exploitation attempts and recommends immediate patching. Potentially affected assets are outlined in this post.

