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 相关文章推荐
python实现用户答题功能
Jan 17 Python
Python中多个数组行合并及列合并的方法总结
Apr 12 Python
python操作mysql代码总结
Jun 01 Python
对Python正则匹配IP、Url、Mail的方法详解
Dec 25 Python
使用Python画股票的K线图的方法步骤
Jun 28 Python
python 实现识别图片上的数字
Jul 30 Python
Python数据处理篇之Sympy系列(五)---解方程
Oct 12 Python
浅谈Python3识别判断图片主要颜色并和颜色库进行对比的方法
Oct 25 Python
Python3 读取Word文件方式
Feb 13 Python
Python多线程获取返回值代码实例
Feb 17 Python
python虚拟环境模块venv使用及示例
Mar 04 Python
Python爬虫JSON及JSONPath运行原理详解
Jun 04 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
rephactor 优秀的PHP的重构工具
2011/06/09 PHP
php数组函数序列之array_splice() - 在数组任意位置插入元素
2011/11/07 PHP
PHP小偷程序的设计与实现方法详解
2016/10/15 PHP
Laravel 框架控制器 Controller原理与用法实例分析
2020/04/14 PHP
简短几句 通俗解释javascript的闭包
2011/01/17 Javascript
使用Jquery实现点击文字后变成文本框且可修改
2013/09/21 Javascript
jquery each的几种常用的使用方法示例
2014/01/21 Javascript
node.js中的fs.open方法使用说明
2014/12/17 Javascript
JS网页在线获取鼠标坐标值的方法
2015/02/28 Javascript
js倒计时简单实现方法
2015/12/17 Javascript
jQuery中bind(),live(),delegate(),on()绑定事件方法实例详解
2016/01/19 Javascript
一些实用性较高的js方法
2016/04/19 Javascript
jquery分隔Url的param方法(推荐)
2016/05/25 Javascript
JS 循环li添加点击事件 (闭包的应用)
2016/12/10 Javascript
JavaScript实现简单生成随机颜色的方法
2017/09/21 Javascript
webpack配置打包后图片路径出错的解决
2018/04/26 Javascript
nodejs 使用http进行post或get请求的实例(携带cookie)
2019/01/03 NodeJs
[46:47]2014 DOTA2国际邀请赛中国区预选赛5.21 LGD-CDEC VS NE
2014/05/22 DOTA
[57:31]DOTA2-DPC中国联赛 正赛 SAG vs CDEC BO3 第一场 2月1日
2021/03/11 DOTA
pytyon 带有重复的全排列
2013/08/13 Python
Python中用startswith()函数判断字符串开头的教程
2015/04/07 Python
Python实现的多线程http压力测试代码
2017/02/08 Python
Python学习笔记之if语句的使用示例
2017/10/23 Python
Queue 实现生产者消费者模型(实例讲解)
2017/11/13 Python
python的exec、eval使用分析
2017/12/11 Python
Python使用matplotlib的pie函数绘制饼状图功能示例
2018/01/08 Python
Python画图高斯分布的示例
2019/07/10 Python
python计算波峰波谷值的方法(极值点)
2020/02/18 Python
Python实现获取当前目录下文件名代码详解
2020/03/10 Python
amaze ui 的使用详细教程
2020/08/19 HTML / CSS
社区服务活动报告
2015/02/05 职场文书
门卫岗位职责
2015/02/09 职场文书
幼儿园家长反馈意见
2015/06/03 职场文书
公司员工离职感言
2015/08/03 职场文书
导游词之晋城蟒河
2019/12/12 职场文书
教你怎么用python实现字符串转日期
2021/05/24 Python