In Go before 1.10.6 and 1.11.x before 1.11.3, the "go get" command is vulnerable to remote code execution when executed with the -u flag and the import path of a malicious Go package, or a package that imports it directly or indirectly. 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). Using custom domains, it's possible to arrange things so that a Git repository is cloned to a folder named ".git" by using a vanity import path that ends with "/.git". If the Git repository root contains a "HEAD" file, a "config" file, an "objects" directory, a "refs" directory, with some work to ensure the proper ordering of operations, "go get -u" can be tricked into considering the parent directory as a repository root, and running Git commands on it. That will use the "config" file in the original Git repository root for its configuration, and if that config file contains malicious commands, they will execute on the system running "go get -u".
CVSS Details
- CVSS 3.1 Base Score: 8.1
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H)
- CVSS 3.0 Base Score: 7.5
- CVSS 3.0 Vector: (CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon_linux | — | Upgrade golang | Mar 2, 2020 | Dec 14, 2018 |
| Arch Linux | — | Upgrade to the latest version of Arch Linux | Jul 11, 2025 | Dec 14, 2018 |
| Debian | — | Upgrade golang-1.11 | Mar 15, 2021 | Dec 14, 2018 |
| Gentoo Linux | — | Upgrade dev-lang/go. | Dec 21, 2018 | Dec 14, 2018 |
| Oracle Solaris | — | Upgrade system/library/gcc/gcc-c-runtime-9 to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade developer/gcc/gcc-gobjc-9 to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade developer/gcc/gcc-gfortran-9 to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade developer/gcc/gcc-go to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade developer/gcc/gcc-gfortran to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade system/library/gcc/gcc-runtime-9 to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade system/library/gcc/gcc-gfortran-runtime to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade developer/gcc/gcc-c++ to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade developer/gcc/gcc-gobjc to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade system/library/gcc/gcc-runtime to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade developer/gcc/gcc-go-9 to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade system/library/gcc/gcc-c-runtime to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade system/library/gcc/gcc-gfortran-runtime-9 to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade developer/gcc-9 to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade developer/gcc/gcc-common-9 to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade system/library/gcc/gcc-go-runtime-9 to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade developer/gcc/gcc-c-9 to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade system/library/gcc/gcc-go-runtime to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade system/library/gcc/gcc-gobjc-runtime to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade developer/gcc to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4Upgrade system/library/gcc/gcc-gobjc-runtime-9 to version 9.2.0-11.4.21.0.1.69.0 on Solaris 11.4 | Jan 19, 2021 | Dec 14, 2018 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | Dec 14, 2018 |
| Suse | — | Upgrade docker-zsh-completionUpgrade docker-kubic-bash-completionUpgrade containerd-testUpgrade go1.14Upgrade go-docUpgrade runcUpgrade kubernetes-proxyUpgrade go1.11Upgrade go1.10-raceUpgrade cri-o-kubeadm-criconfigUpgrade golang-packagingUpgrade containerd-kubic-ctrUpgrade kubernetes-nodeUpgrade helmUpgrade go1.11-raceUpgrade docker-libnetwork-kubicUpgrade kubernetes-kubelet1.17Upgrade kubernetes-kubelet1.18Upgrade docker-runcUpgrade docker-runc-kubicUpgrade go-raceUpgrade kubernetes-controller-managerUpgrade docker-libnetworkUpgrade go1.10-docUpgrade kubernetes-clientUpgrade kubernetes-kubeadmUpgrade containerd-kubicUpgrade docker-testUpgrade go1.12Upgrade docker-kubicUpgrade docker-fish-completionUpgrade docker-kubic-zsh-completionUpgrade goUpgrade dockerUpgrade golang-github-docker-libnetwork-kubicUpgrade kubernetes-kubelet-commonUpgrade go1.12-docUpgrade go1.10Upgrade go1.14-docUpgrade containerdUpgrade cri-toolsUpgrade go1.11-docUpgrade kubernetes-masterUpgrade golang-github-docker-libnetworkUpgrade containerd-ctrUpgrade containerd-kubic-testUpgrade docker-kubic-testUpgrade runc-testUpgrade kubernetes-apiserverUpgrade kubernetes-schedulerUpgrade go1.14-raceUpgrade docker-runc-kubic-testUpgrade docker-runc-testUpgrade helm-mirrorUpgrade cri-oUpgrade docker-bash-completionUpgrade go1.12-race | Dec 20, 2018 | Dec 14, 2018 |
| Ubuntu | — | No solution exists | Jun 26, 2025 | Dec 14, 2018 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | Dec 14, 2018 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub