首页 > 代码库 > python zip文件密码爆破
python zip文件密码爆破
#!/usr/bin/env # coding=UTF-8 import zipfile import threading import os import sys class CrackZip: def __init__(self): self._result = None def run(self,zFile,password): try: zFile.extractall(pwd=password) print("Found Passwd:",password) print(‘Password=‘,password) self._result=password except: pass def getPass(self): return self._result def checkFile(path): flag=False if not os.path.isfile(path): flag=False print(‘[-] %s文件不存在‘,path) return flag def main(): cz=CrackZip() if len(sys.argv)>=3: zipPath=sys.argv[1] dictionaryPath=sys.argv[2] flag=(len(sys.argv)>3 and sys.argv[3]==‘-t‘) typeName=None if not checkFile(dictionaryPath): if dictionaryPath[-3:]!=‘txt‘: print(‘字典不是txt文件‘) return if not checkFile(zipPath): if zipPath[-3:]!=‘zip‘: print(‘只能爆破zip文件‘) return zFile=zipfile.ZipFile(‘test.zip‘,‘r‘) passFile=open(dictionaryPath,‘r‘) for line in passFile.readlines(): password=line.strip(‘\n‘).encode(‘utf-8‘) if flag: False t=threading.Thread(target=cz.run,args=(zFile,password)) t.start() else: cz.run(zFile,password) password=cz.getPass() typeName=‘SingleThread‘ if password: return if typeName==‘SingleThread‘: print("字典里找不到密码") else: print(‘命令不正确,格式为:python zip.py zipPath dictionaryPath‘) return if __name__==‘__main__‘: main()
遇到了以下问题:
1. 字典里获取出来的字符需要编码(utf-8)才能被extractall识别
2. 开启线程爆破后如何检测所有线程执行完毕?(提示爆破失败)
python zip文件密码爆破
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。