Git for Windows < 2.30.7/2.31.6/2.32.5/2.33.6/2.34.6/2.35.6/2.36.4/2.37.5/2.38.3/2.39.1 多个漏洞

critical Nessus 插件 ID 184470

简介

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

描述

远程主机上安装的 Git for Windows 版本受到多种漏洞的影响,如下所示:

- Git 是分布式版本控制系统。 gitattributes 是一种允许定义路径属性的机制。可通过将 .gitattributes 文件添加到存储库来定义这些属性,该文件包含一组文件模式以及应为匹配此模式的路径设置的属性。解析 gitattributes 时,当存在大量路径模式、大量单一模式的属性或声明的属性名称很大时,可能会发生多个整数溢出。这些溢出可通过构建的 `.gitattributes` 文件触发,该文件可能是提交历史记录的一部分。从文件解析 gitattributes 时,Git 会静默拆分超过 2KB 的行,但从索引解析它们时则不会。因此,失败模式取决于文件是否存在于工作树、索引或两者中。此整数溢出可导致任意堆读取和写入,从而可能导致远程代码执行。已在 2023 年 1 月 17 日发布的版本中修补该问题,恢复到 v2.30.7。建议用户升级。目前尚无针对此问题的解决方案。(CVE-2022-23521)

- Git 是分布式版本控制系统。`git log` 可以使用其
--format 说明符以任意格式显示提交。此功能也会通过 export-subst gitattribute 暴露给 git archive。
处理填充运算符时,在 pretty.c 中存在整数溢出:: format_and_pad_commit(),其中 size_t 被错误地存储为 int,然后作为偏移添加到 memcpy()。运行调用提交格式化机制的命令的用户可直接触发此溢出(例如,git log --format=...)。它也可以借助 git archive 通过 export-subst 机制间接触发,该机制在 git 存档期间扩展存储库内文件的格式说明符。
此整数溢出可导致任意堆写入,从而可能导致任意代码执行。
已在 2023 年 1 月 17 日发布的版本中修补该问题,恢复到 v2.30.7。建议用户升级。无法升级的用户应在不受信任的存储库中禁用 git archive。
如果通过 git daemon 暴露 git 存档,请通过运行 git config --global daemon.uploadArch false 将其禁用。(CVE-2022-41903)

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

解决方案

升级版本至 Git for Windows 2.30.7、2.31.6、2.32.5、2.33.6、2.34.6、2.35.6、2.36.4、2.37.5、2.38.3、2.39.1 或更高版本。

另见

https://github.com/git/git/security/advisories/GHSA-c738-c5qq-xg89

https://github.com/git/git/security/advisories/GHSA-475x-2q3q-hvwq

插件详情

严重性: Critical

ID: 184470

文件名: git_for_windows_2_39_1.nasl

版本: 1.1

类型: local

代理: windows

系列: Windows

发布时间: 2023/11/6

最近更新时间: 2023/11/7

支持的传感器: 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-2022-41903

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:git_for_windows_project:git_for_windows

必需的 KB 项: installed_sw/Git for Windows

易利用性: No known exploits are available

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

漏洞发布日期: 2023/1/17

参考资料信息

CVE: CVE-2022-23521, CVE-2022-41903