大神教你用Python破解压缩文件zip密码

说几句废话:小编本身就是一名python开发工程师,我自己花了三天时间整理了一套python学习教程,从最基础的python脚本到web开发,爬虫,数据分析,数据可视化,机器学习,等,这些资料有想要的小伙伴" 点击 " 即可领取

那天晚上,某大神和你一样在某个小网站上搜寻某些私密的学习资料,突然看到论坛有人提供了一个非常牛逼的资源,某大神怀着激动的心情下载了下来:

在这里插入图片描述

他怀着激动的心情打开了这个压缩文件,看到就只有这么一个 txt

在这里插入图片描述

某大神就是一顿双击,可是突然发现,这玩意居然需要密码

在这里插入图片描述

???裤子都脱了,你给我看这个?

某大神只好找到楼主,求他给下解压密码,对方只是冷淡的回了一句“250块钱不讲价”,某大神摸了摸自己刚提上裤子的口袋,微微摇了摇头,骂了楼主一句没良心之后又回到了文件面前,想着随便输入一下碰碰运气,可想而知肯定没成功:

在这里插入图片描述

这可咋办,看不到文件内容心里贼难受,过了一会某大神灵光一闪,终于记起来自己是个python大神了,自己用Python 来把密码给破解了应该不难吧?于是某大神看了一下Python文档,找到了一个叫做zipfile 的库,专门用来操作zip 文件的

在这里插入图片描述

往下拉,某大神突然看到这个方法

在这里插入图片描述

某大神心中一乐,这不正是我想要的嘛,使用 extractall 方法解压文件pwd 传入 zip 密码就可以了,自己不知道密码一个一个试就太慢了,某大神突然想到了这玩意

在这里插入图片描述

Python 疯狂的去调用这个 extractall 方法,每次传入的pwd 都不同,直到试到密码正确为止这不就只是时间问题了么?

思路有了,代码撸起,某大神希望可以开发一个破解脚本说不定以后还可以用得着,像这样

在这里插入图片描述

可以让 Python 直接暴力破解,也可以传入自定义的密码字典文件去破解,于是他使用了 click 来定义,命令参数的使用

在这里插入图片描述

可以通过 b的参数值,判断使用哪种破解方式

在这里插入图片描述

首先来写一下字典破解的方式,使用这种方式,说明用户手上有密码字典文件了

在这里插入图片描述

那么只要读取这些密码挨个去解压就 ok,首先使用 ZipFile 打开要破解的压缩文件

在这里插入图片描述

接着打开用户传入的字典文件挨个密码读取

在这里插入图片描述

接着就可以调用 extractall来依次尝试密码了,如果没报密码错误说明密码正确,把正确的密码打印出来,否则就是错误密码,或者你这字典密码压根就没有正确的密码。

在这里插入图片描述

ok传入一个10000个密码的字典文件,试着运行一波

在这里插入图片描述

恩,还可以,不过字典文件密码太少没那么轻易找得到,接下来再来写另一种情况,当用户字典密码文件找不到正确的,或者用户压根就没有字典密码咋办,可能你也想到了,可以使用迭代呀

在这里插入图片描述

于是某大神把键盘的按钮都死命敲了个遍

在这里插入图片描述

然后使用itertoolsproduct就可以迭代生成各种密码了,比如要生成各种6位的密码就可以这样

在这里插入图片描述

运行起来就是这样的

在这里插入图片描述

因为不知道密码的长所以可以从一位数的密码开始生成,然后逐个击破

在这里插入图片描述

同样的将每次生成的密码逐个尝试

在这里插入图片描述

如果发现一位数的密码都不正确就将生成的密码长度 +1以此类推

在这里插入图片描述

来试试

在这里插入图片描述

恩,有内味了,写完之后某大神就开始跑他的压缩文件了

在这里插入图片描述

等啊等啊等啊,感觉密码应该不是很简单需要等一段时间索性就让它跑着然后去看了会论坛,

终于等到了第二天起来发现密码出来了!!

在这里插入图片描述

虽然某大神感觉被这密码嘲讽了一番,但还是怀着激动的心情打开了压缩文件输入了密码

在这里插入图片描述

密码正确,打开文件天机不可泄露

在这里插入图片描述

某大神直接哭晕再厕所

以上就是小编今天为大家带来的内容,小编本身就是一名python开发工程师,我自己花了三天时间整理了一套python学习教程,从最基础的python脚本到web开发,爬虫,数据分析,数据可视化,机器学习,等,这些资料有想要的小伙伴" 点击 " 即可领取

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值