Golang < 1.20 Observable Discrepancy

high Nessus Plugin ID 186691

Synopsis

An application installed on the remote Windows host is affected by an Observable Discrepancy vulnerabilities.

Description

Before Go 1.20, the RSA based TLS key exchanges used the math/big library, which is not constant time. RSA blinding was applied to prevent timing attacks, but analysis shows this may not have been fully effective. In particular it appears as if the removal of PKCS#1 padding may leak timing information, which in turn could be used to recover session key bits. In Go 1.20, the crypto/tls library switched to a fully constant time RSA implementation, which we do not believe exhibits any timing side channels.

Note that Nessus has not tested for these issues but has instead relied only on the application's self-reported version number.

Solution

Upgrade to Golang Go version 1.20, or later.

See Also

https://pkg.go.dev/vuln/GO-2023-2375

https://groups.google.com/g/golang-announce/c/QMK8IQALDvA

Plugin Details

Severity: High

ID: 186691

File Name: golang_1_20_0.nasl

Version: 1.3

Type: local

Agent: windows

Family: Windows

Published: 12/8/2023

Updated: 3/8/2024

Supported Sensors: Nessus Agent, Nessus

Risk Information

VPR

Risk Factor: Low

Score: 3.6

CVSS v2

Risk Factor: High

Base Score: 7.8

Temporal Score: 5.8

Vector: CVSS2#AV:N/AC:L/Au:N/C:C/I:N/A:N

CVSS Score Source: CVE-2023-45287

CVSS v3

Risk Factor: High

Base Score: 7.5

Temporal Score: 6.5

Vector: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

Temporal Vector: CVSS:3.0/E:U/RL:O/RC:C

Vulnerability Information

CPE: cpe:/a:golang:go

Required KB Items: SMB/Registry/Enumerated, installed_sw/Golang Go Programming Language

Exploit Ease: No known exploits are available

Patch Publication Date: 2/1/2023

Vulnerability Publication Date: 12/5/2023

Reference Information

CVE: CVE-2023-45287

IAVB: 2023-B-0096-S