Skip to content
OpenAdvisories
Medium ALAS2-2018-1011 3 CVEs

Moderate: golang security update (Amazon Linux 2)

Published May 10, 2018 · Updated May 10, 2018

Summary

Package updates are available for Amazon Linux 2 that fix the following vulnerabilities: CVE-2018-6574: 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. 1543561: CVE-2018-6574 golang: arbitrary code execution during "go get" via C compiler options CVE-2017-15042: It was found that smtp.PlainAuth authentication scheme in Go did not verify the TLS requirement properly. A remote man-in-the-middle attacker could potentially use this flaw to sniff SMTP credentials sent by a Go application. An unintended cleartext issue exists in Go before 1.8.4 and 1.9.x before 1.9.1. RFC 4954 requires that, during SMTP, the PLAIN auth scheme must only be used on network connections secured with TLS. The original implementation of smtp.PlainAuth in Go 1.0 enforced this requirement, and it was documented to do so. In 2013, upstream issue #5184, this was changed so that the server may decide whether PLAIN is acceptable. The result is that if you set up a man-in-the-middle SMTP server that doesn't advertise STARTTLS and does advertise that PLAIN auth is OK, the smtp.PlainAuth implementation sends the username and password. 1498867: CVE-2017-15042 golang: smtp.PlainAuth susceptible to man-in-the-middle password harvesting CVE-2017-15041: Go before 1.8.4 and 1.9.x before 1.9.1 allows "go get" remote command execution. Using custom domains, it is possible to arrange things so that example.com/pkg1 points to a Subversion repository but example.com/pkg1/pkg2 points to a Git repository. If the Subversion repository includes a Git checkout in its pkg2 directory and some other work is done to ensure the proper ordering of operations, "go get" can be tricked into reusing this Git checkout for the fetch of code from pkg2. If the Subversion repository's Git checkout has malicious commands in .git/hooks/, they will execute on the system running "go get." An arbitrary command execution flaw was found in the way Go's "go get" command handled the checkout of source code repositories. A remote attacker capable of hosting malicious repositories could potentially use this flaw to cause arbitrary command execution on the client side. 1498870: CVE-2017-15041 golang: arbitrary code execution during go get or go get -d 1498870: CVE-2017-15041 golang: arbitrary code execution during "go get" or "go get -d"

Fixed packages 6

ReleasePackageFixed in
Amazon Linux · 2 golang 0:1.9.4-1.amzn2
Amazon Linux · 2 golang-bin 0:1.9.4-1.amzn2
Amazon Linux · 2 golang-docs 0:1.9.4-1.amzn2
Amazon Linux · 2 golang-misc 0:1.9.4-1.amzn2
Amazon Linux · 2 golang-src 0:1.9.4-1.amzn2
Amazon Linux · 2 golang-tests 0:1.9.4-1.amzn2

Vulnerabilities 3

  • Unscored —

    Remote command execution via "go get" in cmd/go

    Go before 1.8.4 and 1.9.x before 1.9.1 allows "go get" remote command execution. Using custom domains, it is possible to arrange things so that example.com/pkg1 points to a Subversion repository but example.com/pkg1/pkg2 points to a Git repository. If the Sub…

  • Unscored —

    Cleartext transmission of credentials in net/smtp

    An unintended cleartext issue exists in Go before 1.8.4 and 1.9.x before 1.9.1. RFC 4954 requires that, during SMTP, the PLAIN auth scheme must only be used on network connections secured with TLS. The original implementation of smtp.PlainAuth in Go 1.0 enfor…

  • Unscored —
    CVE-2018-6574 Public exploit

    Remote command execution via "go get" command with cgo in cmd/go

    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.

References

  • web
    https://alas.aws.amazon.com/cve/html/CVE-2017-15041.html
  • web
    https://alas.aws.amazon.com/cve/html/CVE-2017-15042.html
  • web
    https://alas.aws.amazon.com/cve/html/CVE-2018-6574.html