CVE-2026-48702 Rekor has an OOM Condition due to Unbounded gzip Decompression in Alpine APK Parsing Logic

High 7.5 Published Updated

An attacker can cause a denial of service in Rekor by submitting a crafted Alpine APK file that triggers unbounded memory consumption during gzip decompression.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-48702?

CVE-2026-48702 is a high-severity denial of service vulnerability in sigstore rekor, published on 13 Aug 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

Rekor is a software supply chain transparency log. Starting in version 0.3.0 and prior to version 1.5.2, the `Package.Unmarshal()` function in `pkg/types/alpine/apk.go` decompresses the signature and control gzip members of an APK file into in-memory buffers without bounding the total decompressed size. The existing `max_apk_metadata_size` check (default 1MB) is only applied to individual tar entry header sizes after decompression completes, so it does not prevent a decompression bomb from consuming unbounded heap memory. An attacker can craft a gzip stream that compresses at a ~1000:1 ratio (e.g., 2MB compressed zeros → 2GB decompressed). When submitted as spec.package.content in an Alpine `ProposedEntry`, the server decompresses the full payload into memory during request processing, triggering a fatal Go runtime out-of-memory error or OS OOM-kill that cannot be caught by the server's recover() middleware. This is reachable via two unauthenticated endpoints, `POST /api/v1/log/entries (createLogEntry)` and `POST /api/v1/log/entries/retrieve (searchLogQuery)`. Both invoke `V001Entry.Canonicalize()` → `fetchExternalEntities()` → `apk.Unmarshal(packageData)`, which performs the unbounded decompression. Version 1.5.2 patches the issue. There is no effective workaround. Setting `max_request_body_size` reduces but does not eliminate exposure due to the ~1000:1 compression ratio (a 1MB body limit still allows ~1GB heap allocation). Setting `max_apk_metadata_size` has no effect on this vulnerability since the check is applied after decompression.

Weakness: CWE-770

Which versions are affected by CVE-2026-48702?

3 open source packages ship an affected version, including github.com/sigstore/rekor.

PackageAffectedFixed in
github.com/sigstore/rekor GoFrom 0.3.01.5.2
github.com/sigstore/rekor GoFrom 0.3.01.5.2
github.com/sigstore/rekor GoFrom 0.3.01.5.2
Linux distribution packages (1)
hauler openSUSE:TumbleweedAll versions2.0.1-1.1

How do I fix CVE-2026-48702?

Upgrade github.com/sigstore/rekor to 1.5.2 or later.

Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.

Is CVE-2026-48702 being exploited?

There is no known exploitation of CVE-2026-48702 in the wild and no public exploit code.

Sources

Also known as CLEANSTART-2026-BT80684, CLEANSTART-2026-UK76839, DEBIAN-CVE-2026-48702, GHSA-47q9-m4ww-924m, GO-2026-5778, MINI-262p-9mfq-x47r and 69 more.

Is CVE-2026-48702 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free