// For flags

CVE-2018-6574

golang: arbitrary code execution during "go get" via C compiler options

Severity Score

7.8
*CVSS v3

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

28
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

-
*SSVC
Descriptions

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.

Go, en versiones anteriores a la 1.8.7; Go en versiones 1.9.x anteriores a la 1.9.4 y los prelanzamientos de Go 1.10 anteriores a Go 1.10rc2 permiten la ejecución remota de comandos "go get" durante la construcción del código fuente aprovechando la característica del plugin gcc o clang debido a que los argumentos -fplugin= y -plugin= no se bloquearon.

An arbitrary command execution flaw was found in the way Go's "go get" command handled gcc and clang sensitive options during the build. A remote attacker capable of hosting malicious repositories could potentially use this flaw to cause arbitrary command execution on the client side.

*Credits: N/A
CVSS Scores
Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
Required
Scope
Changed
Confidentiality
Low
Integrity
Low
Availability
Low
Attack Vector
Local
Attack Complexity
Low
Authentication
None
Confidentiality
Partial
Integrity
Partial
Availability
Partial
* Common Vulnerability Scoring System
SSVC
  • Decision:-
Exploitation
-
Automatable
-
Tech. Impact
-
* Organization's Worst-case Scenario
Timeline
  • 2018-02-02 CVE Reserved
  • 2018-02-07 CVE Published
  • 2018-04-24 First Exploit
  • 2024-08-03 EPSS Updated
  • 2024-08-05 CVE Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
CWE
  • CWE-20: Improper Input Validation
  • CWE-94: Improper Control of Generation of Code ('Code Injection')
CAPEC
References (36)
URL Date SRC
https://github.com/neargle/Go-Get-RCE-CVE-2018-6574-POC 2018-04-24
https://github.com/qweraqq/CVE-2018-6574 2019-04-08
https://github.com/frozenkp/CVE-2018-6574 2022-03-16
https://github.com/darthvader-htb/CVE-2018-6574 2020-05-20
https://github.com/antunesmpedro/CVE-2018-6574 2023-01-31
https://github.com/asavior2/CVE-2018-6574 2019-10-30
https://github.com/Dannners/CVE-2018-6574-go-get-RCE 2024-05-29
https://github.com/jftierno/-CVE-2018-6574 2024-03-18
https://github.com/ItsFadinG/CVE-2018-6574 2021-10-20
https://github.com/OLAOLAOLA789/CVE-2018-6574 2021-06-15
https://github.com/markisback/CVE-2018-6574 2022-08-10
https://github.com/jahwni/CVE-2018-6574 2023-02-22
https://github.com/shadofren/CVE-2018-6574 2020-12-21
https://github.com/InfoSecJack/CVE-2018-6574 2019-09-19
https://github.com/the-valluvarsploit/CVE-2018-6574 2022-03-24
https://github.com/jeyaseelans86/CVE-2018-6574 2022-11-09
https://github.com/mux0x/CVE-2018-6574 2022-12-03
https://github.com/Zeeshan12340/CVE-2018-6574 2023-06-09
https://github.com/yavolo/CVE-2018-6574 2022-04-20
https://github.com/chaosura/CVE-2018-6574 2019-05-18
https://github.com/pswalia2u/CVE-2018-6574 2020-10-13
https://github.com/vishack/CVE-2018-6574 2020-12-30
https://github.com/noname-nohost/CVE-2018-6574 2020-12-17
https://github.com/Devang-Solanki/CVE-2018-6574 2021-10-15
https://github.com/bme2003/CVE-2018-6574 2024-06-19
https://github.com/coblax/CVE-2018-6574 2020-04-29
https://github.com/nthuong95/CVE-2018-6574 2020-03-04
https://github.com/KINGSABRI/CVE-in-Ruby/tree/master/CVE-2018-6574 2024-08-05
URL Date SRC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Golang
Search vendor "Golang"
Go
Search vendor "Golang" for product "Go"
<= 1.8.6
Search vendor "Golang" for product "Go" and version " <= 1.8.6"
-
Affected
Golang
Search vendor "Golang"
Go
Search vendor "Golang" for product "Go"
1.9
Search vendor "Golang" for product "Go" and version "1.9"
-
Affected
Golang
Search vendor "Golang"
Go
Search vendor "Golang" for product "Go"
1.9.1
Search vendor "Golang" for product "Go" and version "1.9.1"
-
Affected
Golang
Search vendor "Golang"
Go
Search vendor "Golang" for product "Go"
1.9.2
Search vendor "Golang" for product "Go" and version "1.9.2"
-
Affected
Golang
Search vendor "Golang"
Go
Search vendor "Golang" for product "Go"
1.9.3
Search vendor "Golang" for product "Go" and version "1.9.3"
-
Affected
Golang
Search vendor "Golang"
Go
Search vendor "Golang" for product "Go"
1.10
Search vendor "Golang" for product "Go" and version "1.10"
beta1
Affected
Golang
Search vendor "Golang"
Go
Search vendor "Golang" for product "Go"
1.10
Search vendor "Golang" for product "Go" and version "1.10"
beta2
Affected
Golang
Search vendor "Golang"
Go
Search vendor "Golang" for product "Go"
1.10
Search vendor "Golang" for product "Go" and version "1.10"
rc1
Affected
Debian
Search vendor "Debian"
Debian Linux
Search vendor "Debian" for product "Debian Linux"
9.0
Search vendor "Debian" for product "Debian Linux" and version "9.0"
-
Affected
Redhat
Search vendor "Redhat"
Enterprise Linux Server
Search vendor "Redhat" for product "Enterprise Linux Server"
7.0
Search vendor "Redhat" for product "Enterprise Linux Server" and version "7.0"
-
Affected
Redhat
Search vendor "Redhat"
Enterprise Linux Server Aus
Search vendor "Redhat" for product "Enterprise Linux Server Aus"
7.6
Search vendor "Redhat" for product "Enterprise Linux Server Aus" and version "7.6"
-
Affected
Redhat
Search vendor "Redhat"
Enterprise Linux Server Eus
Search vendor "Redhat" for product "Enterprise Linux Server Eus"
7.6
Search vendor "Redhat" for product "Enterprise Linux Server Eus" and version "7.6"
-
Affected
Redhat
Search vendor "Redhat"
Enterprise Linux Server Tus
Search vendor "Redhat" for product "Enterprise Linux Server Tus"
7.6
Search vendor "Redhat" for product "Enterprise Linux Server Tus" and version "7.6"
-
Affected