ALAS2-2018-1011


Amazon Linux 2 Security Advisory: ALAS-2018-1011
Advisory Release Date: 2018-05-10 17:19 Pacific
Advisory Updated Date: 2018-05-10 23:56 Pacific
Severity: Medium

Issue Overview:

Arbitrary code execution during go get or go get -d
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."(CVE-2017-15041)

smtp.PlainAuth susceptible to man-in-the-middle password harvesting
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.(CVE-2017-15042)

Arbitrary code execution during "go get" via C compiler options
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.(CVE-2018-6574)


Affected Packages:

golang


Note:

This advisory is applicable to Amazon Linux 2 (AL2) Core repository. Visit this FAQ section for the difference between AL2 Core and AL2 Extras advisories.


Issue Correction:
Run yum update golang to update your system.

New Packages:
noarch:
    golang-docs-1.9.4-1.amzn2.noarch
    golang-misc-1.9.4-1.amzn2.noarch
    golang-tests-1.9.4-1.amzn2.noarch
    golang-src-1.9.4-1.amzn2.noarch

src:
    golang-1.9.4-1.amzn2.src

x86_64:
    golang-1.9.4-1.amzn2.x86_64
    golang-bin-1.9.4-1.amzn2.x86_64