CVE-2023-29007
通过 git submodule deinit 进行任意配置注入
- 已发布
- 2023年4月25日
- 已更新
- 2025年11月4日
- 分配 CNA
- GitHub_M
- 观察到的证据
- 2026年8月8日
初级CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H低 · 未来 30 天
- 百分位
- 93.2%
- 型号日期
- 2026年9月21日
EPSS 是统计估计,而不是确定性或影响衡量标准。将其与 CVSS、KEV 状态、暴露程度和您的环境相结合。
总结
Git 是一个修订控制系统。在版本 2.30.9、2.31.8、2.32.7、2.33.8、2.34.8、2.35.8、2.36.6、2.37.7、2.38.5、2.39.3 和 2.40.1 之前,特制的 `.gitmodules` 文件中的子模块 URL 若超过 1024 个字符,可利用 `config.c::git_config_copy_or_rename_section_in_file()` 中的一个漏洞。该漏洞可在尝试删除与该子模块关联的配置节时,向用户的 `$GIT_DIR/config` 中注入任意配置。当攻击者注入指定要运行的可执行文件的配置值(如 `core.pager`、`core.editor`、`core.sshCommand` 等)时,可能导致远程代码执行。修复版本已在 2.30.9、2.31.8、2.32.7、2.33.8、2.34.8、2.35.8、2.36.6、2.37.7、2.38.5、2.39.3 和 2.40.1 中提供。作为规避方法,请避免在不受信任的仓库上运行 `git submodule deinit`,或在此之前检查 `$GIT_DIR/config` 中的所有子模块节。
来源
2CVE-2023-29007的概念验证利用程序,一个Git任意配置注入漏洞。演示了通过构造的代码库实现代码执行的利用过程。
针对CVE-2023-29007(一个Git任意配置注入漏洞)的概念验证漏洞利用代码。演示在Windows系统上的利用过程,用于安全测试与验证。
负责任的使用
仅在您拥有或有权测试的系统上使用漏洞信息。 Kitploit 链接到公共研究元数据,并且不存储漏洞代码或恶意负载。