Zip Slip目录走访漏洞,知名企业专案与多数开发语言都中镖
2018-06-06 19:48:36 | 来源:ithome | 投稿:伊文 | 编辑:dations

原标题:Zip Slip目录走访漏洞,知名企业专案与多数开发语言都中镖

又是一个影响范围极大的严重漏洞,让HP、Amazon、Apache和Pivotal等知名企业的数千专案全中镖,JavaScript、Ruby、.NET与Go等开发语言生态系也都有该漏洞的足迹,开源云端监控服务Snyk的资安团队揭露了Zip△Slip漏洞,这是一个任意文件覆写的臭虫,可能导致远端程式码执行攻击,Snyk提到,由于Java缺乏中央函式库提供高阶的归档(Archive)处理功能,因此最容易受到攻击。

目录走访攻击目的就是要存取根目录之外的档案以及资料夹,Snyk的漏洞白皮书提到,骇客要使用这个漏洞,有两个动作要进行,首先是恶意的归档行为,再来是路径未经验证检查的档案解压缩(Extract)。恶意的压缩档案需要包含一个或多个档案,通过在这些档案名称加入../或是绝对路径等操作变数,骇客能够存取系统中任意资料夹的任意档案,而这些档案可能包含原始程式码或是敏感资讯。

Snyk举例,假设压缩档存在两个档案,其中一个为good.sh,这个档案解压缩后会被提取到正常的目标资料夹,而另一个evil.sh档案前面加了许多../前缀,便是骇客试图要走访系统根目录,并新增档案进暂存目录的恶意行为。当使用者在根目录使用指令cd△..,则仍然会在根目录中,也就是说当恶意档案名称添加许多../,骇客便更有机会存取到根目录,以进行下一步偷取敏感资料的动作。

恶意压缩档范例:

5 Tue△Jun△5 11:04:29 BST△2018 good.sh20 Tue△Jun△5 11:04:42 BST△2018 ../../../../../../../../tmp/evil.sh

Snyk提到,这样的zip压缩档必须要手动制作,因为尽管zip规范允许,但一般的压缩软件不会让使用者输入这样的路径,当然骇客也可以使用特别的工具,轻易的大量制作这样的档案。

利用Zip△Slip漏洞的第二步,需要使用程式码或是函式库的功能,来解压缩压缩档中的档案,而当这些具解压缩功能的程式码没有对档案路径进行验证时,漏洞便出现了。

Snyk以Java的片段程式码当作范例解释:

Enumeration△ZipEntry△entries△= zip.getEntries();while△(entries.hasMoreElements()) {ZipEntry△e△= entries.nextElement();File△f△= new△File(destinationDir, e.getName());InputStream△input△= zip.getInputStream(e);IOUtils.copy(input, write(f));}

范例中的e.getName()取得了未经验证的目标目录,配合上面压缩档的案例,这个被抽取出来的evil.sh档案前会附加许多../,因此evil.sh便会被写入在目标目录之外。

Snyk表示,Zip△Slip影响多种档案格式,包括tar、jar、war、cpio、apk、rar和7z。他们在GitHub中建立了存在漏洞的专案列表,其中不乏知名公司的专案,包括AWS△Toolkit△for△Eclipse、Spring△Integration,LinkedIn的Pinot△白领AP资料库、Apache/Twitter△Heron、阿里巴巴JStorm、Jenkins和Gradle等,但影响远不只如此,官方提到连Google也中标。

根据漏洞通报程序,在Snyk对外揭露这个漏洞前,就已经对受影响组织发出警告,多数受影响的专案也已经修复,Python在这次漏洞风暴中全身而退,Go语言只有一个函式库受到影响,在收到通知后的两天内就修复了,Ruby少数函式库存在漏洞危机,JavaScript由于有许多中央函式库,这个问题在公开揭露前,就已经全数被修复完毕,而.Net同样也有中央函式库提供抽取功能,因此目前也安全无虞。

而最严重的就属Java,再来就是Groove,这两个语言缺乏中央函式库,即使热门的甲骨文与Apache的一般压缩API也没有对公开完整的解压缩功能,因此许多档案处理程式码都是在像是Stack△Overflow这样的社交间分享,Snyk提到,他们发现有漏洞的Java专案比起其他语言还要多出许多。

Snyk建议,除了开发者需要检查解压缩程式码外,也可以在应用程序建置工作管线中,加入Zip△Slip漏洞安全检测。

?

tags:

上一篇  下一篇

相关:

GitLab抢客又开一枪,只要开源专案或教育机构用,黄金会员也免费

微软并购GitHub后,引发一大波使用者逃亡潮,在这波开发者迁徙热潮中,GitHub的竞争对手GitLab在一旁坐收了渔翁之利,不仅在社交媒体上得到许多曝光,也接手了许多原本来自GitHub的专案、储存库。而因应这波使用者热

Helm脱离Kubernetes专案,自成CNCF育成专案

使用最high容器调度工具Kubernetes时,许多开发者也会利用内建的Helm,管理Kubernetes△Charts,通过Helm这个打包管理工具,开发者可以多次布建应用程序,或者管理Kubernetes△Manifest档案。靠此工具,使用者可以解

资安一周(0530~0605)欧盟成立专案小组查缉线上黑市。游戏平台Steam客户端存在一个十年老漏洞

5/16~5/22一定要看的资安新闻?欧盟警方成立暗网小组专门查缉线上黑市在28国警方的支持下,欧洲刑警组织(Europol)近期宣布成立暗网小组(Dark△Web△Team),借由各方技术及资源的协同以提高打击网络黑市的能力。Eu

Steam客户端存在一个10年的远端程式码执行漏洞,Valve紧急修补

资安公司Context△Information△Security资深研究员Tom△Court发现,游戏平台Steam客户端存在一个至少10年的远端程式码执行漏洞,而这个漏洞影响每月1,500万的活跃用户,游戏公司Valve在收到资安通报后,紧急在12小时

Chrome与Firefox旁路漏洞可外泄用户的脸书档案

图片来源: Ruslan△Habalov 目前任职于Google的安全工程师Ruslan△Habalov本周四(5/31)在他的个人博客中披露,Chrome与Firefox于实现CSS混合模式(mix-blind-mode)功能时出现了旁路(side-channel)漏洞,将会泄露

站长推荐: