Description
oras-go is a Go library for managing OCI artifacts. Prior to 2.6.1, resolveWritePath() in content/file/file.go uses a lexical filepath.Rel check for workingDir and does not account for symlink traversal, so when AllowPathTraversalOnWrite=false an attacker-controlled blob title through ocispec.AnnotationTitle such as out/pwn.txt can follow a workingDir symlink out -> /some/outside/dir and cause pushFile() to create /some/outside/dir/pwn.txt outside workingDir. This issue is fixed in version 2.6.1.
Published: 2026-07-17
Score: 6.9 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

oras-go is a Go library that manages OCI artifacts. The flaw, categorized as CWE‑22 and CWE‑73, occurs when resolveWritePath() performs a lexical path check without accounting for symbolic link traversal. An attacker who can control the blob title supplied via the ocispec.AnnotationTitle, such as out/pwn.txt, can cause pushFile() to write to a location outside the intended working directory if AllowPathTraversalOnWrite is false. This results in arbitrary file creation or modification, which can be leveraged to overwrite critical files when running with elevated privileges, potentially leading to a compromise of the host system. The CVSS score of 6.9 indicates medium severity.

Affected Systems

The vulnerability affects oras‑project’s oras-go, specifically its file content store component. All versions prior to v2.6.1 are potentially vulnerable.

Risk and Exploitability

The CVSS score of 6.9 indicates a medium severity. The EPSS score is < 1%, and the vulnerability is not listed in the KEV catalog. The likely attack vector appears to be network‑based, inferred from the description of an attacker‑controlled blob title supplied over the network, so an attacker could trigger the issue remotely. The exploit would write files outside the working directory, allowing unauthorized data modification or compromise depending on the execution context.

Generated by OpenCVE AI on August 1, 2026 at 08:16 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade oras‑go to version 2.6.1 or later, which fixes the symlink traversal issue.
  • If an upgrade is not possible, restrict blob titles to disallow traversal patterns or disable external blob uploads.
  • Implement application‑level checks to ensure file writes remain within the designated directory and reject any paths containing ‘..’ or symbolic link references.

Generated by OpenCVE AI on August 1, 2026 at 08:16 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-8xwf-rjm4-xvhv oras-go has file store write outside workingDir via symlink traversal
History

Mon, 27 Jul 2026 15:45:00 +0000

Type Values Removed Values Added
First Time appeared Oras-project
Oras-project oras-go
Vendors & Products Oras-project
Oras-project oras-go

Mon, 20 Jul 2026 19:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 17 Jul 2026 20:00:00 +0000

Type Values Removed Values Added
Description A flaw was found in oras-go. The file content store, intended to confine writes to a specified working directory, does not properly account for symbolic link (symlink) traversal. A remote attacker, by providing a specially crafted blob title, could exploit this vulnerability to create files outside the intended working directory. This filesystem boundary bypass allows for arbitrary file creation, potentially leading to unauthorized data modification or system compromise depending on the runtime environment. oras-go is a Go library for managing OCI artifacts. Prior to 2.6.1, resolveWritePath() in content/file/file.go uses a lexical filepath.Rel check for workingDir and does not account for symlink traversal, so when AllowPathTraversalOnWrite=false an attacker-controlled blob title through ocispec.AnnotationTitle such as out/pwn.txt can follow a workingDir symlink out -> /some/outside/dir and cause pushFile() to create /some/outside/dir/pwn.txt outside workingDir. This issue is fixed in version 2.6.1.
Title oras-go: oras-go: File store write outside working directory via symlink traversal oras-go: file store write outside workingDir via symlink traversal
Weaknesses CWE-73
References
Metrics cvssV4_0

{'score': 6.9, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N'}


Tue, 14 Jul 2026 00:15:00 +0000

Type Values Removed Values Added
Description A flaw was found in oras-go. The file content store, intended to confine writes to a specified working directory, does not properly account for symbolic link (symlink) traversal. A remote attacker, by providing a specially crafted blob title, could exploit this vulnerability to create files outside the intended working directory. This filesystem boundary bypass allows for arbitrary file creation, potentially leading to unauthorized data modification or system compromise depending on the runtime environment.
Title oras-go: oras-go: File store write outside working directory via symlink traversal
Weaknesses CWE-22
References
Metrics threat_severity

None

cvssV3_1

{'score': 5.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N'}

threat_severity

Moderate


Subscriptions

Oras-project Oras-go
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-20T18:18:44.172Z

Reserved: 2026-06-03T20:54:20.432Z

Link: CVE-2026-50162

cve-icon Vulnrichment

Updated: 2026-07-20T18:18:25.518Z

cve-icon NVD

No data.

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-07-01T21:35:45Z

Links: CVE-2026-50162 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-01T08:30:03Z

Weaknesses
  • CWE-22

    Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

  • CWE-73

    External Control of File Name or Path