本文最后更新于:2019 , 八月 19日 星期一, 4:51 下午
简介
昨天我把zip压缩包的密码给忘记了
试了n多个还是不对,把我气得
今早直接写了一个 py脚本
好了,不扯淡了,开始吧
Code篇
思路:
1.zipfile模块下的 .extractall方法 和 .open 方法都有密码模块,测试了一下,如果密码错误报错Bad password for file
所以我们可以利用这个报错,正确就打印正确密码,错误就跳过。
2.加载字典来进行密码爆破
3.然后利用 sys 模块来自定义参数
1.利用zipfile模块的.extractall 和 pwd来进行密码爆破
# coding:utf-8
import zipfile
#1.zip 为加密文件
#pwd.txt 为密码字典
zip = zipfile.ZipFile('1.zip', 'r')
password = open('pwd.txt')
for i in password:
pwd = i.strip('\n')
try:
zip.extractall(pwd=pwd)
print pwd
zip.close()
except Exception as e:
pass
这里还是提供下.extractall
密码错误的报错吧
2.提高代码美观。。。和自定义参数
# coding:utf-8
import zipfile
import sys
def get_pwd(pwd):
try:
zip.extractall(pwd=pwd)
print pwd
zip.close()
except Exception as e:
pass
if __name__ == '__main__':
try:
zip = zipfile.ZipFile(sys.argv[1], 'r')
password = open(sys.argv[2])
for i in password:
pwd = i.strip('\n')
get_pwd(pwd)
except:
print u"python zip.py 压缩文件名 需要加载的字典"
print "python zip.py 1.zip pwd.txt"
3.没有输入参数的提示和运行结果