ID CVE-2016-5386
Summary The net/http package in Go through 1.6 does not attempt to address RFC 3875 section 4.1.18 namespace conflicts and therefore does not protect CGI applications from the presence of untrusted client data in the HTTP_PROXY environment variable, which might allow remote attackers to redirect a CGI application's outbound HTTP traffic to an arbitrary proxy server via a crafted Proxy header in an HTTP request, aka an "httpoxy" issue.
References
Vulnerable Configurations
  • cpe:2.3:o:fedoraproject:fedora:23:*:*:*:*:*:*:*
    cpe:2.3:o:fedoraproject:fedora:23:*:*:*:*:*:*:*
  • cpe:2.3:o:fedoraproject:fedora:24:*:*:*:*:*:*:*
    cpe:2.3:o:fedoraproject:fedora:24:*:*:*:*:*:*:*
  • cpe:2.3:o:oracle:linux:7:*:*:*:*:*:*:*
    cpe:2.3:o:oracle:linux:7:*:*:*:*:*:*:*
  • cpe:2.3:o:redhat:enterprise_linux_server:7.0:*:*:*:*:*:*:*
    cpe:2.3:o:redhat:enterprise_linux_server:7.0:*:*:*:*:*:*:*
  • cpe:2.3:o:redhat:enterprise_linux_server_aus:7.2:*:*:*:*:*:*:*
    cpe:2.3:o:redhat:enterprise_linux_server_aus:7.2:*:*:*:*:*:*:*
  • cpe:2.3:o:redhat:enterprise_linux_server_eus:7.2:*:*:*:*:*:*:*
    cpe:2.3:o:redhat:enterprise_linux_server_eus:7.2:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.0:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.0:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.0.1:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.0.1:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.0.2:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.0.2:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.0.3:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.0.3:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.1:-:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.1:-:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.1:rc2:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.1:rc2:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.1:rc3:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.1:rc3:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.1.1:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.1.1:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.1.2:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.1.2:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.2:-:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.2:-:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.2:rc2:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.2:rc2:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.2:rc3:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.2:rc3:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.2:rc4:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.2:rc4:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.2:rc5:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.2:rc5:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.2.1:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.2.1:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.2.2:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.2.2:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.3:-:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.3:-:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.3:beta1:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.3:beta1:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.3:beta2:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.3:beta2:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.3:rc1:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.3:rc1:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.3:rc2:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.3:rc2:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.3.1:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.3.1:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.3.2:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.3.2:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.3.3:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.3.3:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.4:-:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.4:-:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.4:beta1:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.4:beta1:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.4:rc1:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.4:rc1:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.4:rc2:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.4:rc2:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.4.1:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.4.1:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.4.2:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.4.2:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.4.3:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.4.3:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.5:-:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.5:-:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.5:beta1:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.5:beta1:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.5:beta2:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.5:beta2:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.5:beta3:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.5:beta3:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.5:rc1:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.5:rc1:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.5.1:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.5.1:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.5.2:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.5.2:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.5.3:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.5.3:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.5.4:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.5.4:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.6:*:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.6:*:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.6:-:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.6:-:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.6:beta1:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.6:beta1:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.6:beta2:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.6:beta2:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.6:rc1:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.6:rc1:*:*:*:*:*:*
  • cpe:2.3:a:golang:go:1.6:rc2:*:*:*:*:*:*
    cpe:2.3:a:golang:go:1.6:rc2:*:*:*:*:*:*
CVSS
Base: 6.8 (as of 25-08-2017 - 01:29)
Impact:
Exploitability:
CWE CWE-284
CAPEC
  • Embedding Scripts within Scripts
    An attack of this type exploits a programs' vulnerabilities that are brought on by allowing remote hosts to execute scripts. The attacker leverages this capability to execute scripts to execute his/her own script by embedding it within other scripts that the target software is likely to execute. The attacker must have the ability to inject script into script that is likely to be executed. If this is done, then the attacker can potentially launch a variety of probes and attacks against the web server's local environment, in many cases the so-called DMZ, back end resources the web server can communicate with, and other hosts. With the proliferation of intermediaries, such as Web App Firewalls, network devices, and even printers having JVMs and Web servers, there are many locales where an attacker can inject malicious scripts. Since this attack pattern defines scripts within scripts, there are likely privileges to execute said attack on the host. Of course, these attacks are not solely limited to the server side, client side scripts like Ajax and client side JavaScript can contain malicious scripts as well. In general all that is required is for there to be sufficient privileges to execute a script, but not protected against writing.
  • Signature Spoofing by Key Theft
    An attacker obtains an authoritative or reputable signer's private signature key by theft and then uses this key to forge signatures from the original signer to mislead a victim into performing actions that benefit the attacker.
