Buuctf Zip伪加密

本文详细介绍了如何通过16进制编辑器 UltraEdit 分析ZIP文件的伪加密。通过查找504B的标记并检查全局方式位标记,发现其在压缩源文件数据区和目录区的值均为0900,这通常表示真加密,但根据题目提示是伪加密。将这些标记改为0000后,文件的密码保护消失,成功打开flag.txt,揭示了flag。伪加密是一种常见的CTF挑战技巧,需要深入理解文件格式来解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下载该文件,发现该文件为一个压缩包,打开压缩包,里面有一个flag.txt文件

打开该flag.txt文件,发现该文件有密码保护

利用 ARCHPR对该文件进行破解,发现无法进行破解,结合题目可以知道该题为伪加密

利用UltraEdit(16进制编辑器)打开该文件,搜索字符50 4B,总共有三个50 4B位置

第一个50 4B为50 4B 03 04

第二个50 4B为50 4B 01 02

 

第三个50 4B为50 4B 05 06

 

补充一下伪加密的知识点:

在50 4B 03 04的区域叫压缩源文件数据区,在此03 04的后3,4个字节byte处叫全局方式位标记

在50 4B 01 02的区域叫压缩源文件目录区,在此01 02的后5,6个字节byte处也叫全局方式位标记

这些全局方式位标记是判断该文件是否有加密的重要标志

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

这里可以参考一下这篇博客

(1条消息) 【CTF】伪加密专题_BJFU_vth的博客-优快云博客_ctf伪加密https://blog.youkuaiyun.com/weixin_41687289/article/details/82695801当我们查看该文件16进制时却发现全局方式标记都为09 00

 

 当时利用密码爆破工具却无法进行爆破,同时题意也说明该题为伪加密

那么将该处的09 00全部改为00 00尝试一下

发现该zip文件已经没有密码,成功打开flag.txt文件

 成功获取到该题的flag:

flag{Adm1N-B2G-kU-SZIP}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值