背景
你好!最近从网上的百度网盘链接下载个资料,也没有仔细看,5个G费劲下载下来,结果发现zip压缩包设置了密码,坑爹啊,更坑的是要获取压缩包密码得扫码支付8.9元,啊,我这暴脾气!!!
解压密码被一个叫8tupian的加密了,需要支付才能显示密码。。。
暴力破解
方法很简单,直接暴力破解,图片上依稀可以看到密码是5位,好像是7开头。。
刚开始试了全数字的没找到密码,后来加上了小写字母,破解成功
直接上 代码
:
import zipfile
def main():
count=0 #试验次数
cyber_chars=['0','2','3','4','5','6','7','8','9','1','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
zfile = zipfile.ZipFile('./123.zip')
for c1 in ['7']: #猜测密码为数字7开头
for c2 in range(len(cyber_chars)):
for c3 in range(len(cyber_chars)):
for c4 in range(len(cyber_chars)):
for c5 in range(len(cyber_chars)):#暴力生成五位测试密码
password=c1+cyber_chars[c2]+cyber_chars[c3]+cyber_chars[c4]+cyber_chars[c5]
try:
zfile.extractall(pwd=bytes(password, "utf8"))
print("文件解压密码为: ", password)
print("累计测试密码次数:",count)
return password #找到密码,结束
except: # 解压失败,开始下一次解压
count+=1
if __name__ == "__main__":
main()
结果
最终测试成功,耗时大约几分钟
输入密码7ab13解压成功!