Winrar
0x00 环境搭建
0x01 ACE 格式
用WINACE手动生成一个ACE后缀的压缩包
[Ⅰ] acefile.py
[Ⅱ]hex editor
首先我比较想知道。。最开始checkpoint的文章里面的高亮是特效吗,为什么我的没有
姑且用010editor打开,然后并没有模板可以用
姑且分析一下ACE结构
- 首先,我没觉得这个格式有任何压缩,或者说因为小文件才没有任何压缩。
- ACE格式大致上是将整个压缩包分块,其中第一个块作为整体压缩包的信息,每个块有一个
header
用于标识该块信息,对于文件的块,在勾选store full path
的情况下,每个块的末尾是文件的二进制信息 - 结合原文章的图(就上面那个花花绿绿的图),根据
*UNREGISTERED VERSION*
字符串的位置可以确定其后方的hdr_crc
和hdr_size
- 在
filename
前两位是filename
的长度
POC研究
POC 地址:https://github.com/Ridter/acefile
根据该poc提供的1.rar
拖进010editor研究一下
其实也没什么可以研究的,
修改filename
->修改filename_length
->修改hdr_size
关键一步:此时还需要修改CRC的值,这里可以直接用acefile.py来获取正确值
遇到的问题:最开始用的是https://github.com/droe/acefile的acefile.py
脚本,但是很遗憾并不输出正确CRC,于是转而使用Ridter的POC中附带的acefile.py
阶段性成果
如此修改好了一个ACE包,执行解压操作以后,就在C盘生成了一个ttesttesttst\test.txt