最近出现的有名的Winrar的一个漏洞,成因是Winrar在处理ACE文件的时候处理不当,存在一个目录穿越漏洞,攻击者可以通过精心构造的压缩包,在受害人解压的时候实现任意文件写入。

因为这个漏洞网上已经有了很多的相关文章,复现过程也没有什么坑,所以我就从简复现一下。

因为我的电脑上的Winrar已经更新的原因,这里我采用win7的虚拟机进行复现。


首先我们要生成一个ACE压缩文件,这里需要用到一个Winace软件,将恶意文件压缩进去,这里用putty作为测试:

这里为了目录穿越要选择 store full path 选项。

压缩完成会得到一个ace文件,接下来我们就需要修改这个文件,来将文件名修改成一个带有目录穿越符号的恶意文件名。

github上面有一个项目可以提取ace文件的一些信息,可以使用 git clone https://github.com/droe/acefile 来进行下载,我们生成的ace文件信息如下:

我们修改文件名的同时也要修改的参数是这几个:crc、size、filename的长度。

相对于文件中的地方从前往后就是:

我们使用010Editor进行修改,按顺序修改文件名、filename长度、size、crc,具体的修改操作可以参考下面的链接。

修改结束后:

然后将修改后的ace文件放入虚拟机桌面进行解压,成功看到putty出现在启动文件夹中!


参考文章:

https://mp.weixin.qq.com/s?__biz=Mzg5MTA3NTg2MA%3D%3D&mid=2247483812&idx=1&sn=91a32ac6a6eeb62798e08cbb74016042&scene=45#wechat_redirect

https://www.freebuf.com/column/196660.html