Python之如何暴力破解加密文件
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Python之如何暴⼒破解加密⽂件
背景介绍:
在⼯作中我们可能会遇到⼀些加密过的压缩⽂件,如果需要获取压缩⽂件的内容,必须先解密,然⽽仅凭⼿动去尝试肯定是不⼤可能的,那么我们借助 Python 来实现会极⼤的增加破解成功的可能性。
Python 代码实现如下:
1import zipfile
2import rarfile
3import time
4
5def extractFiles(filename):
6#记录开始时间
7 start_time = time.time()
8
9#判断压缩包类型并读取压缩包
10if(filename.endswith(".zip")):
11 fp=zipfile.ZipFile(filename,'r')
12if(filename.endswith(".rar")):
13 fp=rarfile.RarFile(filename,'r')
14
15#读取密码本⽂件
16try:
17 passwdfiles=open("passwd.txt")
18except:
19print("the file not found")
20
21#遍历密码本中的每⼀⾏密码去匹配 zip 加密⽂件
22for line in passwdfiles.readlines():
23 passwd= line.strip("\n")
24# passwd=line
25try:
26#调⽤extractall来依次尝试密码
27 fp.extractall(path='.',pwd=passwd.encode("utf-8"))
28print("the %s of passwd is right"%passwd)
29except:
30print("the %s of passwd is wrong"%passwd)
31
32# 记录结束时间
33 end_time = time.time()
34print('破解压缩包花了%s秒' % (end_time - start_time))
35
36if__name__ == '__main__':
37 extractFiles("test.zip")
⼩结:
上述⽰例代码适合以.zip和.rar两种格式结尾的压缩⽂件的解密,其主要思路是循环使⽤密码本中的每⼀⾏密码尝试进⾏压缩⽂件的解密操作,最后记录整个解密过程共花费的时长,以秒为单位。
欢迎关注【⽆量测试之道】公众号,回复【领取资源】
Python编程学习资源⼲货、
Python+Appium框架APP的UI⾃动化、
Python+Selenium框架Web的UI⾃动化、
Python+Unittest框架API⾃动化、
资源和代码免费送啦~
⽂章下⽅有公众号⼆维码,可直接微信扫⼀扫关注即可。
备注:我的个⼈公众号已正式开通,致⼒于测试技术的分享,包含:⼤数据测试、功能测试,测试开发,API接⼝⾃动化、测试运维、UI⾃动化测试等,微信搜索公众号:“⽆量测试之道”,或扫描下⽅⼆维码:
添加关注,让我们⼀起共同成长!。