#VU21783 Inconsistent interpretation of HTTP requests in Go programming language


Published: 2019-10-15

Vulnerability identifier: #VU21783

Vulnerability risk: Medium

CVSSv3.1: 6.5 [CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N/E:U/RL:O/RC:C]

CVE-ID: CVE-2015-5739

CWE-ID: CWE-444

Exploitation vector: Network

Exploit availability: No

Vulnerable software:
Go programming language
Universal components / Libraries / Scripting languages

Vendor: Google

Description

The vulnerability allows a remote attacker to conduct an HTTP request smuggling attack on the target system.

The vulnerability exists due to the "net/http" library in "net/textproto/reader.go" does not properly parse HTTP header keys. A remote attacker can send a specially crafted HTTP request and conduct HTTP request smuggling attacks via a space instead of a hyphen, as demonstrated by "Content Length" instead of "Content-Length."


Mitigation
Install updates from vendor's website.

Vulnerable software versions

Go programming language: 1.4 - 1.4.2, 1.3 - 1.3.3, 1.2 - 1.2.2, 1.1 - 1.1.2, 1.0.1 - 1.0.3


External links
http://github.com/golang/go/commit/117ddcb83d7f42d6aa72241240af99ded81118e9


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.


Latest bulletins with this vulnerability