题目提示假的zip
下载附件,解压发现需要密码。
先尝试暴力破解,破解找不到密码,转换思路,题目提示是假压缩包,考虑是zip伪加密。
伪加密相关知识:
压缩源文件数据区
50 4B 03 04:文件头标记
14 00:解压文件所需 pkware 版本
00 00:全局方式标记(用于判断有没有加密)
08 00:压缩方式
5A 7E:最后修改文件的时间
F7 46:最后修改文件的日期
压缩源文件目录区:
50 4B 01 02:目录中文件文件头标记 (0x02014b50)
1F 00:压缩使用的 pkware 版本
14 00:解压文件所需 pkware 版本
00 00:全局方式标记(判断是是伪加密还是真加密)
压缩源文件目录结束标志:
50 4B 05 06:目录结束标记
00 00:当前磁盘编号
00 00:目录区开始磁盘编号
01 00:本磁盘上纪录总数
01 00:目录区中纪录总数
59 00 00 00:目录区尺寸大小
3E 00 00 00:目录区对第一张磁盘的偏移量
00 00:ZIP 文件注释长度
如何根据全局方式标记判断加密情况:
无加密:
压缩源文件数据区的全局方式标记应为 00 00
压缩源文件目录区的全局方式标记应为 00 00
假加密:
压缩源文件数据区的全局方式标记应为 00 00
压缩源文件目录区的全局方式标记应为 09 00
真加密
压缩源文件数据区的全局方式标记应为 09 00
压缩源文件目录区的全局方式标记应为 09 00
以上的09 00只代表常见的值,有些题目中会是其他的值(例如本题的是01 00)
回到本题,使用winhex打开压缩包,查看对应位置
本题的压缩包的压缩源文件数据区的全局方式标记是01 00,
压缩包的压缩源文件目录区的全局方式标记是01 00,判断是伪加密,将他的值改为00 00,保存文件,之后重新打开压缩包,没有密码了,可以直接打开压缩包得到图片。
得到flag