winrar目录穿越漏洞相关-ACE压缩文件的格式解析
漏洞验证的文章很多,不在介绍验证过程,可以参考
https://www.cnblogs.com/backlion/p/10417985.html
直接解析压缩文件的格式,可以手工打造一个利用漏洞的恶意文件
上图标记的蓝色部分是固定格式可以不变
具体为
6B 28 31 00 00 00 90 2A 2A 41 43 45 2A 2A 14 14
02 00 10 18 56 4E 97 4F F6 AA 00 00 00 00 16 2A
55 4E 52 45 47 49 53 54 45 52 45 44 20 56 45 52
53 49 4F 4E 2A
后面紧跟的为
头部crc校验码 2字节
头部长度 2字节
文件类型 1字节
flags 2字节
文件内容的长度 4字节(两次写入)
时间信息 4字节
文件属性 4字节
文件内容的CRC校验码 4字节
compqual 2字节
params 2字节
TE 2字节
文件名长度 2字节
文件名
文件内容
需要计算的是
头部CRC校验码:
由从文件类型到文件名的二进制字段的CRC32校验码取低16位然后按位取反获得
可以从https://www.lammertbies.nl/comm/info/crc-calculation.html 获取CRC32校验码
头部长度:
由从文件类型到文件名的字节长度获得
文件内容的CRC校验码:是文件内容的CRC校验码按位取反
结束
这样把其他字节依次拼接 就能打造一个利用漏洞的压缩文件