Skip to content
Vulnerability Intelligence

CVE-2018-16873

High

Remote command execution via "go get" with "-u" flag in cmd/go

Published Aug 4, 2022 · Updated Jul 8, 2026 · Also known as GO-2022-0189, SUSE-SU-2018:4297-1, SUSE-SU-2019:0048-1, SUSE-SU-2019:0048-2, SUSE-SU-2019:0286-1, SUSE-SU-2019:0495-1, SUSE-SU-2019:1234-1, SUSE-SU-2019:1234-2, SUSE-SU-2019:1264-1, SUSE-SU-2021:1458-1, UBUNTU-CVE-2018-16873

Key Facts

Patch immediately
  • CVE-2018-16873 is a high-severity vulnerability (CVSS 8.1 v3.1) affecting Go (Golang), Backports Sle (Opensuse), Debian Linux and 22 more products.
  • It is not listed in any known-exploited vulnerabilities catalog. No public exploit code is known.
  • EPSS estimates a 66% probability of exploitation in the next 30 days.
  • Fixed versions are available, including containerd 1.1.2-5.3.4, containerd 1.1.2-5.6.1, containerd 1.1.2-lp150.4.3.1.
  • Brandefense priority: patch immediately, because it is very likely to be exploited soon.

CVSS v3.1

8.1

CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H

EPSS (30-day exploit likelihood)

66%

Higher than 99.2% of all scored CVEs

Exploited in the wild

No known

Not in a known-exploited catalog

Public exploit code

None known

Get the full CVE-2018-16873 brief as a PDF

Every affected product and fixed release, exploitation status and a first 24 hours response checklist, emailed within minutes.

Description

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".

Affected Products

259 affected entries in total
ProductAffected versionsFixed in
GoGolangSee advisory1.10.6
Backports SleOpensuse15.0n/a
Debian LinuxDebian9.0n/a
LeapOpensuse15.0, 15.1, 42.3n/a
Linux Enterprise ServerSuse12n/a
20 more affected products in the full CVE brief

Patched Releases

containerd

1.1.2-5.3.4, 1.1.2-5.6.1, 1.1.2-lp150.4.3.1, 1.1.2-lp150.4.6.1, 1.2.2-16.14.2, 1.2.2-22.1, 1.2.2-5.9.1, 1.2.2-lp150.4.10.1, 1.2.5-16.17.2, 1.2.5-5.13.1, 1.2.5-lp150.4.14.3, 1.2.5-lp151.2.3.1, 1.4.4-16.38.1, 1.4.8-2.2

containerd-ctr

1.1.2-lp150.4.3.1, 1.1.2-lp150.4.6.1, 1.2.2-22.1, 1.2.2-lp150.4.10.1, 1.2.5-lp150.4.14.3, 1.2.5-lp151.2.3.1, 1.4.8-2.2

containerd-kubic

1.1.2-lp150.4.3.1, 1.2.2-22.1

containerd-kubic-ctr

1.1.2-lp150.4.3.1, 1.2.2-22.1

containerd-kubic-test

1.1.2-lp150.4.3.1, 1.2.2-22.1

containerd-test

1.1.2-lp150.4.3.1, 1.1.2-lp150.4.6.1, 1.2.2-22.1, 1.2.2-lp150.4.10.1, 1.2.5-lp150.4.14.3, 1.2.5-lp151.2.3.1

cri-o

1.17.1-lp151.2.2, 1.22.0-1.2

cri-o-kubeadm-criconfig

1.17.1-lp151.2.2, 1.22.0-1.2

cri-tools

1.18.0-lp151.2.1

docker

18.06.1_ce-6.8.2, 18.06.1_ce-lp150.5.6.1, 18.09.0_ce-6.11.2, 18.09.0_ce-lp150.5.9.1, 18.09.1_ce-54.1, 18.09.1_ce-6.14.1, 18.09.1_ce-98.34.2, 18.09.1_ce-lp150.5.13.1, 18.09.6_ce-6.17.1, 18.09.6_ce-98.37.1, 18.09.6_ce-lp150.5.17.2, 18.09.6_ce-lp151.2.3.1, 20.10.6_ce-2.1, 20.10.6_ce-98.66.1

docker-bash-completion

18.06.1_ce-6.8.2, 18.06.1_ce-lp150.5.6.1, 18.09.0_ce-6.11.2, 18.09.0_ce-lp150.5.9.1, 18.09.1_ce-54.1, 18.09.1_ce-6.14.1, 18.09.1_ce-lp150.5.13.1, 18.09.6_ce-6.17.1, 18.09.6_ce-lp150.5.17.2, 18.09.6_ce-lp151.2.3.1, 20.10.6_ce-2.1

