Skip to main content
← All vulnerabilities
CVE-2026-61833GHSA-QG67-7M6V-QG25GO-2026-6527

zot: Bearer authentication maps DELETE to push scope, allowing unauthorized deletion

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 2.1.18
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: no
  • Technical impact: partial

Summary

zot is a container image and artifact registry based on the Open Container Initiative Distribution Specification. Prior to 2.1.18, the bearer authentication handler in pkg/api/authn.go maps every HTTP method other than GET and HEAD to the push action, so DELETE requests are not checked for the distinct delete permission. Bearer-authenticated requests also bypass the fine-grained DistSpecAuthzHandler path in pkg/api/authz.go, while DeleteManifest and DeleteBlob perform no independent delete-permission check. A remote attacker with a bearer token limited to pull and push actions can therefore delete manifests and blobs within the token's repository scope, making images unavailable and allowing repository history to be altered despite the token lacking delete authorization. This issue is fixed in version 2.1.18.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • project-zot zot

    fixed in 2.1.18

  • zotregistry.dev/zot/v2Go

    fixed in 2.1.18

  • zotregistry.dev/zotGo

    All versions

References 4

GitHub · project-zot/zot