首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【行业资讯】Git 2.39.1 发布,修复两个安全问题

Git 发布了维护版本 v2.39.1,以及旧版本维护 v2.38.3、v2.37.5、v2.36.4、v2.35.6、v2.34.6、v2.33.6、v2.32.5、v2.31.6 和 v2.30.7 。这些维护版本是为了解决安全问题 CVE-2022-41903 和 CVE-2022-23521。

CVE-2022-41903:

git log 能够使用带有 --format 说明符的任意格式显示提交。这个功能也通过 export-subst gitattribute 暴露给 git archive。

处理填充运算符时(例如,%>( 或 %>

这种溢出可以由用户运行调用提交格式化机制(例如,git log --format=...)的命令直接触发。它也可以通过 export-subst 机制通过 git archive 间接触发,该机制在 git archive 期间扩展存储库文件内部的格式说明符。

这种整数溢出会导致任意堆写入,这可能会导致远程代码执行。

CVE-2022-23521:

gitattributes 是一种允许定义路径属性的机制。这些属性可以通过将 .gitattributes 文件添加到存储库来定义,该文件包含一组文件模式以及应该为匹配该模式的路径设置的属性。

在解析 gitattributes 时,当存在大量路径模式、单个模式的大量属性或声明的属性名称巨大时,可能会发生多个整数溢出。

这些溢出可以通过精心制作的 .gitattributes 文件触发,该文件可能是提交历史的一部分。当从文件中解析 gitattributes 时,Git 会悄悄地拆分长度超过 2KB 的行,但当从索引中解析它们时则不会。因此,故障模式取决于文件是否存在于工作树、索引或两者中。

这种整数溢出会导致任意堆读取和写入,这可能会导致远程代码执行。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230130A00H4J00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券