<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://cve.radiocsirt.org</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Mon, 05 Oct 2026 21:26:18 +0000</lastBuildDate>
    <item>
      <title>EUVD-2026-6270</title>
      <link>https://cve.radiocsirt.org/vuln/euvd-2026-6270</link>
      <description>EUVD-2026-6270</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/euvd-2026-6270</guid>
    </item>
    <item>
      <title>fkie_cve-2024-39897</title>
      <link>https://cve.radiocsirt.org/vuln/fkie_cve-2024-39897</link>
      <description>&lt;p&gt;zot is an OCI image registry. Prior to 2.1.0, the cache driver `GetBlob()` allows read access to any blob without access control check. If a Zot `accessControl` policy allows users read access to some repositories but restricts read access to other repositories and `dedupe` is enabled (it is enabled by default), then an attacker who knows the name of an image and the digest of a blob (that they do not have read access to), they may maliciously read it via a second repository they do have read access to. 
 This attack is possible because [`ImageStore.CheckBlob()` calls `checkCacheBlob()`](https://github.com/project-zot/zot/blob/v2.1.0-rc2/pkg/storage/imagestore/imagestore.go#L1158-L1159) to find the blob a global cache by searching for the digest. If it is found, it is copied to the user requested repository with `copyBlob()`. The attack may be mitigated by configuring &amp;#34;dedupe&amp;#34;: false in the &amp;#34;storage&amp;#34; settings. The vulnerability is fixed in 2.1.0.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;zot is an OCI image registry. Prior to 2.1.0, the cache driver `GetBlob()` allows read access to any blob without access control check. If a Zot `accessControl` policy allows users read access to some repositories but restricts read access to other repositories and `dedupe` is enabled (it is enabled by default), then an attacker who knows the name of an image and the digest of a blob (that they do not have read access to), they may maliciously read it via a second repository they do have read access to. 
 This attack is possible because [`ImageStore.CheckBlob()` calls `checkCacheBlob()`](https://github.com/project-zot/zot/blob/v2.1.0-rc2/pkg/storage/imagestore/imagestore.go#L1158-L1159) to find the blob a global cache by searching for the digest. If it is found, it is copied to the user requested repository with `copyBlob()`. The attack may be mitigated by configuring &amp;#34;dedupe&amp;#34;: false in the &amp;#34;storage&amp;#34; settings. The vulnerability is fixed in 2.1.0.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/fkie_cve-2024-39897</guid>
    </item>
    <item>
      <title>GHSA-55r9-5mx9-qq7r — Cache driver GetBlob() allows read access to any blob without access control check</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-55r9-5mx9-qq7r</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: zotregistry.io/zot, Go: zotregistry.dev/zot&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;Cache driver `GetBlob()` allows read access to any blob without access control check&lt;/p&gt;
&lt;p&gt;### Details&lt;/p&gt;
&lt;p&gt;If a Zot `accessControl` policy allows users read access to some repositories but restricts read access to other repositories and `dedupe` is enabled (it is enabled by default), then an attacker who knows the name of an image and the digest of a blob (that they do not have read access to), they may maliciously read it via a second repository they do have read access to. This allows an attacker to read an image that the `accessControl` policy denies.&lt;/p&gt;
&lt;p&gt;This attack is possible because [`ImageStore.CheckBlob()` calls `checkCacheBlob()`](https://github.com/project-zot/zot/blob/v2.1.0-rc2/pkg/storage/imagestore/imagestore.go#L1158-L1159) to find the blob a global cache by searching for the digest. If it is found, it is copied to the user requested repository with `copyBlob()`.&lt;/p&gt;
&lt;p&gt;This cache behavior is intentionally used in [`RouteHandler.CreateBlobUpload()`](https://github.com/project-zot/zot/blob/v2.1.0-rc2/pkg/api/routes.go#L1194-L1197) to implement cross repository blob mount (`POST /v2/&amp;lt;name&amp;gt;/blobs/uploads/?mount=&amp;lt;digest&amp;gt;&amp;amp;from=&amp;lt;repository name&amp;gt;`) in Zot. This is still missing an access control to check read access on the source repository.&lt;/p&gt;
&lt;p&gt;This cache behavior is unexpectedly also used in [`RouteHandler.CheckBlob()`](https://github.com/project-zot/zot/blob/v2.1.0-rc2/pkg/api/routes.go#L886) too for `HEAD /v2/&amp;lt;name&amp;gt;/blobs/&amp;lt;digest&amp;gt;`. If a blob is requested that does not…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: zotregistry.io/zot, Go: zotregistry.dev/zot&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;Cache driver `GetBlob()` allows read access to any blob without access control check&lt;/p&gt;
&lt;p&gt;### Details&lt;/p&gt;
&lt;p&gt;If a Zot `accessControl` policy allows users read access to some repositories but restricts read access to other repositories and `dedupe` is enabled (it is enabled by default), then an attacker who knows the name of an image and the digest of a blob (that they do not have read access to), they may maliciously read it via a second repository they do have read access to. This allows an attacker to read an image that the `accessControl` policy denies.&lt;/p&gt;
&lt;p&gt;This attack is possible because [`ImageStore.CheckBlob()` calls `checkCacheBlob()`](https://github.com/project-zot/zot/blob/v2.1.0-rc2/pkg/storage/imagestore/imagestore.go#L1158-L1159) to find the blob a global cache by searching for the digest. If it is found, it is copied to the user requested repository with `copyBlob()`.&lt;/p&gt;
&lt;p&gt;This cache behavior is intentionally used in [`RouteHandler.CreateBlobUpload()`](https://github.com/project-zot/zot/blob/v2.1.0-rc2/pkg/api/routes.go#L1194-L1197) to implement cross repository blob mount (`POST /v2/&amp;lt;name&amp;gt;/blobs/uploads/?mount=&amp;lt;digest&amp;gt;&amp;amp;from=&amp;lt;repository name&amp;gt;`) in Zot. This is still missing an access control to check read access on the source repository.&lt;/p&gt;
&lt;p&gt;This cache behavior is unexpectedly also used in [`RouteHandler.CheckBlob()`](https://github.com/project-zot/zot/blob/v2.1.0-rc2/pkg/api/routes.go#L886) too for `HEAD /v2/&amp;lt;name&amp;gt;/blobs/&amp;lt;digest&amp;gt;`. If a blob is requested that does not…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-55r9-5mx9-qq7r</guid>
    </item>
  </channel>
</rss>
