漏洞版本:winrar4.20
前些天安全圈内爆出一个关于WinRAR的漏洞,不少人只是听说但是未了解细节,邪红色信息安全组织成员对国外关于此漏洞的讲述进行了翻译。
通过这个漏洞可使得winrar压缩包内的test.jpg点击后实际运行exe等程序,下面是关于An7i Security团队原文的翻译:
1) Winrar是最常见的用于压缩和解压数据的一个应用,该应用压缩RAR或ZIP格式的数据。
本文将呈现我在WINRAR4.20版发现的一个新的漏洞。(其他版本可能容易受到攻击)
这里是zip文件格式的简易概要:
因此,通过该文件格式的描述符中,我们可以看到,在偏移量30的n Bytes被称为压缩文件的文件名。
当我们试图用WINRAR压缩文件为“ZIP格式”时,文件结构看起来一样,但是!WINRAR增加了额外的几个它自己的属性。
例如,让我们看看一个包含数据“AAAAA”的名为“TEST1.TXT”的文本文件,它被WINRAR压缩为ZIP格式后:
2) 在上面的示例中,可以注意到,WINRAR添加了额外的“文件名”到压缩文件。
进一步的分析表明,Second Name是该文件的“文件名”,会被命名给解压出的文件,而第一个名字是出现在WinRAR的图形用户界面窗口的名称。
-
问:如果第一个名称和最后一个名称不同会发生什么?
-
答:WinRAR会显示伪造的文件名,而解压后,用户将得到真正的文件名。
这种行为可以很容易地变成一个非常危险的安全漏洞。
想想看,一个黑客发布一些所谓的“Readme.txt”“文本”文件信息,甚至PDF如“VirusTotal_ScanResults.pdf” ,或者更诱人的文件,如“My Girl Friend new bathing suit.jpg”。
想想一个无辜的用户,将打开的不是自述文件,PDF格式的书,文件或有趣的图片,而是一个讨厌的木马。因此,让我们开始,建立一个的POC:
1:首先我们要创建一个有趣的文件,将弹出“PWNED”的消息。
2:第二,我们将用WINRAR通过选择“WINZIP”的方法压缩它:
3:最后,我们将用十六进制编辑器打开ZIP文件,只改变第二个名字,我们改成了假名字(MyPrivateImage.jpg),并将其保存为ZIP文件。
其结果将是一个讨厌的WINRAR文件,显示这是一个压缩的图像文件,当你双击它,有趣的二进制文件将执行:
这是winrar本身的一个大问题,但是那些不是双击打开winrar的人呢?
是的......“提取在这里”的人:\
如果他们将看到一个名为“MyPrivateImage.jpg”变成“MyPrivateImage.exe”的文件,他们将开始担心:)
不要害怕,为了这个目的,我们可以结合为Windows其他已知的漏洞。
该漏洞被称为“Unicode的RLO欺骗”。在这种技术中,我们使用RLO Unicode字符。
(阅读在这里:Unicode Character 'RIGHT-TO-LEFT OVERRIDE' (U+202E))
这个字符识别很容易将文件“Fede.jpg.exe”混淆成“Fedexe.. JPG”。这两个漏洞的组合,可以构成近乎完美的文件欺骗。
当你在WinRAR里查看它,你会看到FEDEX.jpg,而当你提取它,你会看到Fedexe.. JPG
无论你在那里运行这个文件,你将得到PWNED !
文章翻译自:http://an7isec.blogspot.co.il/2014/03/winrar-file-extension-spoofing-0day.html