Authorization Bypass Through User-Controlled Key Affecting github.com/project-zot/zot/pkg/storage/types package, versions <2.1.0


Severity

Recommended
0.0
medium
0
10

CVSS assessment made by Snyk's Security Team. Learn more

Threat Intelligence

EPSS
0.04% (12th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Authorization Bypass Through User-Controlled Key vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-GOLANG-GITHUBCOMPROJECTZOTZOTPKGSTORAGETYPES-7443588
  • published11 Jul 2024
  • disclosed9 Jul 2024
  • creditBlake Burkhart

Introduced: 9 Jul 2024

CVE-2024-39897  (opens in a new tab)
CWE-639  (opens in a new tab)

How to fix?

Upgrade github.com/project-zot/zot/pkg/storage/types to version 2.1.0 or higher.

Overview

Affected versions of this package are vulnerable to Authorization Bypass Through User-Controlled Key due to the GetBlob() function. An attacker can read images that the accessControl policy denies if they have read access to any other second repository.

Notes:

  1. This attack only allows accessing blobs, both config and layers, by digest. Manifests are not included.

  2. This attack requires the attacker to know the name of a private image and its layer digests.

Workaround

The attack may be mitigated by configuring dedupe: false in the "storage" settings. dedupe is enabled by default using the BoltDB cache driver.

References

CVSS Scores

version 4.0
version 3.1