永发信息网

如何用Python写一个暴力破解加密压缩包的程

答案:2  悬赏:0  手机版
解决时间 2021-02-12 08:35
如何用Python写一个暴力破解加密压缩包的程
最佳答案
有些时候加密rar软件经常会忘了密码,但记得密码的大概,于是乎用Python写个程序来暴力破解吧:
首先要搞清楚如何用命令行来解压缩,经研究,rar软件解压是用的unrar.exe,将这个程序拷贝到C:\windows,然后进入加密软件包所在的文件夹,用命令行运行 下面的命令:
unrar.exe e -pabcd 123.rar

程序就是先前拷到C:\windows,然后参数e是指相对路径,如果在是本文件夹下运行这个命令,则只打文件名就可以了,输入密码的方式是-p后面的字段,假定是abcd,最后面的是要解压的文件名。
下面我们解决如何用Python来运行windows下的命令行
import subprocess
command = 'unrar.exe e -n -pabcd 123.rar'
subprocess.call(command)

这样也可以完成解压,既然这样,那就开干吧,写一个暴力循环,我以4位字母为例,字母加的不全,实际使用可以视情况添加
list1=['a','b','c','d']
list2=['a','b','c','d']
list3=['a','b','c','d']
list4=['a','b','c','d']

for i1 in range(0,len(list1),1):
for i2 in range(0,len(list2),1):
for i3 in range(0, len(list3), 1):
for i4 in range(0, len(list4), 1):
password=list1[i1]+list2[i2]+list3[i3]+list4[i4]
print(password)
command = 'unrar.exe e -n -p' + password + ' 123.rar'
child = subprocess.call(command)
if child == 0:
print('解压密码是:',password)
break

child是返回值,为0表示解压成功,可以挑出循环并打印密码了,我实测,4位纯数字或者字母,只需要十多秒就出来了,非常简单
全部回答
支持一下感觉挺不错的
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
有一对翅膀的昆虫均属于双翅目吗
贝琪动物诊所地址有知道的么?有点事想过去
三分之七的意义是什么?
去一趟伦敦玩要花费多少钱?
足字加什么组成新字,要所有的
尚雯婕唱的一首法文歌,很好听,MV 里是在一
求学校2015里高恩星的照片
文科专业想考建造师。怎么弄呢?
芘迪宠物岭南新世界分店怎么去啊,我要去那办
上海火车站是南站吗
郑大老校区生活区在哪里啊,我有事要去这个地
我想做纸巾批发,刚开始怎么做?
搏威动物医院天河总院怎么去啊,我要去那办事
佛山禅西新城绿岛湖属于佛山那个区?
宠儿宠物医院地址好找么,我有些事要过去
推荐资讯
如何理解自20世纪50年代开始出现的各种西方青
民谣吉他拨弦的位置
中国的市场经济仍不完善,需要有监测与控制体
为了得到一双路夫鞋,我找到了当汽车修理工的
c105等于多少uf
江油哪里学游泳比较好
克己为公是什么意思
丽源美容院怎么去啊,我要去那办事
我们有个学习小组,我不知起什么名,七个人,四
食味包点NO.4怎么去啊,有知道地址的么
酒泉市安全生产监督管理局怎么去啊,我要去那
新交通法规有同情弱者的说法吗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?