【zipfile】python基于zipfile的暴力破解加密zip文件

一、场景

    由于网上下载了个zip文件,想解压,发现需要密码,但是又忘记了下载的来源

 

二、方法

    暴力破解:完全不知道密码是啥,只能以组合密码的方式进行遍历,如果知道可能得密码组合会快很多,如纯数字,纯字母等

    字典破解:比如你知道可能得密码是多少,但是可能有很多种组合。

    本质上都是对可能密码组合的遍历

 

三、示例代码

    我是完全不知道密码可能是啥,上代码,不废话。

复制代码
import zipfile
import itertools

zip_file = zipfile.ZipFile(r'C:\Users\Administrator\Downloads\burpsuite_pro_v2023.5.zip')
print(zip_file.namelist())

zip_member = zip_file.namelist()[1]


# result = zip_file.extract(member=zip_file.namelist()[1], path=".", pwd="mht".encode())
# print(result)


def crack_zip(length):
    for combination in itertools.product('abcdefghijklmnopqrstuvwxyz0123456789', repeat=length):
        password = ''.join(combination)
        print(f"try password: {password}")
        try:
            result = zip_file.extract(member=zip_file.namelist()[1], path=".", pwd=password.encode())
            print(f'Password found: {password}')
            # print(zip_file.extractall(pwd=password.encode()))  # 此方法会阻塞
            return result
        except Exception as e:
            print(f"err: {e}")
            continue
    else:
        return False


for length in range(1, 7):
    print(f"length: {length}")
    if crack_zip(length):
        break
复制代码

密码复杂度可以修改“abcdefghijklmnopqrstuvwxyz0123456789”,密码长度可以修改range(1, 7)

 

四、结果

 跑出来了,纯字母组合

用跑出来的密码解压试试

 没报错,完美撒花。

 

 

参考链接:

(86条消息) Python破解.zip文件的密码_白石水晶的博客-CSDN博客

大神教你用Python破解压缩文件zip密码

 

posted @   代码诠释的世界  阅读(834)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示