Rocky Linux 9 : go-toolset and golang (RLSA-2023:3923)

critical Nessus Plugin ID 178051

Synopsis

The remote Rocky Linux host is missing one or more security updates.

Description

The remote Rocky Linux 9 host has packages installed that are affected by multiple vulnerabilities as referenced in the RLSA-2023:3923 advisory.

- The go command may generate unexpected code at build time when using cgo. This may result in unexpected behavior when running a go program which uses cgo. This may occur when running an untrusted module which contains directories with newline characters in their names. Modules which are retrieved using the go command, i.e. via go get, are not affected (modules retrieved using GOPATH-mode, i.e. GO111MODULE=off, may be affected). (CVE-2023-29402)

- On Unix platforms, the Go runtime does not behave differently when a binary is run with the setuid/setgid bits. This can be dangerous in certain cases, such as when dumping memory state, or assuming the status of standard i/o file descriptors. If a setuid/setgid binary is executed with standard I/O file descriptors closed, opening any files can result in unexpected content being read or written with elevated privileges.
Similarly, if a setuid/setgid program is terminated, either via panic or signal, it may leak the contents of its registers. (CVE-2023-29403)

- The go command may execute arbitrary code at build time when using cgo. This may occur when running go get on a malicious module, or when running any other command which builds untrusted code. This is can by triggered by linker flags, specified via a #cgo LDFLAGS directive. The arguments for a number of flags which are non-optional are incorrectly considered optional, allowing disallowed flags to be smuggled through the LDFLAGS sanitization. This affects usage of both the gc and gccgo compilers. (CVE-2023-29404)

- The go command may execute arbitrary code at build time when using cgo. This may occur when running go get on a malicious module, or when running any other command which builds untrusted code. This is can by triggered by linker flags, specified via a #cgo LDFLAGS directive. Flags containing embedded spaces are mishandled, allowing disallowed flags to be smuggled through the LDFLAGS sanitization by including them in the argument of another flag. This only affects usage of the gccgo compiler. (CVE-2023-29405)

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

Solution

Update the affected packages.

See Also

https://errata.rockylinux.org/RLSA-2023:3923

https://bugzilla.redhat.com/show_bug.cgi?id=2216965

https://bugzilla.redhat.com/show_bug.cgi?id=2217562

https://bugzilla.redhat.com/show_bug.cgi?id=2217565

https://bugzilla.redhat.com/show_bug.cgi?id=2217569

Plugin Details

Severity: Critical

ID: 178051

File Name: rocky_linux_RLSA-2023-3923.nasl

Version: 1.4

Type: local

Published: 7/8/2023

Updated: 12/8/2023

Supported Sensors: Continuous Assessment, Nessus

Risk Information

VPR

Risk Factor: Medium

Score: 6.7

CVSS v2

Risk Factor: Critical

Base Score: 10

Temporal Score: 7.4

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

CVSS Score Source: CVE-2023-29405

CVSS v3

Risk Factor: Critical

Base Score: 9.8

Temporal Score: 8.5

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

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

Vulnerability Information

CPE: p-cpe:/a:rocky:linux:golang-misc, p-cpe:/a:rocky:linux:golang-bin, p-cpe:/a:rocky:linux:golang-docs, p-cpe:/a:rocky:linux:golang-src, p-cpe:/a:rocky:linux:golang-tests, cpe:/o:rocky:linux:9, p-cpe:/a:rocky:linux:go-toolset, p-cpe:/a:rocky:linux:golang, p-cpe:/a:rocky:linux:golang-race

Required KB Items: Host/local_checks_enabled, Host/RockyLinux/release, Host/RockyLinux/rpm-list, Host/cpu

Exploit Ease: No known exploits are available

Patch Publication Date: 7/8/2023

Vulnerability Publication Date: 6/8/2023

Reference Information

CVE: CVE-2023-29402, CVE-2023-29403, CVE-2023-29404, CVE-2023-29405

IAVB: 2023-B-0040-S, 2023-B-0080-S