Skip to content

Tarballs with links can escape working directory upon extraction ("zip slip")

High
jdolitsky published GHSA-g5v4-5x39-vwhx Jan 22, 2021

Package

gomod oras (Go)

Affected versions

0.4.0 - 0.8.1

Patched versions

0.9.0

Description

Impact

The directory support (#55) 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.

Precisely, the following users of the affected versions are impacted:

  • oras CLI users who runs oras pull.
  • Go programs, which invokes github.com/deislabs/oras/pkg/content.FileStore.

Patches

The problem has been patched by the PR linked with this advisory. Users should upgrade their oras CLI and packages to 0.9.0.

Workarounds

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.

References

For more information

If you have any questions or comments about this advisory:

Severity

High

CVE ID

CVE-2021-21272

Weaknesses

No CWEs

Credits