zip文件解压失败怎么办(文件解压操作流程)
python暴力破解zip文件密码
通过python内置的zipfile模块实现对zip文件的解压,加点料完成口令破解
zipfile模块用来做zip格式编码的压缩和解压缩的,zipfile里有两个非常重要的class, 分别是zipfile和zipinfo, 在绝大多数的情况下,我们只需要使用这两个class就可以了。zipfile是主要的类,用来创建和读取zip文件而zipinfo是存储的zip文件的每个文件的信息的。
比如要读取一个python zipfile 模块,这里假设filename是一个文件的路径:
import zipfile
z = zipfile.zipfile(filename, ‘r’)
for i in z.infolist():
print i.file_size, i.header_offset
1
2
3
4
这里使用了z.infolist(), 它返回的就是压缩包内所有文件的信息,就是一个zipinfo的列表。一个zipinfo对象中包含了压缩包内一个文件的信息,其中比较常用的是 filename, file_size, header_offset, 分别为文件名,文件大小,文件数据在压缩包中的偏移。
假设我们有一个已知密码为123的zip文件
import zipfile #导入模块,它是做压缩和解压缩的
password=”123″
zfile = zipfile.zipfile(“test.zip”) #要解压缩的压缩包
zfile.extractall(path=’c:\\users\\administrator\\desktop\\’, members=zfile.namelist(), pwd=password.encode(‘utf-8’))
#进行解压缩操作,path为输出的路径
1
2
3
4
5
测试成功,下面进行暴力破解
#此代码适合于破解密码为0-999999的密码,数字区间可以自己设置
import time
import zipfile
from tqdm import tqdm
def zipcrackl(start,end):
a = time.time()
zfile = zipfile.zipfile(‘
d:/baidunetdiskdownload/16.zip’)#把要破解的zip的文件名替换zipfile里面的参数
for i in tqdm(range(start,end)):
try:
zfile.extractall(path=’c:\\users\\administrator\\desktop\\’,pwd=str(i))
print(u’密码是:’+str(i))
print(u’破解时间是:’+str(time.time()-a)+’s’)#破解时间减去开始那个时刻的时间,得到的就是破解这个压缩文件的时间
break
except exception as e:
#print(e)
pass
if __name__ == ‘__main__’:
zipcrackl(0,999999)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
如果密码中还有其他非数字字符,考虑使用破解字典的方法。
以下代码中pwd为自己设置的密码字典。
import zipfile
zfile = zipfile.zipfile(“test.zip”)
passfile=open(‘pwd.txt’) #读取你设定的密码文件
for line in passfile.readlines():
try:
password = line.strip(‘\n’)
zfile.extractall(path=’c:\\users\\administrator\\desktop\\’, members=zfile.namelist(), pwd=password.encode(‘utf-8’))
break
except:
print(“又错了”)
上一篇: 自动化运维平台有哪些,自动化运维平台架构
推荐阅读
-
zip文件解压失败怎么办(文件解压操作流程)
-
苹果手机zip文件怎么打开方式(iPhone有自带解压软件)
-
手机压缩文件忘记密码怎么解压(手机解压zip暴力破解器)
-
删除jar包中的指定文件 博客分类: Java compress解压缩删除jar包文件删除zip包文件删除压缩包文件
-
【转】Ubuntu 解压zip文件名乱码问题解决 博客分类: 随手摘记 ubuntuzip乱码
-
Android zip文件压缩解压 博客分类: android androidzip压缩解压
-
Java压缩解压zip文件的中文文件名在Windows和Linux环境下乱码问题的解决方案 zipzipfilezipoutputstream
-
ubuntu解压zip文件乱码 博客分类: ubuntu学习 ubuntuzip乱码
-
利用java解压.zip的压缩文件 博客分类: J2EE java解压zip
-
linux常见命令归整 博客分类: os linux命令解压文件失败gunzipunzip