Git爆任意程式码执行漏洞,所有使用者皆受影响!
2018-05-30 17:29:24 | 来源:ithome | 投稿:米娜 | 编辑:dations

原标题:Git爆任意程式码执行漏洞,所有使用者皆受影响!

微软Visual△Studio团队服务专案经理Edward△ThomsonMay在DevOps博客提到,近日Git社交发现了Git存在一个可让骇客执行任意程式码的漏洞,他呼吁,开发者应尽速更新客户端应用程序,而微软也已经采取进一步防护,避免恶意程式码储存库被推送到微软的程式码托管服务VSTS(Visual△Studio△Team△Services)中。

这个代码为CVE△2018-11235的安全漏洞,当用户在恶意程式码储存库中操作时,便有可能遭受任意程式码执行攻击。远端程式码储存库包含有子模组(Submodule)的定义以及资料,这两者被捆绑在一起做为资料夹,提交到父程式码储存库中。当这个程式码储存库被递回复制时,Git一开始会将父储存库放到工作目录中,接着准备复制子模组。

但Git随后便会发现,他不需要复制子模组,因为子模组在之前已经提交到了父储存库,所以也已经被写入到工作目录中,这个子模组早存在于磁碟上。因此Git可以跳过抓取档案的步骤,直接使用磁碟中工作目录里的子模组。

不过,也并非所有档案都能被复制,当客户端复制了一个程式码储存库,其中的重要配置并无法从伺服器上取得,这包括.git或是config档案的内容,另外,在Git工作流中特定时间点会被执行的脚本程式钩子(Hook),像是Git会在文件写入工作目录时,就会执行Post-checkout钩子。

而设置档之所以不应从远端伺服器复制,重要的原因之一便是,远端伺服器可能会提供恶意程式码,而这些程式码是会被Git执行的。

这个CVE△2018-11235漏洞便是犯了这个错误,让Git存在子模组设置漏洞。在子模组储存库被提交到父储存库,且从未实际复制过,子模组储存库中又可能存在已配置的钩子,这时当使用者进行递回复制,精心设计的恶意父储存库会先被写入工作目录,然后接着读取子模组,将这些子模组也写入到工作目录中,而最后一步,便会执行在子模组储存库里任何的Post-checkout钩子。

为了解决这个问题,现在Git客户端会更仔细检查子模组的资料夹名称,包含..现在都为不合法的名称,而且也不能是符号链结,所以这些档案必须实际存在于.git的储存库资料夹中,而不能是工作目录里。

Edward△ThomsonMay提到,Git、VSTS与多数其他程式码托管服务,现在皆会拒绝存在这样子模组配置的储存库,以保护还没更新的Git客户端。Git△2.17.1还有Windows版的2.17.1客户端软件现已释出,微软呼吁开发者尽速更新。

tags:

上一篇  下一篇

相关:

保障乘客与驾驶安全,Uber程式新增911紧急按键

示意图,与新闻事件无关。 图片来源: Uber Uber本周更新了美国市场的Uber程式,于安全中心页面上增加了911紧急按键,以同时保障乘客与驾驶的安全。为了保障乘客的安全,Uber每年都会主动审核司机的背景,也会监控司

甲骨文推出开发工具APEX 18.1版,高阶应用功能直选即用,减少撰写程式码负担

最近甲骨文强化开发工具的动作频传,前阵子释出自家开发者云端服务,开始支援Kubernetes及Java△9开发后端应用外,JavaScript视觉化开发工具VBCS也能开始微调程式码,给予开发者更高自由度。而近日该公司的开发工具A

50万台路由器遭俄国骇客植入恶意程式

图片来源: Talos 思科(Cisco)旗下的威胁情报组织Talos本周三(5/23)揭露了一个已感染全球50万台网络装置的模组化恶意程式系统—VPNFilter,虽然它的感染范围扩及全球54个国家,但主要目标为乌克兰,相信是由俄国骇

代币交易所钻漏洞捞钱 [热事件]

现在运营加密货币交易所可以说是最赚钱的业务之一。近日,有媒体揭露代币交易所钻漏洞捞钱,每天收取的手续费在200万美元到800万美元不等。简直是赚疯了!据报道,Coinbase去年的年收入已经超过了10亿美元,Binance的

代币市场乱象横生 [热事件]

去年9月4日,央行发布的文件明确叫停了代币发行融资——也就是ICO禁令。这种融资主体通过代币的违规发售、流通,向投资者筹集比特币、以太币等所谓“虚拟货币”的行为,在国内被明令禁止。现在半年多的时间过去了,这

站长推荐: