ORAS is open source software which enables a way to push OCI Artifacts to OCI Conformant registries. ORAS is both a CLI for initial testing and a Go Module. In ORAS from version 0.4.0 and before version 0.9.0, there is a "zip-slip" vulnerability. The directory support feature allows the downloaded gzipped tarballs to be automatically extracted to the user-specified directory where the tarball can have symbolic links and hard links. A well-crafted tarball or tarballs allow malicious artifact providers linking, writing, or overwriting specific files on the host filesystem outside of the user-specified directory unexpectedly with the same permissions as the user who runs oras pull
. Users of the affected versions are impacted if they are oras
CLI users who runs oras pull
, or if they are Go programs, which invoke github.com/deislabs/oras/pkg/content.FileStore
. The problem has been fixed in version 0.9.0. For oras
CLI users, there is no workarounds other than pulling from a trusted artifact provider. For oras
package users, the workaround is to not use github.com/deislabs/oras/pkg/content.FileStore
, and use other content stores instead, or pull from a trusted artifact provider.