云网牛站
所在位置:首页 > Linux安全 > Git暴远程任意代码执行漏洞CVE-2018-11235的Linux平台解决方案

Git暴远程任意代码执行漏洞CVE-2018-11235的Linux平台解决方案

2018-06-25 11:42:11作者:hi-linux稿源:运维之美

Git 发现存在一个潜在的远程代码执行漏洞(CVE-2018-11235),该漏洞非常危险,如果还没有修复,现在提供Linux平台修复方案。该漏洞源于在用 git clone 时没有对 submodule 的文件夹命名做足够的验证,当用户在使用 git clone –recurse-submodules 时, 攻击者可以通过构造一个恶意的 .gitmodules 文件从而远程执行任意代码。

CVE-2018-11235 被认为是最危险的一个漏洞,恶意攻击者可借此漏洞创建包含特殊代码 Git 子模块的 Git 仓库。在用户克隆这些仓库时,攻击者可借此漏洞在用户系统上执行恶意代码。

Git 和各种提供 Git 仓库托管服务的公司都已经有了相关补丁程序,以修复此危险漏洞。

 

CVE-2018-11235 受影响的版本

Git version < 2.13.7

Git version 2.14.x < 2.14.4

Git version 2.15.x < 2.15.2

Git version 2.16.x < 2.16.4

Git version 2.17.x < 2.17.1

 

CVE-2018-11235 不受影响的版本

Git version 2.14.4

Git version 2.15.2

Git version 2.16.4

Git version 2.17.1

 

CVE-2018-11235 解决方案

官方已经发布新版本修复了上述漏洞。该补丁程序将包含在 Git 2.17.1 中,主要修补了两个安全漏洞 CVE-2018-11233 和 CVE-2018-11235。

受影响的用户建议尽快升级到最新版本以进行防护。这次官方不仅推出了 Git 客户端补丁程序,还包含了 Git 服务器端组件的补丁程序。服务器端的补丁程序可以帮助 Git 托管服务识别包含恶意子模块的代码仓库,并阻止恶意用户上传它们。

 

Linux平台解决方案

1.Debian/Ubuntu系统运行以下命令:

$ sudo apt-get update

$ sudo apt-get install git

2.RedHat/CentOS系统运行以下命令:

$ sudo yum update

$ sudo yum update git

其它平台比如macOS则运行:$ brew upgrade git,如果是Windows平台升级到最新版客户端即可,目前最新版本是Git 2.18.0。

 

验证是否修复

升级之后,你可以通过以下命令来检查漏洞是否已经修复:

$ git init test && \

cd test && \

git update-index --add --cacheinfo 120000,e69de29bb2d1d6434b8b29ae775ad8c2e48c5391,.gitmodules

注意:该命令将不会克隆任何仓库,也没有任何危险的指令。

如果你看到以下提示,则证明你的 Git 版本已经安全,不受该漏洞影响。

error: Invalid path '.gitmodules'

fatal: git update-index: --cacheinfo cannot add .gitmodules

如果你的 Git 显示类似以下信息,并且创建一个空仓库,那么你的 Git 版本还存在此漏洞。

Initialized empty Git repository in /home/mike/test/.git/

 

相关主题

学会使用Git备份Linux服务器配置文件

精选文章
热门文章