Git for Windows v2.45.1 现已发布,Git for Windows v2.45 是最后一个支持 Windows 7 和 Windows 8 的版本。值得注意的是,Git for Windows 的 32 位版本已被弃用;其最后一个正式版本计划于 2025 年发布。
New Features
- 随附 Git v2.45.1
Bug 修复
- CVE-2024-32002:支持符号链接的不区分大小写的文件系统上的递归克隆容易受到大小写混淆的影响,可被利用在克隆操作期间执行刚刚克隆的代码。
- CVE-2024-32004:存储库可以配置为在本地克隆期间执行任意代码。为了解决这个问题,v2.30.3 中引入的所有权检查现已扩展到涵盖克隆本地存储库。
- CVE-2024-32020:当源存储库和目标存储库位于同一磁盘上时,本地克隆最终可能会将文件硬链接到目标存储库的对象数据库中。如果源存储库由其他用户拥有,则这些硬链接文件可能会在任何时间点被不受信任的用户重写。
- CVE-2024-32021:通过文件系统克隆包含符号链接的本地源存储库时,Git 可能会在与对象/目录中的目标存储库相同的文件系统上创建指向任意用户可读文件的硬链接。
- CVE-2024-32465:克隆不受信任的存储库应该是安全的,即使是从来自不受信任来源的 zip 存档或 tarball 中解压的存储库,但 Git 可能会被欺骗,在克隆过程中运行任意代码。
- Defense-in-depth:submodule:要求子模块路径仅包含目录。
- Defense-in-depth:clone:当符号链接与目录冲突时,保留后者。
- Defense-in-depth:clone:防止 hooks 在克隆期间运行。
- Defense-in-depth:core.hooksPath:在克隆时添加一些保护。
- Defense-in-depth:fsck:警告指向 gitdir 内部的符号链接。
- HTTP 测试的各种修复。
- HTTP Header redaction code 已针对较新版本的 cURL 库进行了调整,其显示的痕迹与早期版本不同。
- 添加了修复程序来解决 libcURL 8.7.0 中的回归问题。
- 将 GitHub CI 中使用的 macos-12 替换为 macos-13。
- ci(linux-asan/linux-ubsan):让我们节省一些时间
- 使用 LSan 进行的测试有时似乎会发出无害的消息,使测试徒增不必要的复杂;通过过滤无意义的输出来解决这个问题。
- 更新 GitHub Actions jobs,避免在使用过时版本的 Node.js 时收到警告。
更新说明:https://github.com/git-for-windows/git/releases/tag/v2.45.1.windows.1