python简单利用字典破解zip文件口令


Posted in Python onSeptember 07, 2020

前几天在一本书上看到一篇可以利用字典破解zip文件密码的文章,觉得比较有意思于是研究了一番,在这里分享一下

原理

主要是利用python里自带的zipfile库中的extractall函数来实现的,简单导入zipfile之后,实例化一个ZipFile类。利用extractall()来解压这个文件,并在参数pwd上填入正确密码

python简单利用字典破解zip文件口令

这时我们发现执行脚本之后,fate.zip会被正确解压,而填入错误密码则会入下图一样报错

python简单利用字典破解zip文件口令因此

我们可以利用因口令不正确而抛出的异常来测试字典文件中是否有zip文件的密码,并利用try expect来处理异常信息。

代码

假定zip文件密码为fate,pwd.txt为字典文件需要注意的是python3以及不支持自动ascii码了,在extractall的pwd参数后需手动添加编码类型,# noinspection PyBroadException则是为了防止PyCharm报错

提高性能

将程序模块化后,在利用多线程处理可以提高程序性能,可以利用Thread来实现多线程处理

import zipfile
from threading import Thread


def extractfile(zFile,password):
 # noinspection PyBroadException
 try:
 zFile.extractall(pwd=password.encode("utf=8"))
 print("password="+password)
 except Exception as e:
 pass


def main():
 zFile = zipfile.ZipFile(r"D:\python\fate.zip")
 passFile = open(r"D:\python\pwd.txt")
 for line in passFile.readlines():
 password = line.strip('\n')
 t = Thread(target=extractfile(zFile , password))
 t.start()


if __name__ == "__main__":
 main()

利用if __name__ == "__main__"使函数只在当前模块运行,当被导入时不运行

结语

到此这篇关于python简单利用字典破解zip文件口令的文章就介绍到这了,更多相关python字典破解zip文件口令内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现监控linux性能及进程消耗性能的方法
Jul 25 Python
在MAC上搭建python数据分析开发环境
Jan 26 Python
Python3 模块、包调用&路径详解
Oct 25 Python
tensorflow 用矩阵运算替换for循环 用tf.tile而不写for的方法
Jul 27 Python
详解用pyecharts Geo实现动态数据热力图城市找不到问题解决
Jun 26 Python
Python的Tkinter点击按钮触发事件的例子
Jul 19 Python
对Python _取log的几种方式小结
Jul 25 Python
Python django搭建layui提交表单,表格,图标的实例
Nov 18 Python
python将三维数组展开成二维数组的实现
Nov 30 Python
tensorflow实现二维平面模拟三维数据教程
Feb 11 Python
Python通过yagmail实现发送邮件代码解析
Oct 27 Python
一个非常简单好用的Python图形界面库(PysimpleGUI)
Dec 28 Python
python 如何快速复制序列
Sep 07 #Python
Python2与Python3关于字符串编码处理的差别总结
Sep 07 #Python
python 装饰器的实际作用有哪些
Sep 07 #Python
通俗讲解python 装饰器
Sep 07 #Python
彻底搞懂python 迭代器和生成器
Sep 07 #Python
python如何设置静态变量
Sep 07 #Python
获取CSDN文章内容并转换为markdown文本的python
Sep 06 #Python
You might like
WHOIS类的修改版
2006/10/09 PHP
php实现比较两个字符串日期大小的方法
2015/05/12 PHP
学习php设计模式 php实现命令模式(command)
2015/12/08 PHP
Linux下编译redis和phpredis的方法
2016/04/07 PHP
PHP入门教程之图像处理技巧分析
2016/09/11 PHP
PHP微信企业号开发之回调模式开启与用法示例
2017/11/25 PHP
laravel 实现上传图片到本地和前台访问示例
2019/10/21 PHP
jquery 弹出层实现代码
2009/10/30 Javascript
jquery队列queue与原生模仿其实现方法分享
2014/03/25 Javascript
jquery 插件实现瀑布流图片展示实例
2015/04/03 Javascript
jquery mobile开发常见问题分析
2016/01/21 Javascript
Bootstrap每天必学之按钮(Button)插件
2016/04/25 Javascript
微信小程序实现图片上传、删除和预览功能的方法
2017/12/18 Javascript
Vue2.x通用条件搜索组件的封装及应用详解
2019/05/28 Javascript
[02:44]DOTA2英雄基础教程 魅惑魔女
2014/01/07 DOTA
[02:33]2018DOTA2亚洲邀请赛赛前采访——LGD
2018/04/04 DOTA
[32:36]完美世界DOTA2联赛PWL S3 LBZS vs CPG 第二场 12.12
2020/12/16 DOTA
Python Deque 模块使用详解
2014/07/04 Python
详解Django中的权限和组以及消息
2015/07/23 Python
Numpy之reshape()使用详解
2019/12/26 Python
pytorch 准备、训练和测试自己的图片数据的方法
2020/01/10 Python
在echarts中图例legend和坐标系grid实现左右布局实例
2020/05/16 Python
call在Python中改进数列的实例讲解
2020/12/09 Python
css3背景图片透明叠加属性cross-fade简介及用法实例
2013/01/08 HTML / CSS
CSS3实现莲花绽放的动画效果
2020/11/06 HTML / CSS
网购亚洲时装、美容产品和生活百货:YesStyle
2016/09/15 全球购物
英国网上购买门:Direct Doors
2018/06/07 全球购物
Hawes & Curtis澳大利亚官网:英国经典服饰品牌
2018/10/29 全球购物
一套比较完整的软件测试人员面试题
2012/05/13 面试题
高中生活自我鉴定
2014/01/18 职场文书
校庆接待方案
2014/03/18 职场文书
体育专业求职信
2014/07/16 职场文书
ktv好的活动方案
2014/08/17 职场文书
公司的门卫岗位职责
2014/09/09 职场文书
男人帮观后感
2015/06/18 职场文书
2016年“12.3”国际残疾人日活动总结
2016/04/01 职场文书