Amazon Linux 2023:golang、golang-bin、golang-misc (ALAS2023-2023-048)

critical Nessus 插件 ID 173069

简介

远程 Amazon Linux 2023 主机缺少安全更新。

描述

因此,该软件受到 ALAS2023-2023-048 公告中提及的多个漏洞影响。

在 Go 标准库的 archive/zip 中发现漏洞。当解析畸形 ZIP 文件时,以 Go 编写的应用程序可能发生错误或耗尽系统内存。 (CVE-2021-33196)

在 golang 中发现验证缺陷。从使用 GOARCH=wasm GOOS=js 构建的 WASM 模块调用函数时,传递大参数可导致部分模块被参数中的数据覆盖。此漏洞最主要的威胁对象是数据完整性。(CVE-2021-38297)

在 Go 标准库的 debug/macho 中发现越界读取漏洞。当使用 debug/macho 标准库 (stdlib) 并且使用 Open 或 OpenFat 解析畸形二进制文件时,可能会造成 golang 尝试在片标(数组)之外读取,从而在调用 ImportedSymbols 时造成错误。
攻击者可利用此漏洞构建文件,导致使用此库的应用程序崩溃,从而导致拒绝服务。 (CVE-2021-41771)

在 Go 标准库的 archive/zip 中发现漏洞。在解析包含完全无效名称或空文件名参数的构建 ZIP 存档时,以 Reader.Open(实现 Go 1.16 中引入的 io/fs.FS 的 API)的 Go 编写的应用程序可能发生错误。 (CVE-2021-41772)

golang 的 net/http 库的 canonicalHeader() 函数中存在不受控制的资源消耗缺陷。向与 net/http 的 http2 功能链接的应用程序提交特别构建请求的攻击者可造成资源过度消耗,从而可能导致拒绝服务或以其他方式影响系统性能和资源。 (CVE-2021-44716)

golang 的 syscall.ForkExec() 接口中存在缺陷。攻击者设法首先造成进程的文件描述符耗尽,然后导致重复调用 syscall.ForkExec(),可能会以某种不受控制的方式损害链接、使用 syscall.ForkExec() 的程序的数据完整性和/或机密性。 (CVE-2021-44717)

在 golang 中发现一个缺陷。HTTP/1 客户端接受指示分块编码的无效 Transfer-Encoding 标头。此问题可允许请求走私但前提是与也未正确将标头接受为无效的中间服务器结合使用。 (CVE-2022-1705)

在 golang 标准库 go/parser 中发现一个缺陷。在 Go 源代码中调用任何 Parse 函数其中包含深度嵌套的类型或声明时可能因堆栈耗尽而发生错误。此问题允许攻击者影响系统可用性。 (CVE-2022-1962)

在 Golang 的库 encoding/pem 中发现缓冲区溢出缺陷。此缺陷允许攻击者使用大型 PEM 输入超过 5 MB造成 Decode 中的堆栈溢出从而丧失可用性。 (CVE-2022-24675)

在 Golang 的 regexp 模块中发现一个堆栈溢出缺陷如果使用 regexp 的应用程序接受了来自具有足够嵌套深度的不受信任来源的极长或任意长 regexp则可导致运行时崩溃。要利用此漏洞攻击者需要向应用程序发送嵌套较深的大型 regexp。触发此缺陷会导致运行时崩溃从而造成拒绝服务。 (CVE-2022-24921)

在 golang.org/x/crypto/ssh 中发现一个破坏加密算法缺陷。此问题导致服务器拒绝基于 SHA-2 的签名算法导致客户端无法使用 RSA 密钥进行身份验证从而使攻击者能够使服务器崩溃从而导致失去可用性。 (CVE-2022-27191)

在 1.18.6 之前的 Go 和 1.19.x1.19.1之前的 Go 的 net/http 中攻击者可造成拒绝服务因为如果致命错误抢先关闭HTTP/2 连接可在关闭期间挂起。 (CVE-2022-27664)

在 golang encoding/xml 中发现缺陷。在解析深度嵌套的 XML 文档的同时调用 Decoder.Skip 时会由于堆栈耗尽而发生错误并且允许攻击者影响系统可用性。
(CVE-2022-28131)

