<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Oras — CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/vendors/oras/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Tue, 19 May 2026 15:48:26 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/vendors/oras/feed.xml" rel="self" type="application/rss+xml"/><item><title>ORAS Java SDK Path Traversal Vulnerability via Malicious Image Title Annotation</title><link>https://feed.craftedsignal.io/briefs/2026-05-oras-path-traversal/</link><pubDate>Tue, 19 May 2026 15:48:26 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-05-oras-path-traversal/</guid><description>The `pullArtifact` methods in `Registry` and `OCILayout` use the `org.opencontainers.image.title` annotation from a pulled manifest as a filename, resolving it against the caller supplied output directory without normalization or a containment check, allowing a manifest publisher to write blobs outside of the intended target directory.</description><content:encoded><![CDATA[<p>The ORAS (OCI Repository As Storage) Java SDK is vulnerable to a path traversal issue in the <code>pullArtifact</code> methods of the <code>Registry</code> and <code>OCILayout</code> classes. This vulnerability arises because the SDK uses the <code>org.opencontainers.image.title</code> annotation from a pulled OCI manifest as a filename without proper sanitization. An attacker who can publish a malicious OCI manifest with a crafted <code>org.opencontainers.image.title</code> annotation can cause the SDK to write a layer&rsquo;s blob to an arbitrary location accessible to the JVM process. This issue affects versions 0.6.1 and earlier of the <code>oras-java-sdk</code>. Exploitation can lead to arbitrary file writes, potentially overwriting critical system files or introducing malicious code.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An attacker crafts a malicious OCI manifest.</li>
<li>The attacker sets the <code>org.opencontainers.image.title</code> annotation within a layer of the crafted manifest to a path that includes directory traversal sequences (e.g., <code>../../</code>) or an absolute path.</li>
<li>The attacker publishes the malicious OCI manifest to a registry.</li>
<li>A victim application uses the ORAS Java SDK to pull an artifact from the registry using <code>Registry.pullArtifact</code> or <code>OCILayout.pullArtifact</code>.</li>
<li>The <code>pullArtifact</code> method retrieves the layer&rsquo;s blob and its associated metadata, including the malicious <code>org.opencontainers.image.title</code> annotation.</li>
<li>The SDK uses <code>Path.resolve</code> to combine the user-supplied output directory with the malicious path from the <code>org.opencontainers.image.title</code> annotation.</li>
<li>The SDK attempts to copy the layer&rsquo;s blob to the resolved path using <code>Files.copy</code> with the <code>REPLACE_EXISTING</code> option.</li>
<li>Due to the path traversal or absolute path in the annotation, the blob is written to a location outside the intended output directory, potentially overwriting existing files.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of this vulnerability allows an attacker to write arbitrary files to locations accessible to the JVM process running the ORAS Java SDK. This could lead to:</p>
<ul>
<li>Overwriting critical system files, causing denial of service.</li>
<li>Writing malicious code (e.g., a web shell) to a location where it can be executed, leading to remote code execution.</li>
<li>Compromising the integrity of data stored by the application using the ORAS Java SDK.
The severity is high due to the potential for remote code execution and the ease of exploitation by simply publishing a malicious manifest.</li>
</ul>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Upgrade to a patched version of the <code>oras-java-sdk</code> that addresses this vulnerability (versions later than 0.6.1).</li>
<li>As a temporary mitigation, implement input validation on the <code>org.opencontainers.image.title</code> annotation before passing it to the <code>pullArtifact</code> method.</li>
<li>Deploy the Sigma rule &ldquo;Detect ORAS Java SDK Path Traversal Attempt via Image Title&rdquo; to detect potential exploitation attempts.</li>
<li>Monitor network traffic for connections to known malicious container registries.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">threat</category><category>path-traversal</category><category>oras</category><category>java</category></item></channel></rss>