中危 GitPython 代码问题漏洞(CVE-2023-40590)
CVE编号
CVE-2023-40590利用情况
暂无补丁情况
官方补丁披露时间
2023-08-29漏洞描述
GitPython是一个与Git存储库交互的Python库。当解析程序时,Python/Windows会搜索当前工作目录,然后搜索PATH环境变量。如果用户从一个具有`git.exe`或`git`可执行文件的存储库中运行GitPython,GitPython默认使用`git`命令,这将导致运行的程序是存储库中的而不是用户PATH中的。这在Python与Windows系统交互时更为严重,而Linux和其他操作系统不受影响。但是,使用GitPython的人通常会从存储库的当前工作目录运行它。攻击者可以欺骗用户下载一个带有恶意`git`可执行文件的存储库,如果用户从该目录中运行/导入GitPython,攻击者就可以运行任意命令。目前还没有Windows用户的修复方法,但是有几种缓解方法:1:在Windows上将git程序的默认路径设置为绝对路径,如`C:\Program Files\Git\cmd\git.EXE`(默认的git路径安装)。2:要求用户在Windows系统上设置`GIT_PYTHON_GIT_EXECUTABLE`环境变量。3:在文档中明确指出此问题,并建议用户永远不要从不可信的存储库中运行GitPython,或者将`GIT_PYTHON_GIT_EXECUTABLE`环境变量设置为绝对路径。4:通过仅搜索`PATH`环境变量来手动解析可执行文件。解决建议
"将组件 gitpython 升级至 3.1.33 及以上版本"
参考链接 |
|
---|---|
https://docs.python.org/3/library/subprocess.html | |
https://github.com/gitpython-developers/GitPython/security/advisories/GHSA-wf... |
受影响软件情况
# | 类型 | 厂商 | 产品 | 版本 | 影响面 | ||||
1 | |||||||||
---|---|---|---|---|---|---|---|---|---|
运行在以下环境 | |||||||||
应用 | gitpython_project | gitpython | * | Up to (including) 3.1.32 | |||||
运行在以下环境 | |||||||||
系统 | debian_10 | python-git | * | Up to (excluding) 2.1.11-1 | |||||
运行在以下环境 | |||||||||
系统 | debian_11 | python-git | * | Up to (excluding) 3.1.14-1 | |||||
运行在以下环境 | |||||||||
系统 | debian_12 | python-git | * | Up to (excluding) 3.1.30-1+deb12u2 | |||||
运行在以下环境 | |||||||||
系统 | debian_sid | python-git | * | Up to (excluding) 3.1.37-1 | |||||
- 攻击路径 本地
- 攻击复杂度 复杂
- 权限要求 普通权限
- 影响范围 越权影响
- EXP成熟度 未验证
- 补丁情况 官方补丁
- 数据保密性 无影响
- 数据完整性 无影响
- 服务器危害 无影响
- 全网数量 N/A
CWE-ID | 漏洞类型 |
CWE-426 | 不可信的搜索路径 |
Exp相关链接

版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
评论