影响版本:

WinRAR < 5.70 Beta 1

Bandizip    < = 6.2.0.0

好压(2345压缩)    < = 5.9.8.10907

360压缩    < = 4.0.0.1170

测试版本:WinRAR 5.61

工具地址:https://github.com/droe/acefile

010 Editor、WinAce

复现:

创建一个 sch01ar.txt

WinRAR 代码执行漏洞复现-LMLPHP

右键

WinRAR 代码执行漏洞复现-LMLPHP

点击 Add to

WinRAR 代码执行漏洞复现-LMLPHP

选择 store full path,然后点击 Add

WinRAR 代码执行漏洞复现-LMLPHP

先用 acefile.py 看一下文件的信息

python acefile.py C:\Users\hp\Desktop\sch01ar.ace --headers

运行结果

WinRAR 代码执行漏洞复现-LMLPHP

用 010 Editor 打开

WinRAR 代码执行漏洞复现-LMLPHP

这个地方是路径长度

hdr_size:

WinRAR 代码执行漏洞复现-LMLPHP

先修改文件路径及其长度值

WinRAR 代码执行漏洞复现-LMLPHP

修改 hdr_size:

WinRAR 代码执行漏洞复现-LMLPHP

在 acefile.py 中添加一句代码

WinRAR 代码执行漏洞复现-LMLPHP

再次运行

WinRAR 代码执行漏洞复现-LMLPHP

14992 修改为十六进制为 0x3a90

接下来修改 hdr_crc

WinRAR 代码执行漏洞复现-LMLPHP

再次执行 acefile.py

WinRAR 代码执行漏洞复现-LMLPHP

将后缀改为zip

WinRAR 代码执行漏洞复现-LMLPHP

右键,解压到当前文件夹

就会在桌面生成一个 test.txt

WinRAR 代码执行漏洞复现-LMLPHP

05-06 05:26