{"id":"CVE-2020-29529","aliases":["DEBIAN-CVE-2020-29529","EUVD-2023-0600","GHSA-2g5j-5x95-r6hr","GO-2021-0094","UBUNTU-CVE-2020-29529"],"status":"published","title":"Unsafe tar unpacking in HashiCorp go-slug","description":"HashiCorp go-slug up to 0.4.3 did not fully protect against directory traversal while unpacking tar archives, and protections could be bypassed with specific constructions of multiple symlinks. Fixed in 0.5.0.","severity":{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-09","score":0.02817,"percentile":0.8665,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-22","CWE-59"],"published":"2020-12-03T19:04:50Z","modified":"2026-10-26T12:02:24Z","fixes":[{"ecosystem":"Go","package":"github.com/hashicorp/go-slug","fixed_in":["0.5.0"],"sources":["ghsa","osv"]},{"ecosystem":"Debian:12","package":"golang-github-hashicorp-go-slug","fixed_in":["0.5.0-1"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"Go","package":"github.com/hashicorp/go-slug","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.5.0"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"golang-github-hashicorp-go-slug","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.5.0-1"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/hashicorp/go-slug","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.5.0"}]}]},{"source":"osv","ecosystem":"Go","package":"github.com/hashicorp/go-slug","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.5.0"}]}]}],"products":[{"vendor":"hashicorp","product":"go-slug"}],"references":[{"url":"https://github.com/hashicorp/go-slug/releases/tag/v0.5.0","tags":["x_refsource_MISC","x_transferred","Release Notes","Third Party Advisory","advisory","web","report"]},{"url":"https://github.com/hashicorp/go-slug/compare/v0.4.3...v0.5.0","tags":["x_refsource_MISC","x_transferred","Patch","Release Notes","Third Party Advisory","fix","web","report"]},{"url":"https://github.com/hashicorp/go-slug/pull/12","tags":["x_refsource_MISC","x_transferred","Patch","Third Party Advisory","fix","web","report"]},{"url":"https://securitylab.github.com/advisories/GHSL-2020-262-zipslip-go-slug","tags":["x_refsource_MISC","x_transferred","Exploit","Third Party Advisory","evidence","advisory","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2020-29529","tags":["advisory"]},{"url":"https://github.com/hashicorp/go-slug/commit/28cafc59c8da6126a3ae94dfa84181df4073454f","tags":["web","fix"]},{"url":"https://github.com/hashicorp/go-slug/commit/764785bc4cbb9e600ad1cf1a6bd21b535c182983","tags":["web"]},{"url":"https://pkg.go.dev/vuln/GO-2021-0094","tags":["web"]},{"url":"https://github.com/advisories/GHSA-2g5j-5x95-r6hr"},{"url":"https://security-tracker.debian.org/tracker/CVE-2020-29529","tags":["advisory"]},{"url":"https://github.com/hashicorp/go-slug","tags":["package"]},{"url":"https://ubuntu.com/security/CVE-2020-29529","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2020-29529","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2020-29529","description":"HashiCorp go-slug up to 0.4.3 did not fully protect against directory traversal while unpacking tar archives, and protections could be bypassed with specific constructions of multiple symlinks. Fixed in 0.5.0.","status":"published","published":"2020-12-03T19:04:50Z","modified":"2024-08-04T16:55:10.521Z","updated_at":"2026-11-02T14:35:55.460269Z"}],"euvd":[{"id":"EUVD-2023-0600","description":"HashiCorp go-slug up to 0.4.3 did not fully protect against directory traversal while unpacking tar archives, and protections could be bypassed with specific constructions of multiple symlinks. Fixed in 0.5.0.","status":"published","published":"2020-12-03T19:04:50Z","modified":"2024-08-04T16:55:10Z","updated_at":"2026-11-03T03:07:06.885366Z"}],"ghsa":[{"id":"GHSA-2g5j-5x95-r6hr","title":"Unsafe tar unpacking in HashiCorp go-slug","description":"HashiCorp go-slug before 0.5.0 does not address attempts at directory traversal involving ../ and symlinks.","status":"published","published":"2023-02-06T23:16:16Z","modified":"2023-02-06T23:16:19Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"cwes":["CWE-22","CWE-59"],"updated_at":"2026-11-02T14:36:44.093794Z"}],"nvd":[{"id":"CVE-2020-29529","description":"HashiCorp go-slug up to 0.4.3 did not fully protect against directory traversal while unpacking tar archives, and protections could be bypassed with specific constructions of multiple symlinks. Fixed in 0.5.0.","status":"published","published":"2020-12-03T20:15:11.82Z","modified":"2026-06-17T03:11:23.703Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high","assessor":"primary"},{"version":"2.0","score":5,"vector":"AV:N/AC:L/Au:N/C:P/I:N/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-22","CWE-59"],"updated_at":"2026-11-02T14:06:27.10541Z"}],"osv":[{"id":"CVE-2020-29529","description":"HashiCorp go-slug up to 0.4.3 did not fully protect against directory traversal while unpacking tar archives, and protections could be bypassed with specific constructions of multiple symlinks. Fixed in 0.5.0.","status":"published","published":"2020-12-03T20:15:11.82Z","modified":"2026-10-20T10:53:15.322614726Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"updated_at":"2026-11-02T15:44:16.612899Z"},{"id":"DEBIAN-CVE-2020-29529","description":"HashiCorp go-slug up to 0.4.3 did not fully protect against directory traversal while unpacking tar archives, and protections could be bypassed with specific constructions of multiple symlinks. Fixed in 0.5.0.","status":"published","published":"2020-12-03T20:15:11.82Z","modified":"2026-10-26T12:02:24.302042124Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"updated_at":"2026-11-02T15:45:34.019707Z"},{"id":"GHSA-2g5j-5x95-r6hr","title":"Unsafe tar unpacking in HashiCorp go-slug","description":"HashiCorp go-slug before 0.5.0 does not address attempts at directory traversal involving ../ and symlinks.","status":"published","published":"2023-02-06T23:16:16Z","modified":"2023-11-08T04:03:31.473521Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"cwes":["CWE-22","CWE-59"],"updated_at":"2026-11-02T15:46:34.338541Z"},{"id":"UBUNTU-CVE-2020-29529","description":"HashiCorp go-slug up to 0.4.3 did not fully protect against directory traversal while unpacking tar archives, and protections could be bypassed with specific constructions of multiple symlinks. Fixed in 0.5.0.","status":"withdrawn","published":"2020-12-03T20:15:00Z","modified":"2026-02-19T19:22:45.771006Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"updated_at":"2026-11-02T15:54:24.541803Z"},{"id":"GO-2021-0094","title":"Directory traversal in github.com/hashicorp/go-slug","description":"Protections against directory traversal during archive extraction can be bypassed by chaining multiple symbolic links within the archive. This allows a malicious attacker to cause files to be created outside of the target directory. Additionally if the attacker is able to read extracted files they may create symbolic links to arbitrary files on the system which the unpacker has permissions to read.","status":"published","published":"2021-04-14T20:04:52Z","modified":"2024-05-20T16:03:47Z","updated_at":"2026-11-02T15:47:00.604718Z"}]}}
