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-Moduleawarego_get). The attacker can cause an arbitrary filesystem write, which can lead to code execution.
{ "binaries": [ { "binary_name": "golang-1.8", "binary_version": "1.8.3-2ubuntu1.18.04.1" }, { "binary_name": "golang-1.8-go", "binary_version": "1.8.3-2ubuntu1.18.04.1" }, { "binary_name": "golang-1.8-go-shared-dev", "binary_version": "1.8.3-2ubuntu1.18.04.1" }, { "binary_name": "golang-1.8-src", "binary_version": "1.8.3-2ubuntu1.18.04.1" }, { "binary_name": "libgolang-1.8-std1", "binary_version": "1.8.3-2ubuntu1.18.04.1" } ] }