【CVE-2018-20250】WinRAR漏洞浅谈

本文介绍了WinRAR的一个长期存在的安全漏洞,该漏洞源于UNACEV2.dll代码库,允许攻击者通过恶意ACE文件在用户解压时执行任意代码。虽然复现过程复杂,但主要依赖于将恶意文件解压到启动文件夹。然而,由于路径依赖于用户名,导致其在不同环境中的利用稳定性有限。尽管如此,对于能够控制目标环境的情况,该漏洞可能构成威胁。

好友发来信息聊起WinRAR漏洞,其实这个漏洞的利用条件很有限,实际危害并不是很高,可是这个漏洞令人恐惧的是已经遗留了很多年,并且影响到全球5多亿的WinRAR用户,所以上班的时候,成了圈子里热议的话题。

好奇心驱使之下,开始了复现研究的过程。先看看原理。

 

 根据Check Point研究人员的说法,该问题是因UNACEV2.dll代码库中的一个深藏已久的漏洞引起的,而且该代码库从2005年以来就一直没有被主动使用过。据了解,该代码库用于解析ACE格式,这是一种可以追溯到20世纪90年代常用的压缩格式。

 攻击者可以制作一个恶意的ACE文件,当被WinRAR 打开的时候,会利用UNACEV2.dll中的路径遍历漏洞欺骗归档工具将文件解压到攻击者选择的路径中。研究人员试图将ACE 恶意文件放到启动文件夹中以便在系统启动时执行。  ——引用自FreeBuf

 

这是比较底层的实现原理,实现过程就是在压缩包里恶意插入代码,使压缩包在解压缩的时候,会执行命令把“脏程序”悄悄的放置在开机启动项中。

image.png

 

至于实现还是比较复杂的,我是借用Github站点一套Python程序,完成复现。

image.png

 

源码配置部分如上图,对封装的文件名称、脏程序名称、压缩后名称进行配置即可执行打包。在环境机上,解压缩后,重启测试。

image.png

 

复现完成,但是在其之后的研究过程中,发现这个漏洞利用性其实非常有限。

 

因为脏程序路径涉及到用户名,所以目前这个定位方法是非常不可靠的,经过多环境试验,发现只有在桌面进行解压才具有相当的稳定性。

 

最终对此漏洞总结,如果能利用好复杂环境,此漏洞是Happy fun的,但在不能保证目标环境的前提下,也许需要更好的思路来利用这个漏洞。

复现代码和一些过程就不放出来了,感兴趣的朋友可以搜索相关资料了解。Happy fun~!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值