Zip伪加密破解神器——ZipCracker

本文探讨了ZIP文件的加密标识位,伪加密的原理和修复方法,以及暴力破解策略,如CRC32碰撞攻击。同时介绍了面向Python开发者的全套学习资源,包括前端开发的体系化教程和实战项目。

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

加密标识位:

在Zip文件的加密标识位中,奇数和偶数的区别在于最低位(least significant bit)的值。这个位决定了文件是否被加密。
如果加密标识位的最低位是奇数(值为1),表示文件被标记为加密。
如果加密标识位的最低位是偶数(值为0),表示文件未被标记为加密。
这个最低位的值是用来模拟Zip文件的伪加密。实际上,伪加密并不提供真正的数据保护,只是通过修改标志位来表示文件已经加密。

ZIP压缩源文件数据区:

50 4B 03 04:这是头文件标记(0x04034b50) 
14 00:解压文件所需 pkware 版本 
00 00:全局方式位标记(有无加密) 
08 00:压缩方式 
5A 7E:最后修改文件时间 
F7 46:最后修改文件日期 
16 B5 80 14:CRC-32校验(1480B516) 
19 00 00 00:压缩后尺寸(25) 
17 00 00 00:未压缩尺寸(23) 
07 00:文件名长度 
00 00:扩展记录长度 

伪加密修复原理

程序通过检测zip文件的加密标志位,并对标识位进行适当修改,最后测试修改后的压缩包软件是否可以正常解压即可。

修复前的伪加密文件:test01.zip

在这里插入图片描述

修复后的正常无加密的文件:test01.zip

在这里插入图片描述

2.暴力破解-内置字典
python3 ZipCracker.py test02.zip

3.暴力破解-用户自定义字典
python3 ZipCracker.py test02.zip MyDict.txt

在这里插入图片描述

4.暴力破解-CRC32碰撞
python3 ZipCracker.py test03.zip 

在这里插入图片描述
CRC32碰撞原理

CRC32是一种冗余校验码,它可以生成一个32位的校验值,用于验证数据的完整性。在文件中,比如PNG图像或ZIP压缩包中,CRC32被用作校验文件的完整性。

由于CRC32计算校验值时会考虑数据块中的每一位,即使只有一位发生变化,CRC32值也会完全不同。这导致了基于CRC32的攻击方法。

在攻击中,我们利用以下条件进行操作:

目标文件的内容很小,通常只有几个字节。 加密密码很长。
我们不是直接尝试破解压缩包的密码,而是尝试破解原始文件的内容,通常是可见的字符串。通过猜测和尝试不同的字符串,我们可以生成不同的CRC32值,然后与目标文件的CRC32值进行比较,以获取所需的信息。

这样,我们可以绕过对加密密码的破解,直接攻击文件内容,从而达到获取目标信息的目的。这种攻击方法利用了CRC32的特性,即使只修改了文件内容的一小部分,CRC32值也会完全改变,从而使我们能够尝试不同的字符串来获取所需的信息。


本工具仅提供给安全测试人员进行安全自查使用用户滥用造成的一切后果与作者无关使用者请务必遵守当地法律 本程序不得用于商业用途,仅限学习交流。


自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)

课程,基本涵盖了95%以上前端开发知识点,真正体系化!**

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值