Golang < 1.19.10 / 1.20.x < 1.20.5 多个漏洞

critical Nessus 插件 ID 177342

简介

远程 Windows 主机上安装的应用程序受到多个漏洞影响。

描述

远程主机上安装的 Golang Go 版本受到多个漏洞的影响:

- 使用 cgo 时,go 命令可能在构建时生成非预期的代码。这可能导致在运行使用 cgo 的 go 程序时发生意外情况。如果不受信任的模块包含名称中带换行符的目录,运行此模块则可能会导致此问题发生。使用 go 命令(即通过 'go get')检索到的模块不受影响(使用 GOPATH-mode 检索到的模块,如 GO111MODULE=off)。(CVE-2023-29402)

- 使用 cgo 时,go 命令可能在构建时执行任意代码。在恶意模块上运行“go get”或运行构建不受信任代码的任何其他命令时,可能会发生这种情况。此问题可由通过“#cgo LDFLAGS”指令指定的链接器标记触发。大量非可选标记的参数被错误地视为可选,从而允许通过 LDFLAGS 审查走私禁用的标记。这会影响 gc 和 gccgo 编译器的使用。(CVE-2023-29404)

- 使用 cgo 时,go 命令可能在构建时执行任意代码。在恶意模块上运行“go get”或运行构建不受信任代码的任何其他命令时,可能会发生这种情况。此问题可由通过“#cgo LDFLAGS”指令指定的链接器标记触发。由于包含嵌入空格的标记处理不当,导致可以通过 LDFLAGS 审查走私禁用的标记,方法则是将这些标记纳入另一个标记的参数中。此问题只会影响 gccgo 编译器的使用。(CVE-2023-29405) 请注意,Nessus 并未测试这些问题,而只是依赖应用程序自我报告的版本号进行判断。32

解决方案

升级到 Golang Go 1.19.10、1.20.5 或更新版本。

另见

https://github.com/golang/go/issues/60167

https://github.com/golang/go/issues/60305

https://github.com/golang/go/issues/60306

http://www.nessus.org/u?e05d2017

插件详情

严重性: Critical

ID: 177342

文件名: golang_1_20_5.nasl

版本: 1.6

类型: local

代理: windows

系列: Windows

发布时间: 2023/6/15

最近更新时间: 2023/12/8

支持的传感器: Nessus Agent, Nessus

风险信息

VPR

风险因素: Medium

分数: 6.7

CVSS v2

风险因素: Critical

基本分数: 10

时间分数: 7.4

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

CVSS 分数来源: CVE-2023-29405

CVSS v3

风险因素: Critical

基本分数: 9.8

时间分数: 8.5

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

时间矢量: CVSS:3.0/E:U/RL:O/RC:C

漏洞信息

CPE: cpe:/a:golang:go

必需的 KB 项: installed_sw/Golang Go Programming Language, SMB/Registry/Enumerated

易利用性: No known exploits are available

补丁发布日期: 2023/6/6

漏洞发布日期: 2023/6/6

参考资料信息

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

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