#VU48480 Input validation error in Go programming language - CVE-2020-28362


Vulnerability identifier: #VU48480

Vulnerability risk: Medium

CVSSv4.0: 4.6 [CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:U/U:Green]

CVE-ID: CVE-2020-28362

CWE-ID: CWE-20

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 perform a denial of service (DoS) attack.

The vulnerability exists due to insufficient validation of user-supplied input in a number of math/big.Int methods (Div, Exp, DivMod, Quo, Rem, QuoRem, Mod, ModInverse, ModSqrt, Jacobi, and GCD). A remote attacker can pass large input data to the application, specifically as divisor or modulo argument larger than 3168 bits (on 32-bit architectures) or 6336 bits (on 64-bit architectures).

Mitigation
Install updates from vendor's website.

Vulnerable software versions

Go programming language: 1.0 - 1.0.3, 1.1 - 1.15.4, 1.2 - 1.2.2, 1.3 - 1.3.3, 1.4 - 1.4.3, 1.5 - 1.5.4, 1.6 - 1.6.4, 1.7 - 1.7.6, 1.8 - 1.8.7, 1.9 - 1.9.7


External links
https://github.com/golang/go/issues/42554
https://github.com/golang/go/commit/84150d0af193a7ccd733b3c7fa5787f43125cd2d


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