python编写暴力破解zip文档程序的实例讲解


Posted in Python onApril 24, 2018

编写暴力破解Zip文件要从学习zipfile库的使用方法入手,首先打开Python解释器,用help('zipfile')命令来了解这个库并重点看一下ZipFile类中的extractall()这个方法

ZipFile

python编写暴力破解zip文档程序的实例讲解

extractall()

python编写暴力破解zip文档程序的实例讲解

让我们来写一个脚本测试一下Zip文件库的用法,首先创建一个有密码的压缩文件,这里设置密码为awd,文件名为evil.zip,要解压这个zip文件,实例化一个新的ZipFile类,使用extractall()方法,在可选参数pwd上填上密码

python编写暴力破解zip文档程序的实例讲解

运行后你会发现他会将zip文件解压到一个名为evil的目录下

如果用一个错误的密码执行脚本时,会显示错误,我们加一些捕获和处理异常的代码来显示错误信息

python编写暴力破解zip文档程序的实例讲解

我们看到显示了错误信息,告诉了我们用了错误的密码

python编写暴力破解zip文档程序的实例讲解

我们可以用抛出的异常测试我们的字典文件,在这里为了简便直接新建了一个“dictionary.txt”文件,其中有zip文件的密码,我们需要遍历字典中的每个单词。如果extractall执行成功则输出密码,否则抛出异常,忽略这个异常,再测试下一个密码。

python编写暴力破解zip文档程序的实例讲解

现在让我们清理一下这个代码,成为模块化,而非线性

python编写暴力破解zip文档程序的实例讲解

脚本出来后我们还要提高它的性能。我们可以用线程同时测试多个密码。对字典中的单词,我们都会生成一个新的线程去测试他,然后就可以收工了

python编写暴力破解zip文档程序的实例讲解

以上这篇python编写暴力破解zip文档程序的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
django实现前后台交互实例
Aug 07 Python
浅谈python 里面的单下划线与双下划线的区别
Dec 01 Python
python读取和保存图片5种方法对比
Sep 12 Python
Python3编码问题 Unicode utf-8 bytes互转方法
Oct 26 Python
matplotlib实现区域颜色填充
Mar 18 Python
PyCharm2018 安装及破解方法实现步骤
Sep 09 Python
Python拼接字符串的7种方式详解
Mar 19 Python
Python获取浏览器窗口句柄过程解析
Jul 25 Python
Python gevent协程切换实现详解
Sep 14 Python
Python list和str互转的实现示例
Nov 16 Python
PyTorch预训练Bert模型的示例
Nov 17 Python
Python数据可视化之Seaborn的安装及使用
Apr 19 Python
解决python删除文件的权限错误问题
Apr 24 #Python
python3+PyQt5实现自定义流体混合窗口部件
Apr 24 #Python
python3+PyQt5实现拖放功能
Apr 24 #Python
python3+PyQt5使用数据库表视图
Apr 24 #Python
python3+PyQt5使用数据库窗口视图
Apr 24 #Python
python下解压缩zip文件并删除文件的实例
Apr 24 #Python
python 删除指定时间间隔之前的文件实例
Apr 24 #Python
You might like
复杂检索数据并分页显示的处理方法
2006/10/09 PHP
PHP获取MAC地址的函数代码
2011/09/11 PHP
PHP CURL 内存泄露问题解决方法
2015/02/12 PHP
php实现过滤UBB代码的类
2015/03/12 PHP
php根据生日计算年龄的方法
2015/07/13 PHP
FleaPHP框架数据库查询条件($conditions)写法总结
2016/03/19 PHP
laravel框架创建授权策略实例分析
2019/11/22 PHP
PHP实现常用排序算法的方法
2020/02/05 PHP
用函数模板,写一个简单高效的 JSON 查询器的方法介绍
2013/04/17 Javascript
jquery单行文字向上滚动效果示例
2014/03/06 Javascript
jquery无法设置checkbox选中即没有变成选中状态
2014/03/27 Javascript
jQuery中has()方法用法实例
2015/01/06 Javascript
JavaScript实现斗地主游戏的思路
2016/02/29 Javascript
AngularJS 模块详解及简单实例
2016/07/28 Javascript
深入理解vue-router之keep-alive
2017/08/31 Javascript
读懂CommonJS的模块加载
2019/04/19 Javascript
vue之debounce属性被移除及处理详解
2019/11/13 Javascript
js实现小时钟效果
2020/03/25 Javascript
Python 深入理解yield
2008/09/06 Python
Python输出带颜色的字符串实例
2017/10/10 Python
Python线程下使用锁的技巧分享
2018/09/13 Python
python利用pandas将excel文件转换为txt文件的方法
2018/10/23 Python
python Pexpect 实现输密码 scp 拷贝的方法
2019/01/03 Python
Python多线程threading join和守护线程setDeamon原理详解
2020/03/18 Python
keras topN显示,自编写代码案例
2020/07/03 Python
使用before和:after伪类制作css3圆形按钮
2014/04/08 HTML / CSS
深入浅析HTML5中的article和section的区别
2018/05/15 HTML / CSS
美国最大的烧烤架和户外生活用品专业零售商:Barbeques Galore
2021/01/09 全球购物
公司踏青活动方案
2014/08/16 职场文书
2014年教师党员自我评议
2014/09/19 职场文书
史上最牛的辞职信
2015/02/28 职场文书
幼儿教师远程研修感悟
2015/11/18 职场文书
如何拟写通知正文?
2019/04/02 职场文书
如何使用php生成zip压缩包
2021/04/21 PHP
Python实现自动玩连连看的脚本分享
2022/04/04 Python
改造DE1103三步曲
2022/04/07 无线电