CTF中ZIP总结

记录一下我在CTF中遇到的ZIP的部分解法,可能不是很全

ZIP伪加密

0000H~002DH(灰色区域)为压缩源文件数据区,002EH~008FH(桃红区域)为压缩源文件目录区,0090H~00A5H(黄色区域)为压缩源文件目录结束标志。

识别真假加密

无加密

压缩源文件数据区的全局加密应当为00 00 压缩源文件目录区的全局方式位标记应当为00 00

伪加密

压缩源文件数据区的全局加密应当为00 00 压缩源文件目录区的全局方式位标记应当为09 00

真加密

压缩源文件数据区的全局加密应当为09 00 压缩源文件目录区的全局方式位标记应当为09 00

处理方法

1部分mac或者linux可无视伪加密

2可以利用ZipCenOp.jar(需要Java环境)

3WinRar修复压缩包

4可以修改二进制位

字典爆破

使用工具+字典或者脚本+字典爆破

明文攻击

手里有原压缩包和压缩包内部分文件,可以使用明文攻击方式。

可以将压缩包内的文件进行压缩,然后用ARCHPR这个工具进行明文攻击

CRC碰撞

可以使用GitHub上开源的脚本  https://github.com/theonlypwner/crc32  

使用方式

python crc32.py reverse crc32密文

二进制位里是16进制,所以要加0x,而且因为大小端问题,所以如果二进制编辑器里是52 ad 5e 2f

执行命令就是  python crc32.py reverse 0x2f5ead52

posted @ 2018-11-23 18:05  dubhe=  阅读(4167)  评论(0编辑  收藏  举报