python暴力破解简单的rar格式压缩密码

     常常会出现如下情况:好不容易在网上找到了自己需要的资料,下载到电脑中是rar压缩包格式的。解压的时候却需要密码,没有解压密码也只有望资料兴叹。

下面介绍一下使用python暴力破解rar压缩格式的密码。

     我们主要用到的是rarfile库中的extractall函数,大家可以自行百度搜索extractall函数的用法,这里不做过多介绍。

源代码如下:

#############################################

#rar压缩文件暴力破解程序
#版本:v1.0
#作者:世间小树
#时间:2020.9.15

#############################################

import itertools
import string
import rarfile
import sys

path = "new.rar"                #文件路径
myrar = rarfile.RarFile(path,'r')
i=1
chars=string.digits+string.ascii_letters    #密码组成:数字+字母(包括大小写)

def bruteforce(myrar,password):
    """强行破解密码"""
    try:
        myrar.extractall(pwd=password.encode())
        return True
    except Exception as e:
        print('尝试密码错误:',password)
        return False

while i<=4:         #密码位数,不大于4位
    passwords=itertools.product(chars,repeat=i)
    for item in passwords:
        pwd=''.join(item)
        if bruteforce(myrar,pwd):
            print("正确密码是:"+pwd)
            myrar.close()
            sys.exit()          #退出程序
    i+=1
 
posted @ 2020-10-12 23:45  世间小树  阅读(2753)  评论(0编辑  收藏  举报