龙空技术网

Python教你如何使用zipfile破解加密zip压缩文件

半个码农python 133

前言:

现在小伙伴们对“zip文件加密的几种破解方法”大体比较注意,咱们都需要分析一些“zip文件加密的几种破解方法”的相关文章。那么小编也在网络上收集了一些对于“zip文件加密的几种破解方法””的相关知识,希望姐妹们能喜欢,姐妹们快快来学习一下吧!

在Python中,我们可以使用zipfile模块来处理ZIP文件。

zFile.extractall(pwd=password.encode("utf-8"))来提取所有的压缩文件,里面传入的是带参数的文件,密码是我们提前生成好的dict.txt文件,遍历所有密码去破解

首先,我们导入了zipfile和threading模块。然后,我们定义了一个名为extractFile的函数,该函数接受一个ZIP文件对象和一个密码作为参数。在这个函数中,我们尝试使用给定的密码解压ZIP文件。如果成功,我们将打印出找到的密码并退出程序。如果出现异常,我们将忽略它并继续尝试其他密码。

接下来,我们定义了main函数。在这个函数中,我们首先打开ZIP文件并将其存储在变量zFile中。然后,我们打开包含密码的文本文件,并将每一行读取到一个名为all的列表中。

然后,我们遍历all列表中的每个密码。对于每个密码,我们创建一个新的线程,并将extractFile函数作为目标函数。我们将当前的ZIP文件对象和密码作为参数传递给这个函数。然后,我们启动这个线程。

最后,我们在脚本的主入口点调用main函数。这将开始执行破解过程,直到找到正确的密码为止

暴力破解最关键的地方是,破解的字典要选得好

代码如下:

import zipfilefrom threading import Threaddef extractFile(zFile,password):    try:        zFile.extractall(pwd=password.encode("utf-8"))        print('破解成功 密码是:' + password + '\n')        sys.exit()    except:        passdef main():    zFile = zipfile.ZipFile("test.zip")    with open("dict.txt","r") as f:        all = f.readlines()    for line in all:        password = line.strip("\n")        t = Thread(target=extractFile,args=(zFile,password))        t.start()if __name__ == '__main__':    main()

标签: #zip文件加密的几种破解方法