Description
Go before 1.8.7, Go 1.9.x before 1.9.4, and Go 1.10 pre-releases before Go 1.10rc2 allow "go get" remote command execution during source code build, by leveraging the gcc or clang plugin feature, because -fplugin= and -plugin= arguments were not blocked.
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 9 | golang-1.8 | 1.8.1-1+deb9u1 | DSA-4380-1 |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 18.04 LTS | golang-1.8 | No fix yet | — |
| Ubuntu 16.04 LTS | golang-1.6 | No fix yet | — |
Red Hat
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| RHEL 7 | golang +5 | 1.9.4-1.el7 | RHSA-2018:0878 |
Show 1 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Red Hat Devtools 2018 | go-toolset-7 +3 | 1.8-14.el7 | RHSA-2018:1304 |
| Red Hat Devtools 2018 | go-toolset-7-golang +6 | 1.8.7-2.el7 | RHSA-2018:1304 |
SUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| SUSE Package Hub 12 | go | 1.9.4-15.1 | openSUSE-SU-2018:0589-1, openSUSE-SU-2018:0588-1 |
| SUSE Package Hub 12 | go1.8 | 1.8.7-5.1 | openSUSE-SU-2018:0629-1, openSUSE-SU-2018:0628-1 |
| SUSE Package Hub 12 | go1.9 | 1.9.4-5.1 | openSUSE-SU-2018:0589-1, openSUSE-SU-2018:0588-1 |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | go | 1.17-1.1 | openSUSE-SU-2024:10802-1 |
| openSUSE Tumbleweed | go1.10 | 1.10.8-8.2 | openSUSE-SU-2024:10803-1 |
| openSUSE Tumbleweed | go1.11 | 1.11.13-10.5 | openSUSE-SU-2024:10804-1 |
| openSUSE Tumbleweed | go1.12 | 1.12.17-4.8 | openSUSE-SU-2024:10805-1 |
| openSUSE Tumbleweed | go1.9 | 1.9.7-11.2 | openSUSE-SU-2024:10812-1 |
Alpine
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine v3.24 | go | 1.9.4-r0 | — |
| Alpine v3.23 | go | 1.9.4-r0 | — |
| Alpine v3.22 | go | 1.9.4-r0 | — |
| Alpine v3.21 | go | 1.9.4-r0 | — |
| Alpine v3.20 | go | 1.9.4-r0 | — |
Show 13 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Alpine v3.19 | go | 1.9.4-r0 | — |
| Alpine v3.18 | go | 1.9.4-r0 | — |
| Alpine v3.17 | go | 1.9.4-r0 | — |
| Alpine v3.16 | go | 1.9.4-r0 | — |
| Alpine v3.15 | go | 1.9.4-r0 | — |
| Alpine v3.14 | go | 1.9.4-r0 | — |
| Alpine v3.13 | go | 1.9.4-r0 | — |
| Alpine v3.12 | go | 1.9.4-r0 | — |
| Alpine v3.11 | go | 1.9.4-r0 | — |
| Alpine v3.10 | go | 1.9.4-r0 | — |
| Alpine v3.9 | go | 1.9.4-r0 | — |
| Alpine v3.8 | go | 1.9.4-r0 | — |
| Alpine v3.7 | go +1 | 1.9.4-r0 | — |
Amazon Linux
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Amazon Linux 2 | golang +5 | 1.9.4-1.amzn2 | ALAS2-2018-1011 |
Public exploits
Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.
GitHub 91 repositories · most starred shown
-
neargle/Go-Get-RCE-CVE-2018-6574-POC ★ 24 · Apr 24, 2018
CVE-2018-6574 POC : golang 'go get' remote command execution during source code build
-
frozenkp/CVE-2018-6574 ★ 2 · Dec 2, 2019
-
mux0x/CVE-2018-6574 ★ 1 · Dec 3, 2022
-
the-valluvarsploit/CVE-2018-6574 ★ 1 · Mar 24, 2022
-
ItsFadinG/CVE-2018-6574 ★ 1 · Oct 20, 2021
-
Devang-Solanki/CVE-2018-6574 ★ 1 · Oct 15, 2021
Exploit for remote command execution in Golang go get command.
-
Malone5923/CVE-2018-6574-go-get-RCE ★ 1 · Jun 21, 2020
CVE-2018-6574: go get RCE solution for pentesterlab challenge
-
wb4r/go-get-rce ★ 1 · May 17, 2018
CVE-2018-6574 for pentesterLAB
-
ahmetmanga/go-get-rce ★ 0 · May 20, 2018
cve-2018-6574 @pentesterlab
-
acole76/cve-2018-6574 ★ 0 · Apr 2, 2018
Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Go | toolchain | < 1.8.7 · >= 1.9.0-0, < 1.9.4 | 1.8.7, 1.9.4 | GO-2022-0201 |
Advisories 13
- RHSA-2018:1304 Red Hat Security Advisory: go-toolset-7 and go-toolset-7-golang security and bug fix update Red Hat Security Advisories (RHSA) · Jun 26, 2026
- RHSA-2018:0878 Red Hat Security Advisory: golang security, bug fix, and enhancement update Red Hat Security Advisories (RHSA) · Jun 26, 2026
- DSA-4380-1 golang-1.8 - security update Debian Security (DSA / DLA) · Mar 9, 2026
- openSUSE-SU-2018:0629-1 Security update for go1.8 SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2024:10803-1 go1.10-1.10.8-8.2 on GA media SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2024:10812-1 go1.9-1.9.7-11.2 on GA media SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2018:0628-1 Security update for go1.8 SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2024:10804-1 go1.11-1.11.13-10.5 on GA media SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2024:10805-1 go1.12-1.12.17-4.8 on GA media SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2018:0588-1 Security update for go SUSE / openSUSE Security Updates · Feb 4, 2026
- openSUSE-SU-2024:10802-1 go-1.17-1.1 on GA media SUSE / openSUSE Security Updates · May 7, 2025
- openSUSE-SU-2018:0589-1 Security update for go SUSE / openSUSE Security Updates · May 2, 2025
- ALAS2-2018-1011 Moderate: golang security update (Amazon Linux 2) Amazon Linux Security Center (ALAS) · May 10, 2018
References
- RHSA-2018:1304 vendor-advisory
- RHSA-2018:0878 vendor-advisory
- DSA-4380 vendor-advisory
- https://github.com/KINGSABRI/CVE-in-Ruby/tree/master/CVE-2018-6574
- https://groups.google.com/forum/#%21topic/golang-nuts/sprOaQ5m3Dk
- https://github.com/golang/go/issues/23672
- https://groups.google.com/forum/#%21topic/golang-nuts/Gbhh1NxAjMU