小明用 Python 开发一个 【暴力破解压缩文件 zip 密码】,省了 250 块钱学习python的正确姿势共 1377字,需浏览 3分钟 ·2020-09-02 00:18 那天晚上小明和你一样在某个小网站上搜寻某些私密的学习资料突然看到论坛有人提供了一个非常牛逼的资源小明怀着激动的心情下载了下来他怀着激动的心情打开了这个压缩文件看到就只有这么一个 txt 小明就是一顿双击可是突然发现这玩意居然需要密码???裤子都脱了你给我看这个?小明只好找到楼主求他给下解压密码对方只是冷淡的回应了一句“250块钱不讲价”小明摸了摸自己刚穿上裤子的口袋感叹了一句:骂了一句楼主没良心之后小明叹了口气...回到 zip 文件面前想着碰碰运气随便输了几个密码可惜都是错误的这可咋办呢?看不到文件内容心理贼难受过了一会小明灵光一闪这不,关注了“学习 Python 的正确姿势”这个公众号有段时间了自己用 Python 来把密码给破解了应该不难吧?于是小明看了一下Python 文档找到了一个叫做zipfile 的库专门用来操作 zip 文件的往下拉小明突然看到这个方法小明心中一乐这不正是我想要的嘛使用 extractall 方法解压文件pwd 传入 zip 密码就可以了自己不知道密码一个一个试就太慢了小明突然想到了这玩意让 Python 疯狂的去调用这个 extractall 方法每次传入的 pwd 都不同直到试到密码正确为止这不就只是时间问题了么?思路有了代码撸起小明希望可以开发一个破解脚本说不定以后还可以用得着像这样可以让 Python 直接暴力破解也可以传入自定义的密码字典文件去破解于是他使用了 click 来定义命令参数的使用可以通过 b 的参数值判断使用哪种破解方式首先来写一下字典破解的方式使用这种方式说明用户手上有密码字典文件了那么只要读取这些密码挨个去解压就 ok首先使用 ZipFile 打开要破解的压缩文件接着打开用户传入的字典文件挨个密码读取接着就可以调用 extractall来依次尝试密码了如果没报密码错误说明密码正确把正确的密码打印出来否则就是错误密码或者你这字典密码压根就没有正确的密码ok传入一个 10000 个密码的字典文件试着运行一波恩,还可以不过字典文件密码太少没那么轻易找得到接下来再来写另一种情况当用户字典密码文件找不到正确的或者用户压根就没有字典密码咋办可能你也想到了可以使用迭代呀于是小明把键盘的按钮都死命敲了个遍然后使用 itertools 的 product就可以迭代生成各种密码了比如要生成各种 6 位的密码就可以这样运行起来就是这样的因为不知道密码的长度所以可以从一位数的密码开始生成然后逐个击破同样的将每次生成的密码逐个尝试如果发现一位数的密码都不正确就将生成的密码长度 +1以此类推来试试恩,有内味了写完之后小明就开始跑他的压缩文件了等啊等啊等啊感觉密码应该不是很简单需要等一段时间索性就让它跑着然后睡觉去了小明第二天起来发现密码出来了!!虽然小明感觉被这密码嘲讽了一番但还是怀着激动的心情小明打开了压缩文件输入了密码密码正确打开文件天机不可泄露小明看到之后直接哭晕在厕所(完)本故事纯属虚构如有雷同???咱们下回见peace! 浏览 49点赞 评论 收藏 分享 手机扫一扫分享分享 举报 评论图片表情视频评价全部评论推荐 用 Python 破解了同学压缩文件的密码简说Python0用 Python 破解了同学压缩文件的密码Python编程与实战0Python暴力破解附近局域网WiFi密码码农突围0Python 暴力破解附近局域网 WiFi 密码杰哥的IT之旅0Python暴力破解附近局域网WiFi密码开源Linux0一个简单的Python暴力破解网站登录密码脚本马哥Linux运维0Python暴力破解附近局域网WiFi密码程序IT圈0Python暴力破解附近局域网WiFi密码马哥Linux运维0Python暴力破解附近局域网WiFi密码Python网络爬虫与数据挖掘0Python 暴力破解附近局域网 WiFi 密码逆锋起笔0点赞 评论 收藏 分享 手机扫一扫分享分享 举报