CVE-2018-16874

Related Vulnerabilities: CVE-2018-16874  

In Go before 1.10.6 and 1.11.x before 1.11.3, the "go get" command is vulnerable to directory traversal when executed with the import path of a malicious Go package which contains curly braces (both '{' and '}' characters). Specifically, it is only vulnerable in GOPATH mode, but not in module mode (the distinction is documented at https://golang.org/cmd/go/#hdr-Module_aware_go_get). The attacker can cause an arbitrary filesystem write, which can lead to code execution.

The MITRE CVE dictionary describes this issue as:

In Go before 1.10.6 and 1.11.x before 1.11.3, the "go get" command is vulnerable to directory traversal when executed with the import path of a malicious Go package which contains curly braces (both '{' and '}' characters). Specifically, it is only vulnerable in GOPATH mode, but not in module mode (the distinction is documented at https://golang.org/cmd/go/#hdr-Module_aware_go_get). The attacker can cause an arbitrary filesystem write, which can lead to code execution.

Find out more about CVE-2018-16874 from the MITRE CVE dictionary dictionary and NIST NVD.

CVSS v3 metrics

NOTE: The following CVSS v3 metrics and score provided are preliminary and subject to review.

CVSS3 Base Score 6.8
CVSS3 Base Metrics CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N
Attack Vector Network
Attack Complexity High
Privileges Required None
User Interaction Required
Scope Unchanged
Confidentiality High
Integrity Impact High
Availability Impact None

Affected Packages State

Platform Package State
Red Hat OpenStack Platform Operational Tools 9 golang Will not fix
Red Hat Gluster Storage 3 golang Affected
Red Hat Enterprise Linux OpenStack Platform 8.0 Operational Tools for RHEL 7 golang Will not fix
Red Hat Enterprise Linux 7 golang Will not fix
Red Hat Ceph Storage 3 golang Affected
Red Hat Ceph Storage 2 golang Affected

Acknowledgements

Red Hat would like to thank Dmitri Shuralyov (the Go team) for reporting this issue.

External References