docker-fish-completion

20.10.6_ce-2.1

docker-kubic

18.06.1_ce-lp150.5.6.1, 18.09.1_ce-54.1

docker-kubic-bash-completion

18.06.1_ce-lp150.5.6.1, 18.09.1_ce-54.1

docker-kubic-kubeadm-criconfig

18.09.1_ce-54.1

docker-kubic-test

18.06.1_ce-lp150.5.6.1, 18.09.1_ce-54.1

docker-kubic-zsh-completion

18.06.1_ce-lp150.5.6.1, 18.09.1_ce-54.1

docker-libnetwork

0.7.0.1+gitr2664_3ac297bc7fd0-4.3.5, 0.7.0.1+gitr2664_3ac297bc7fd0-lp150.3.3.1, 0.7.0.1+gitr2704_6da50d197830-4.6.1, 0.7.0.1+gitr2704_6da50d197830-lp150.3.6.1, 0.7.0.1+gitr2711_2cfbf9b1f981-11.1, 0.7.0.1+gitr2711_2cfbf9b1f981-16.2, 0.7.0.1+gitr2711_2cfbf9b1f981-4.9.1, 0.7.0.1+gitr2711_2cfbf9b1f981-lp150.3.10.1, 0.7.0.1+gitr2726_872f0a83c98a-19.1, 0.7.0.1+gitr2726_872f0a83c98a-4.12.1, 0.7.0.1+gitr2726_872f0a83c98a-lp150.3.14.1, 0.7.0.1+gitr2726_872f0a83c98a-lp151.2.3.1

docker-libnetwork-kubic

0.7.0.1+gitr2664_3ac297bc7fd0-lp150.3.3.1, 0.7.0.1+gitr2711_2cfbf9b1f981-11.1

docker-runc

1.0.0rc5+gitr3562_69663f0bd4b6-6.3.4, 1.0.0rc5+gitr3562_69663f0bd4b6-6.6.1, 1.0.0rc5+gitr3562_69663f0bd4b6-lp150.5.3.1, 1.0.0rc5+gitr3562_69663f0bd4b6-lp150.5.6.1, 1.0.0rc6+gitr3748_96ec2177ae84-1.17.2, 1.0.0rc6+gitr3748_96ec2177ae84-11.1, 1.0.0rc6+gitr3748_96ec2177ae84-6.12.1, 1.0.0rc6+gitr3748_96ec2177ae84-lp150.5.14.1, 1.0.0rc6+gitr3804_2b18fe1d885e-1.23.1, 1.0.0rc6+gitr3804_2b18fe1d885e-6.18.1, 1.0.0rc6+gitr3804_2b18fe1d885e-lp150.5.21.2, 1.0.0rc6+gitr3804_2b18fe1d885e-lp151.3.3.1

docker-runc-kubic

1.0.0rc5+gitr3562_69663f0bd4b6-lp150.5.3.1, 1.0.0rc6+gitr3748_96ec2177ae84-11.1

docker-runc-kubic-test

1.0.0rc5+gitr3562_69663f0bd4b6-lp150.5.3.1, 1.0.0rc6+gitr3748_96ec2177ae84-11.1

docker-runc-test

1.0.0rc5+gitr3562_69663f0bd4b6-lp150.5.3.1, 1.0.0rc5+gitr3562_69663f0bd4b6-lp150.5.6.1, 1.0.0rc6+gitr3748_96ec2177ae84-11.1, 1.0.0rc6+gitr3748_96ec2177ae84-lp150.5.14.1, 1.0.0rc6+gitr3804_2b18fe1d885e-lp150.5.21.2, 1.0.0rc6+gitr3804_2b18fe1d885e-lp151.3.3.1

docker-stable

24.0.9_ce-1.20.1, 24.0.9_ce-15.1, 24.0.9_ce-150000.1.25.1

docker-stable-bash-completion

24.0.9_ce-1.20.1, 24.0.9_ce-15.1, 24.0.9_ce-150000.1.25.1

Timeline

  1. Publicly disclosed

    Aug 4, 2022

  2. Last updated

    Jul 8, 2026

Weakness Type

  • CWE-20 Improper Input Validation

References

15 more references in the full CVE brief

FAQ

Common Questions.

Is CVE-2018-16873 Running On Your Attack Surface?

Brandefense maps vulnerabilities like this one to your internet-facing assets and tells you exactly where to patch.

Request A Demo