---
id: CVE-2026-100618
title: >-
  Capgo (capgo.app) is affected by an authorization flaw in the app icon update
  path
summary: >-
  Capgo (capgo.app) is affected by an authorization flaw in the app icon update
  path. The PUT /app/:id endpoint accepts a user-controlled `icon` value,
  normalizes it, and stores it in public.apps.icon_url without verifying that
  the image p…
severity: high
cvss: 8.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:H/A:N'
cwe:
  - CWE-639
vendor: Cap-go
product: capgo.app
affected:
  - capgo.app
published: '2026-09-26'
updated: '2026-09-26'
sourceUpdated: '2026-09-26T14:16:42.600'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-100618'
references:
  - url: >-
      https://github.com/Cap-go/capgo.app/security/advisories/GHSA-669c-gwrr-hc53
    label: disclosure@vulncheck.com
  - url: >-
      https://www.vulncheck.com/advisories/capgo-app-icon-update-privilege-escalation-via-service-role-worker
    label: disclosure@vulncheck.com
tags:
  - nvd
  - cve.org
ingestedAt: '2026-09-26T13:33:20.931Z'
---

## Overview

Capgo (capgo.app) is affected by an authorization flaw in the app icon update path. The PUT /app/:id endpoint accepts a user-controlled `icon` value, normalizes it, and stores it in public.apps.icon_url without verifying that the image path belongs to the target app's own image namespace (e.g. org/{owner_org}/{app_id}/...). Updating apps.icon_url fires the on_app_update trigger, whose worker reads record.icon_url and calls cleanStoredImageMetadata(), which runs with service-role credentials (supabaseAdmin()) and downloads and re-uploads the referenced storage object with upsert: true. As a result, an authenticated holder of an app-limited write API key can cause the privileged worker to rewrite an out-of-scope private image object (for example an organization logo) that the key cannot read or write directly under Supabase Storage RLS. All versions are affected; no patched version was available at the time of the advisory.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
