Git submodule RCE (CVE-2018-17456)

来源:scanv2018.10.08

一 漏洞概述

1.1简介

Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。 

Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

1.2漏洞原理

命令行工具 git clone 无法正确处理子模块的 url 。当用户运行 git clone --recurse-submodules 命令时,

git 会解析项目中 .gitmodules 文件的 url 字段,并将其直接作为选项参数传递到 git clone 子进程。攻击者

可以通过构造以符号 - 开头的字符串作为 url 字段,当其传入 git clone 子进程时会被解释为一个选项,最终

通过选项注入执行任意命令。

1.3影响范围

git < 2.14.5
2.15.x < 2.15.3
2.16.x < 2.16.5
2.17.x < 2.17.2
2.18.x < 2.18.1
2.19.x < 2.19.1

 

二 影响范围

通过 ZoomEye 网络空间探测引擎进行探测,以下为网络空间中装有Git的数量约为104163台。

 

三 修复建议

1.

将 git 命令行工具更新至 git 官方发布的最新版本。

Github Desktop 更新至 1.4.2、1.4.3-beta0 版本。

Atom 更新至 1.31.2、1.32.0-beta3 版本。

2.

技术业务咨询:

知道创宇技术业务咨询热线:400-060-9587(政府、国有企业)

                                                028-68360638(互联网企业)

 

四 相关链接

参考链接:

https://marc.info/?l=git&m=153875888916397&w=2

https://blog.github.com/2018-10-05-git-submodule-vulnerability/

 

热门文章

关注知道创宇云安全

获取安全动态