50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

Git 漏洞导致攻击者可在用户电脑上运行任意代码

  • 2018-06-05
  • 本文字数:780 字

    阅读完需:约 3 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

Git 子模块名称验证中的一个缺陷使得远程攻击者可能在开发者机器上执行任意代码。另外,攻击者可以访问部分系统内存。这两个漏洞已经在 Git 2.17.1、2.16.4、2.15.2 和其他版本中得到了修复。

安全研究员 Etienne Stalmans 报告了该漏洞,未打补丁的 Git 版本不验证子模块名称,因此

在克隆代码仓库时,远程仓库可以返回特定的数据来创建或覆盖目标用户系统上的文件,从而可以在目标用户系统上执行任意代码。

具体来说,Git 会镜像 $GIT_DIR/modules 目录中的子模块,这些子模块的名字是在 $GIT_DIR/.gitmodules 中定义的。通过修改.gitmodules 文件的内容,可以将…/ 嵌入到子模块名称中,以欺骗 Git 将子模块写到仓库以外的地方。再加上一个恶意的 post-checkout 钩子,这就有可能在克隆仓库后立即运行恶意代码。

要修复这个问题,需要给子模块名称增加一些规则,不符合规则的名称将被 Git 忽略。基本上,…和符号链接是不被允许的。这样可以确保子模块目录不会被保存到 $GIT_DIR 之外。

Stalmans 表示,他可以利用此漏洞在 GitHub 页面上执行远程代码,不过到目前为止没有出现漏洞被利用的情况。

第二个已修补的漏洞与使用 NTFS 文件系统的仓库有关,攻击者通过欺骗 NTFS 路径健全性检查来读取随机内存中的内容。

Git 社区已经及时在 Git 2.13.7 版本中修复了这两个漏洞,修复补丁也已移植到 2.14.4、2.15.2、2.16.4 和 2.17.1 中。此外,作为附加安全级别,如果代码仓库包含有问题.gitmodules 文件,这些版本将拒绝接受来自用户的推送内容。这是为了:

帮助托管网站保护使用老版客户端的用户,防止恶意内容传播。

GitHub 和其他托管服务已经修补了他们的系统。

查看英文原文 Git Vulnerability May Lead to Arbitrary Code Execution

2018-06-05 16:141890
用户头像

发布了 731 篇内容, 共 476.2 次阅读, 收获喜欢 2008 次。

关注

评论

发布
暂无评论
发现更多内容

由浅入深理解Android虚拟机—内存模型,垃圾回收机制是如何实现的

android 程序员 移动开发

疫情之下,这真是一份完美的程序员宅家指南,androidsdk开发实例

android 程序员 移动开发

看完此文,你对Gradle的理解又升级了!,万字总结

android 程序员 移动开发

移动开发的罗曼蒂克消亡史,android系统开发书籍

android 程序员 移动开发

疫情过后打算跳槽阿里,本以为凉了没想到居然是它“救,2021年Android大厂面试分享

android 程序员 移动开发

破解 Kotlin 协程(1) - 入门篇,35岁以后的Android程序员出路在哪里

android 程序员 移动开发

百万级日活 App 的屏幕录制功能是如何实现的,flutter小程序的onshow

android 程序员 移动开发

移动应用遗留系统重构(7)- 解耦重构演示篇(一),android开发环境的搭建视频

android 程序员 移动开发

移动应用遗留系统重构(9)- 路由篇,移动开发者大会

android 程序员 移动开发

疫情下中年IT的焦虑,轻松拿下offer

android 程序员 移动开发

疫情让“灵活用工”浮出水面,一线互联网公司面经总结

android 程序员 移动开发

看我一波,Android获取进程名函数,代码优化到极致的操作

android 程序员 移动开发

真的强!借助阿里技术博主分享的Android面试笔记,我拿到了字节跳动的offer

android 程序员 移动开发

移动应用遗留系统重构(9)- 路由篇(1),kotlin版权

android 程序员 移动开发

移动端视频开发通过什么方式实现直播?十分钟带你快速了解

android 程序员 移动开发

疫情结束后,会影响程序员年后找工作吗?,安卓开发面试题自定义view

android 程序员 移动开发

移动开发的罗曼蒂克消亡史 _ InfoQ,网易云的朋友给我这份339页的Android面经

android 程序员 移动开发

程序员35岁之后该怎样规划自己的职业?,Android开发手册

android 程序员 移动开发

程序员你所害怕的中年危机,恰恰是人生的转机!,kotlin高阶函数源码讲解

android 程序员 移动开发

疫情下,中年IT的焦虑,Android面试总结

android 程序员 移动开发

疫情下,每个职场人都要思考这4点,有了这些中高端面试专题-大厂还会远吗

android 程序员 移动开发

百度阿里腾讯头条面试Android高级岗必问!Handler源码解析!

android 程序员 移动开发

移动开发程序员怎么优雅迈过30K+这道坎?成功入职字节跳动

android 程序员 移动开发

用最通俗简单的方式,带你全面理解Android事件传递机制,有一句废话你砍我

android 程序员 移动开发

真的已经讲烂了!想彻底掌握-binder-机制,必须先搞懂这几个关键类

android 程序员 移动开发

知乎3000多人关注!27w+阅读开发者进阶难题,2021安卓开发社招面试解答之性能优化

android 程序员 移动开发

知乎热榜第一破10w阅读-Android不行了?2021程序员的风口又要来了,你还不抓紧机会

android 程序员 移动开发

种草Dribbble:从未见过如此Q弹的Switcher,腾讯架构师深入讲解Android开发

android 程序员 移动开发

程序员为什么越老贬值的越厉害?,面试官6个灵魂拷问

android 程序员 移动开发

程序员30岁+又怎么了呢?找准定位,kotlin可选参数

android 程序员 移动开发

程序员中年了40岁,公司里熬到中层年薪30w+,最新高频Android面试题目分享

android 程序员 移动开发

Git漏洞导致攻击者可在用户电脑上运行任意代码_开源_Sergio De Simone_InfoQ精选文章