Amazon Linux 2 : golang (ALAS-2022-1811)

critical Nessus 插件 ID 163229

简介

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

描述

远程主机上安装的 golang 版本低于 1.16.15-1。因此,该软件受到 ALAS2-2022-1811 公告中提及的多个漏洞影响。

在 golang 中发现无限循环漏洞。如果应用程序定义了使用“xml.NewTokenDecoder”初始化的自定义标记解析器,则解析循环可能永远不会返回。攻击者可能会在 XML 元素中构建恶意 XML 文档,从而造成“EOF”错误,从而造成解析应用程序进入死循环,从而导致拒绝服务 (DoS)。 (CVE-2021-27918)

在 1.16.11.16.x 之前的 Go [] 中,archive/zip 允许攻击者在尝试使用 Reader.Open API 用于 ZIP 存档(所有文件名开头都出现 ../)时造成拒绝服务(错误)。 (CVE-2021-27919)

在 Go 中发现一个缺陷。net 程序包中的 LookupCNAME、LookupSRV、LookupMX、LookupNS 和 LookupAddr 函数以及解析器类型上的方法可能返回从 DNS 检索的任意值,从而允许注入非预期内容。此漏洞造成的最高威胁是完整性。
(CVE-2021-33195)

Go 中发现缺陷,充当非预期代理或中介,其中如果连接标头为空,ReverseProxy 会 转发 。此缺陷允许攻击者丢弃任意标头。此漏洞最主要的威胁对象是数据完整性。(CVE-2021-33197)

在 Go 中发现一个缺陷,其试图分配过量内存。如果传递具有极大指数的输入,此问题可能导致内核错误或无法恢复的致命错误。此漏洞最大的威胁在于系统可用性。(CVE-2021-33198)

在 Go 中发现一个争用条件缺陷。处理程序错误后未关闭传入的请求正文,因此这可导致 ReverseProxy 崩溃。此漏洞造成的最高威胁是对 Availability 的威胁。 (CVE-2021-36221)

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

在 Go 标准库的 archive/zip 中发现漏洞。当解析畸形 ZIP 文件时,Go 编写的应用程序可能发生错误或可能耗尽系统内存。如果攻击者能够提交特制的 ZIP 文件至使用 archive/zip 处理该文件的 Go 应用程序,便可通过内存耗尽或错误造成拒绝服务。此特殊缺陷是对先前缺陷的不完整修复。
(CVE-2021-39293)

在 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)

在低于 1.16.14 的Go 和低于 1.17.7 的 1.17.x 中,math/big 的 Rat.SetString 存在一个溢出,可导致不受控制的内存消耗。 (CVE-2022-23772)

在 1.16.14 之前的 Go 和在 1.17.x [] 之前的 1.17.7 中,Go 中的 cmd/go 可错误解释似乎是版本标签的分支名称。如果执行者能够创建分支但不能创建标签,则这可能导致错误控制访问权限。(CVE-2022-23773)

在 1.16.14 之前的 Go 和 1.17.x 之前的 [ 1.17.7 中,crypto/elliptic 中的 Curve.IsOnCurve 可在 big.Int 值非有效字段元素的情况下错误返回 true。 (CVE-2022-23806)

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

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

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

解决方案

运行 'yum update golang' 以更新系统。

另见

https://alas.aws.amazon.com/cve/html/CVE-2021-27918.html

https://alas.aws.amazon.com/cve/html/CVE-2021-27919.html

https://alas.aws.amazon.com/cve/html/CVE-2021-33195.html

https://alas.aws.amazon.com/cve/html/CVE-2021-33197.html

https://alas.aws.amazon.com/cve/html/CVE-2021-33198.html

https://alas.aws.amazon.com/cve/html/CVE-2021-36221.html

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

https://alas.aws.amazon.com/cve/html/CVE-2021-39293.html

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

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

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

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

https://alas.aws.amazon.com/cve/html/CVE-2022-23772.html

https://alas.aws.amazon.com/cve/html/CVE-2022-23773.html

https://alas.aws.amazon.com/cve/html/CVE-2022-23806.html

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

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

https://alas.aws.amazon.com/AL2/ALAS-2022-1811.html

插件详情

严重性: Critical

ID: 163229

文件名: al2_ALAS-2022-1811.nasl

版本: 1.8

类型: local

代理: unix

发布时间: 2022/7/15

最近更新时间: 2025/4/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-bin, p-cpe:/a:amazon:linux:golang-src, p-cpe:/a:amazon:linux:golang-race, cpe:/o:amazon:linux:2, p-cpe:/a:amazon:linux:golang-tests, p-cpe:/a:amazon:linux:golang, p-cpe:/a:amazon:linux:golang-shared, p-cpe:/a:amazon:linux:golang-docs, p-cpe:/a:amazon:linux:golang-misc

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

可利用: true

易利用性: Exploits are available

补丁发布日期: 2022/7/6

漏洞发布日期: 2021/10/18

参考资料信息

CVE: CVE-2021-27918, CVE-2021-27919, CVE-2021-33195, CVE-2021-33197, CVE-2021-33198, CVE-2021-36221, CVE-2021-38297, CVE-2021-39293, CVE-2021-41771, CVE-2021-41772, CVE-2021-44716, CVE-2021-44717, CVE-2022-23772, CVE-2022-23773, CVE-2022-23806, CVE-2022-24921

IAVB: 2021-B-0069-S, 2022-B-0008-S, 2022-B-0011-S