LIVE LOG · entries last verified against sources between October 14 and November 6, 2026 · site updated Nov 6, 2026, 2:19 PM ET

← All incidents

Supabase Storage GHSA-8rrf-w776-x75g: signed resumable upload routes let anyone create or overwrite files in storage-api 1.80.1 and earlier

Vulnerability · Supabase Storage (storage-api) 1.80.1 and earlier, self-hosted · HIGH

Incident dateNot stated. The advisory does not say when the flaw was introduced or report any exploitation.
DisclosedOct 14, 2026 (Supabase GitHub advisory). Fix released Oct 8, 2026 in storage-api 1.80.2; self-hosted Docker 0.8.3 on Oct 16, 2026.
Added hereOct 28, 9:00 AM ET
Last verifiedOct 28, 2026

Summary

Supabase published GitHub advisory GHSA-8rrf-w776-x75g on Oct 14, 2026 for its Storage server, storage-api. The advisory says an authorization bypass in the signed resumable-upload routes "allowed unauthenticated callers to create or overwrite objects in public or private buckets", skipping row-level security. Supabase rates it Critical, CVSS 3.1 9.1, and lists no CVE. It affects storage-api 1.80.1 and earlier and is fixed in 1.80.2, which Supabase released on Oct 8. For self-hosters, Supabase's Docker setup 0.8.3 (Oct 16) updates Storage to v1.81.0 and lists this fix. The two Docker setups before it, 0.8.1 (Sep 9) and 0.8.2 (Sep 23), shipped storage-api v1.74.0, which is in the affected range. The advisory covers the storage-api software and does not mention the hosted Supabase platform. Supabase has not said whether hosted projects were affected or when the hosted service received the fix. The advisory does not report any exploitation. Supabase credits Elias Hasas (@zer0d4y5) with finding it.

Severity

HIGH High (VibeIncidents editorial rating). Supabase rates the advisory Critical, CVSS 3.1 9.1: someone with no login could create, replace or empty files in public or private buckets. We rate it a step lower because the advisory says the attacker needed to know a bucket and object name and describes uploads and overwrites, not reads (its CVSS vector rates confidentiality impact as none), the fix has been out since Oct 8, and no exploitation is reported. Our scope is self-hosted storage-api, the only setup Supabase has published version and update details for. We will revisit the rating if Supabase says the hosted platform was affected.

Kit, our email provider, gets your address only to send the newsletter. Every email has an unsubscribe link. Privacy policy.

Timeline

  1. Sep 9, 2026
    Supabase's self-hosted Docker setup 0.8.1 moves Storage to storage-api v1.74.0, per its versions.md, and 0.8.2 (Sep 23) keeps it. That version is in the affected range.
  2. Oct 8, 2026
    Supabase releases storage-api 1.80.2. Its release notes list "hardening for tus signed (#1492)", the pull request Supabase's Docker changelog links to this fix.
  3. Oct 14, 2026, 4:27 a.m. ET (08:27 UTC)
    Supabase publishes GHSA-8rrf-w776-x75g, rated Critical (CVSS 3.1 9.1), affecting storage-api 1.80.1 and earlier, patched in 1.80.2.
  4. Oct 16, 2026
    Supabase's self-hosted Docker setup 0.8.3 updates Storage to v1.81.0 and lists the fix, calling updating "strongly recommended".

How it happened

Per the advisory, signed resumable uploads, which use the TUS protocol, run on a privileged database connection, because the signed-upload token is what authorizes them rather than the caller's login token. In affected versions, Storage only checked that token when the raw request URL started with a fixed path prefix. The router and the check read some requests differently: percent-encoded paths and absolute-form request targets (a full URL in the request line) could reach the signed-upload route without matching the prefix, so no x-signature token was validated. The remaining permission check then ran on the privileged connection, so row-level security did not block the upload. The advisory says an attacker who knew a bucket and object name could create a new object or overwrite an existing one, and that a zero-byte upload could replace a file's contents with an empty file. Version 1.80.2 identifies signed uploads from the matched route instead of the raw URL and requires a valid token for the target bucket and object before processing the upload. Supabase has not said whether the hosted platform was affected or when it was patched, and we are not assuming either. We will update this entry if Supabase says.

How to check your app

Sources

Corrections and updates

None. Re-checked against every source on Oct 28, 2026.

Cite this entry
Title
Supabase Storage GHSA-8rrf-w776-x75g: signed resumable upload routes let anyone create or overwrite files in storage-api 1.80.1 and earlier
Added
Oct 28, 2026
URL
https://vibeincidents.com/incidents/supabase-storage-signed-resumable-upload-bypass-ghsa-8rrf/
Suggested citation
VibeIncidents. "Supabase Storage GHSA-8rrf-w776-x75g: signed resumable upload routes let anyone create or overwrite files in storage-api 1.80.1 and earlier." Oct 28, 2026. https://vibeincidents.com/incidents/supabase-storage-signed-resumable-upload-bypass-ghsa-8rrf/