加密压缩包解密技巧 压缩文件密码破解

那天晚上
小明和你一样
在某个小网站上搜寻某些
私密的学习资料

加密压缩包解密技巧 压缩文件密码破解


突然看到论坛有人提供了
一个非常牛逼的资源
小明怀着激动的心情
下载了下来

加密压缩包解密技巧 压缩文件密码破解


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

加密压缩包解密技巧 压缩文件密码破解


小明就是一顿双击
可是突然发现
这玩意居然需要密码

加密压缩包解密技巧 压缩文件密码破解


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

加密压缩包解密技巧 压缩文件密码破解


小明只好找到楼主
求他给下解压密码
对方只是冷淡的回应了一句
“250 块钱不讲价”
小明摸了摸自己
刚穿上裤子的口袋
感叹了一句:

加密压缩包解密技巧 压缩文件密码破解


骂了一句楼主没良心之后
小明叹了口气…
回到 zip 文件面前
想着碰碰运气
随便输了几个密码
可惜都是错误的

加密压缩包解密技巧 压缩文件密码破解


这可咋办呢?
看不到文件内容
心理贼难受

加密压缩包解密技巧 压缩文件密码破解


过了一会
小明灵光一闪
这不,关注了
“学习 Python 的正确姿势”
这个公众号有段时间了
自己用 Python 来把密码给破解了
应该不难吧?

加密压缩包解密技巧 压缩文件密码破解


于是小明看了一下
Python 文档
找到了一个叫做
zipfile 的库
专门用来操作 zip 文件的

加密压缩包解密技巧 压缩文件密码破解


往下拉
小明突然看到这个方法

加密压缩包解密技巧 压缩文件密码破解


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

加密压缩包解密技巧 压缩文件密码破解


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

加密压缩包解密技巧 压缩文件密码破解


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

加密压缩包解密技巧 压缩文件密码破解


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

加密压缩包解密技巧 压缩文件密码破解


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

加密压缩包解密技巧 压缩文件密码破解


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

推荐阅读