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 相关文章推荐
Win7下Python与Tensorflow-CPU版开发环境的安装与配置过程
Jan 04 Python
使用Python通过win32 COM打开Excel并添加Sheet的方法
May 02 Python
python实现守护进程、守护线程、守护非守护并行
May 05 Python
Python列表推导式与生成器用法分析
Aug 02 Python
python实现网页自动签到功能
Jan 21 Python
Tensorflow实现酸奶销量预测分析
Jul 19 Python
python2 中 unicode 和 str 之间的转换及与python3 str 的区别
Jul 25 Python
python文字和unicode/ascll相互转换函数及简单加密解密实现代码
Aug 12 Python
python判断变量是否为int、字符串、列表、元组、字典的方法详解
Feb 13 Python
django使用graphql的实例
Sep 02 Python
使用Python解析Chrome浏览器书签的示例
Nov 13 Python
tensorflow中的梯度求解及梯度裁剪操作
May 26 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
请php正则走开
2008/03/15 PHP
PHP中MD5函数使用实例代码
2008/06/07 PHP
Discuz Uchome ajaxpost小技巧
2011/01/04 PHP
php cli换行示例
2014/04/22 PHP
thinkphp5 加载静态资源路径与常量的方法
2017/12/24 PHP
PHP实现正则匹配所有括号中的内容
2018/06/22 PHP
PHP simplexml_load_string()函数实例讲解
2019/02/03 PHP
jQuery Ajax之$.get()方法和$.post()方法
2009/10/12 Javascript
javaScript同意等待代码实现心得
2011/01/01 Javascript
JavaScript基础篇之变量作用域、传值、传址的简单介绍与实例
2013/06/29 Javascript
基于jQuery仿淘宝产品图片放大镜代码分享
2020/06/23 Javascript
JavaScript获取客户端IP的方法(新方法)
2016/03/11 Javascript
使用JavaScript触发过渡效果的方法
2017/01/19 Javascript
Bootstarp基本模版学习教程
2017/02/01 Javascript
全面解析Node.js 8 重要功能和修复
2017/06/02 Javascript
浅谈Vue数据响应
2018/11/05 Javascript
详解使用uni-app开发微信小程序之登录模块
2019/05/09 Javascript
小程序如何获取多个formId实现详解
2019/09/20 Javascript
[04:44]DOTA2西游记战队视频彩蛋流出 师徒开黑巧遇林书豪
2016/08/03 DOTA
python通过定义一个类实例作为ftp回调方法
2015/05/04 Python
python基于隐马尔可夫模型实现中文拼音输入
2016/04/01 Python
python 随机数使用方法,推导以及字符串,双色球小程序实例
2017/09/12 Python
Python get获取页面cookie代码实例
2018/09/12 Python
Python同步遍历多个列表的示例
2019/02/19 Python
使用Python-OpenCV向图片添加噪声的实现(高斯噪声、椒盐噪声)
2019/05/28 Python
Python 根据日志级别打印不同颜色的日志的方法示例
2019/08/08 Python
浅析PyTorch中nn.Module的使用
2019/08/18 Python
python 实现快速生成连续、随机字母列表
2019/11/28 Python
python opencv如何实现图片绘制
2020/01/19 Python
仿CSDN Blog返回页面顶部功能实现原理及代码
2013/06/30 HTML / CSS
Spartoo美国:欧洲排名第一的在线时装零售商
2019/12/12 全球购物
安全员岗位职责
2013/11/11 职场文书
怎样写演讲稿
2014/01/04 职场文书
好邻里事迹材料
2014/01/16 职场文书
一年级班主任寄语
2014/01/19 职场文书
创建文明城市倡议书
2015/04/28 职场文书