中危 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 及以上版本"
受影响软件情况
# 类型 厂商 产品 版本 影响面
1
运行在以下环境
应用 gitpython_project gitpython * Up to
(including)
3.1.32
运行在以下环境
系统 debian_10 python-git * Up to
(excluding)
2.1.11-1+deb10u2
运行在以下环境
系统 debian_11 python-git * Up to
(excluding)
3.1.14-1
运行在以下环境
系统 debian_12 python-git * Up to
(excluding)
3.1.30-1+deb12u2
阿里云评分
6.5
  • 攻击路径
    本地
  • 攻击复杂度
    复杂
  • 权限要求
    普通权限
  • 影响范围
    越权影响
  • EXP成熟度
    未验证
  • 补丁情况
    官方补丁
  • 数据保密性
    无影响
  • 数据完整性
    无影响
  • 服务器危害
    无影响
  • 全网数量
    N/A
CWE-ID 漏洞类型
CWE-426 不可信的搜索路径
阿里云安全产品覆盖情况