Access
VectorComplexityAuthentication
NETWORK MEDIUM NONE
Impact
ConfidentialityIntegrityAvailability
PARTIAL PARTIAL PARTIAL
cvss-vector via4 AV:N/AC:M/Au:N/C:P/I:P/A:P
redhat via4
advisories
bugzilla
id 1353798
title CVE-2016-5386 Go: sets environmental variable based on user supplied Proxy request header
oval
AND
  • OR
    • comment Red Hat Enterprise Linux 7 Client is installed
      oval oval:com.redhat.rhba:tst:20150364001
    • comment Red Hat Enterprise Linux 7 Server is installed
      oval oval:com.redhat.rhba:tst:20150364002
    • comment Red Hat Enterprise Linux 7 Workstation is installed
      oval oval:com.redhat.rhba:tst:20150364003
    • comment Red Hat Enterprise Linux 7 ComputeNode is installed
      oval oval:com.redhat.rhba:tst:20150364004
  • OR
    • AND
      • comment golang is earlier than 0:1.6.3-1.el7_2.1
        oval oval:com.redhat.rhsa:tst:20161538015
      • comment golang is signed with Red Hat redhatrelease2 key
        oval oval:com.redhat.rhsa:tst:20161538016
    • AND
      • comment golang-bin is earlier than 0:1.6.3-1.el7_2.1
        oval oval:com.redhat.rhsa:tst:20161538009
      • comment golang-bin is signed with Red Hat redhatrelease2 key
        oval oval:com.redhat.rhsa:tst:20161538010
    • AND
      • comment golang-docs is earlier than 0:1.6.3-1.el7_2.1
        oval oval:com.redhat.rhsa:tst:20161538011
      • comment golang-docs is signed with Red Hat redhatrelease2 key
        oval oval:com.redhat.rhsa:tst:20161538012
    • AND
      • comment golang-misc is earlier than 0:1.6.3-1.el7_2.1
        oval oval:com.redhat.rhsa:tst:20161538005
      • comment golang-misc is signed with Red Hat redhatrelease2 key
        oval oval:com.redhat.rhsa:tst:20161538006
    • AND
      • comment golang-src is earlier than 0:1.6.3-1.el7_2.1
        oval oval:com.redhat.rhsa:tst:20161538007
      • comment golang-src is signed with Red Hat redhatrelease2 key
        oval oval:com.redhat.rhsa:tst:20161538008
    • AND
      • comment golang-tests is earlier than 0:1.6.3-1.el7_2.1
        oval oval:com.redhat.rhsa:tst:20161538013
      • comment golang-tests is signed with Red Hat redhatrelease2 key
        oval oval:com.redhat.rhsa:tst:20161538014
rhsa
id RHSA-2016:1538
released 2016-08-02
severity Moderate
title RHSA-2016:1538: golang security, bug fix, and enhancement update (Moderate)
rpms
  • golang-0:1.6.3-1.el7_2.1
  • golang-bin-0:1.6.3-1.el7_2.1
  • golang-docs-0:1.6.3-1.el7_2.1
  • golang-misc-0:1.6.3-1.el7_2.1
  • golang-src-0:1.6.3-1.el7_2.1
  • golang-tests-0:1.6.3-1.el7_2.1
refmap via4
cert-vn VU#797896
confirm
fedora
  • FEDORA-2016-340e361b90
  • FEDORA-2016-ea5e284d34
misc https://httpoxy.org/
Last major update 25-08-2017 - 01:29
Published 19-07-2016 - 02:00
Last modified 27-12-2019 - 16:08
Back to Top