CVE-2017-15041

NameCVE-2017-15041
DescriptionGo 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."
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, bugtraq, EDB, Metasploit, Red Hat, Ubuntu, Gentoo, SuSE, Mageia, GitHub code/issues, web search, more)

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
golang (PTS)wheezy2:1.0.2-1.1vulnerable
wheezy (security)2:1.0.2-1.1+deb7u1vulnerable
jessie2:1.3.3-1vulnerable
golang-1.7 (PTS)stretch1.7.4-2vulnerable
buster1.7.6-1vulnerable
sid1.7.6-2vulnerable
golang-1.8 (PTS)stretch1.8.1-1vulnerable
buster1.8.3-1vulnerable
sid1.8.4-1fixed
golang-1.9 (PTS)sid1.9.1-2fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
golangsource(unstable)(unfixed)
golang-1.7source(unstable)(unfixed)
golang-1.8source(unstable)1.8.4-1
golang-1.9source(unstable)1.9.1-1

Notes

[stretch] - golang-1.8 <ignored> (Minor issue, would require builds of all go packages in stable)
[stretch] - golang-1.7 <ignored> (Minor issue, would require builds of all go packages in stable)
https://github.com/golang/go/issues/22125
https://golang.org/cl/68022
https://golang.org/cl/68190
https://groups.google.com/d/msg/golang-dev/RinSE3EiJBI/kYL7zb07AgAJ

Search for package or bug name: Reporting problems