ghsa-g5v4-5x39-vwhx
Vulnerability from github
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: * Open an issue on the GitHub repo * Email the list of maintainers
{
"affected": [
{
"package": {
"ecosystem": "Go",
"name": "github.com/deislabs/oras"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "0.9.0"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2021-21272"
],
"database_specific": {
"cwe_ids": [
"CWE-22",
"CWE-59"
],
"github_reviewed": true,
"github_reviewed_at": "2021-05-21T14:42:50Z",
"nvd_published_at": "2021-01-25T19:15:00Z",
"severity": "HIGH"
},
"details": "### Impact\nThe 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.\n\nA 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`. \n\nPrecisely, the following users of the affected versions are impacted\n- `oras` CLI users who runs `oras pull`.\n- Go programs, which invokes `github.com/deislabs/oras/pkg/content.FileStore`.\n\n### Patches\nThe problem has been patched by the PR linked with this advisory. Users should upgrade their `oras` CLI and packages to `0.9.0`.\n\n### Workarounds\nFor `oras` CLI users, there is no workarounds other than pulling from a trusted artifact provider.\n\nFor `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.\n\n### References\n- [Zip Slip](https://github.com/snyk/zip-slip-vulnerability)\n\n### For more information\nIf you have any questions or comments about this advisory:\n* Open an issue on the [GitHub repo](https://github.com/deislabs/oras)\n* Email the [list of maintainers](https://github.com/deislabs/oras/blob/main/MAINTAINERS)",
"id": "GHSA-g5v4-5x39-vwhx",
"modified": "2022-10-25T20:26:42Z",
"published": "2022-02-15T00:32:04Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/deislabs/oras/security/advisories/GHSA-g5v4-5x39-vwhx"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2021-21272"
},
{
"type": "WEB",
"url": "https://github.com/deislabs/oras/commit/96cd90423303f1bb42bd043cb4c36085e6e91e8e"
},
{
"type": "PACKAGE",
"url": "https://github.com/deislabs/oras"
},
{
"type": "WEB",
"url": "https://github.com/deislabs/oras/releases/tag/v0.9.0"
},
{
"type": "WEB",
"url": "https://pkg.go.dev/github.com/deislabs/oras/pkg/oras"
},
{
"type": "WEB",
"url": "https://pkg.go.dev/vuln/GO-2021-0099"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:H/A:N",
"type": "CVSS_V3"
}
],
"summary": "Zip slip directory exploit in github.com/deislabs/oras"
}
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.