在 Golang 的 crypto/elliptic 库中发现一个整数溢出缺陷。此缺陷允许攻击者使用长度超过 32 个字节的特制定标器输入造成 P256().ScalarMult 或 P256().ScalarBaseMult 发生错误从而失去可用性。 (CVE-2022-28327)

Reader.Read 未设置文件标头的大小上限限制。恶意构建的存档可导致 Read 分配不受限制的内存量,从而可能导致资源耗尽或错误。
修复后,Reader.Read 将标头块的最大大小限制为 1 MiB。(CVE-2022-2879)

通过检查群组来调用进程时在 syscall.Faccessat 函数中发现一个缺陷。此缺陷允许攻击者检查进程群组权限而不是文件群组成员的权限从而影响系统可用性。 (CVE-2022-29526)

在 Go 1.17.11 和 Go 1.18.3 之前的 crypto/tls 中会话票证中的 Ticket_age_add 的非随机值允许能够观察到 TLS 握手的攻击者通过在会话恢复期间比较票证使用期限来关联连续的连接。 (CVE-2022-30629)

在 golang 标准库 io/fs 中发现一个缺陷。在包含大量路径分隔符的路径上调用 Glob 会因堆栈耗尽而发生错误。这可允许攻击者影响可用性。 (CVE-2022-30630)

在 golang 中发现一个缺陷。对包含大量链接的 0 长度压缩文件的存档调用 Reader.Read 方法会因堆栈耗尽而导致错误。 (CVE-2022-30631)

在 golang 中发现一个缺陷。在包含大量路径分隔符的路径上调用 Glob 会因堆栈耗尽而发生错误。这可能会使攻击者影响可用性。
(CVE-2022-30632)

Go 1.17.12 和 Go 1.18.4 之前的 encoding/xml 中的 Unmarshal 中未受控制的递归允许攻击者通过将 XML 文档解组到 Go 结构其中该结构具有使用any 字段标签的嵌套字段而因堆栈耗尽而造成错误。 (CVE-2022-30633)

在 golang 中发现一个缺陷。当对含有深度嵌套结构的消息调用 Decoder.Decode 时会因堆栈耗尽而发生错误并允许攻击者影响系统可用性。 (CVE-2022-30635)

通过使用包含 X-Forwarded-For 标头 nil 值的 Request.Header 映射调用 httputil.ReverseProxy.ServeHTTP 可触发 Go 1.17.12 和 Go 1.18.4 之前的 net/http 中客户端 IP 地址的不当暴露客户端 IP 地址这会造成 ReverseProxy以将客户端 IP 设置为 X-Forwarded-For 标头的值。 (CVE-2022-32148)

在 Golang math/big 中发现一个不受控制的资源消耗缺陷。编码过短的消息可在 Go 的 math/big 的 Float.GobDecode 和 Rat.GobDecode 中造成错误可能允许攻击者创建拒绝服务从而影响可用性。 (CVE-2022-32189)

JoinPath 和 URL.JoinPath 不会删除附加到相对路径的 ../ 路径元素。例如,尽管 JoinPath 文档指出已从结果中删除 ../ path 元素,JoinPath(https://go.dev, ../go) 仍会返回 URL https://go.dev/../go。(CVE-2022-32190)

从不受信任的来源编译正则表达式的程序可能容易受到内存耗尽或拒绝服务的影响。解析后的 regexp 表示与输入的大小成线性关系,但在某些情况下,常数因子可高达 40,000,使得相对较小的 regexp 消耗大量内存。修复后,每个被解析的 regexp 被限制为 256 MB 内存占用。正则表达式的表示会使用比拒绝的表达式更多的空间。正则表达式的正常使用不受影响。 (CVE-2022-41715)

由于存在未清理的 NUL 值攻击者可在 Windows 上恶意设置环境变量。
在 syscall.StartProcess 和 os/exec.Cmd 中,未正确检查包含 NUL 值的无效环境变量值。恶意的环境变量值可利用此行为为不同的环境变量设置值。例如,环境变量字符串 A=Bx00C=D 设置变量 A=B 和 C=D。 (CVE-2022-41716)

Tenable 已直接从测试产品的安全公告中提取上述描述块。

请注意,Nessus 尚未测试这些问题,而是只依据应用程序自我报告的版本号进行判断。

解决方案

运行“dnf update golang --releasever 2023.0.20230322”或“dnf update --advisory ALAS2023-2023-048 --releasever 2023.0.20230322”以更新系统。

另见

https://alas.aws.amazon.com//AL2023/ALAS2023-2023-048.html

https://alas.aws.amazon.com/faqs.html

https://explore.alas.aws.amazon.com/CVE-2021-33196.html

https://explore.alas.aws.amazon.com/CVE-2021-38297.html

https://explore.alas.aws.amazon.com/CVE-2021-41771.html

https://explore.alas.aws.amazon.com/CVE-2021-41772.html

https://explore.alas.aws.amazon.com/CVE-2021-44716.html

https://explore.alas.aws.amazon.com/CVE-2021-44717.html

https://explore.alas.aws.amazon.com/CVE-2022-1705.html

https://explore.alas.aws.amazon.com/CVE-2022-1962.html

https://explore.alas.aws.amazon.com/CVE-2022-24675.html

https://explore.alas.aws.amazon.com/CVE-2022-24921.html

https://explore.alas.aws.amazon.com/CVE-2022-27191.html

https://explore.alas.aws.amazon.com/CVE-2022-27664.html

https://explore.alas.aws.amazon.com/CVE-2022-28131.html

https://explore.alas.aws.amazon.com/CVE-2022-28327.html

https://explore.alas.aws.amazon.com/CVE-2022-2879.html

https://explore.alas.aws.amazon.com/CVE-2022-29526.html

https://explore.alas.aws.amazon.com/CVE-2022-30629.html

https://explore.alas.aws.amazon.com/CVE-2022-30630.html

https://explore.alas.aws.amazon.com/CVE-2022-30631.html

https://explore.alas.aws.amazon.com/CVE-2022-30632.html

https://explore.alas.aws.amazon.com/CVE-2022-30633.html

https://explore.alas.aws.amazon.com/CVE-2022-30635.html

https://explore.alas.aws.amazon.com/CVE-2022-32148.html

https://explore.alas.aws.amazon.com/CVE-2022-32189.html

https://explore.alas.aws.amazon.com/CVE-2022-32190.html

https://explore.alas.aws.amazon.com/CVE-2022-41715.html

https://explore.alas.aws.amazon.com/CVE-2022-41716.html

插件详情

严重性: Critical

ID: 173069

文件名: al2023_ALAS2023-2023-048.nasl

版本: 1.8

类型: local

代理: unix

发布时间: 2023/3/21

最近更新时间: 2025/9/11

支持的传感器: Frictionless Assessment AWS, Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Continuous Assessment, Nessus

风险信息

VPR

风险因素: Medium

分数: 5.9

CVSS v2

风险因素: High

基本分数: 7.5

时间分数: 5.9

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

CVSS 分数来源: CVE-2021-38297

CVSS v3

风险因素: Critical

基本分数: 9.8

时间分数: 8.8

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

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

漏洞信息

CPE: p-cpe:/a:amazon:linux:golang-docs, p-cpe:/a:amazon:linux:golang-misc, p-cpe:/a:amazon:linux:golang-tests, p-cpe:/a:amazon:linux:golang-race, cpe:/o:amazon:linux:2023, p-cpe:/a:amazon:linux:golang, p-cpe:/a:amazon:linux:golang-bin, p-cpe:/a:amazon:linux:golang-src, p-cpe:/a:amazon:linux:golang-shared

必需的 KB 项: Host/local_checks_enabled, Host/AmazonLinux/release, Host/AmazonLinux/rpm-list

可利用: true

易利用性: Exploits are available

补丁发布日期: 2023/2/17

漏洞发布日期: 2021/8/2

参考资料信息

CVE: CVE-2021-33196, CVE-2021-38297, CVE-2021-41771, CVE-2021-41772, CVE-2021-44716, CVE-2021-44717, CVE-2022-1705, CVE-2022-1962, CVE-2022-24675, CVE-2022-24921, CVE-2022-27191, CVE-2022-27664, CVE-2022-28131, CVE-2022-28327, CVE-2022-2879, CVE-2022-29526, CVE-2022-30629, CVE-2022-30630, CVE-2022-30631, CVE-2022-30632, CVE-2022-30633, CVE-2022-30635, CVE-2022-32148, CVE-2022-32189, CVE-2022-32190, CVE-2022-41715, CVE-2022-41716

IAVB: 2021-B-0069-S, 2022-B-0025-S, 2022-B-0042-S, 2022-B-0046-S