1. 程式人生 > >Python指令碼破解壓縮檔案口令

Python指令碼破解壓縮檔案口令

Python中操作zip壓縮檔案的模組是 zipfile 。

我們破解壓縮檔案的口令也是用的暴力破解方法。我們提前準備好密碼字典用來爆破,如果密碼字典中存在密碼,則會打印出該密碼,否則提示密碼字典中無密碼。

main()函式用來開啟密碼字典 key.txt ,然後讀取其中每一行的內容,呼叫Test()函式去一個個的試密碼,如果密碼錯誤,Test函式就會丟擲異常,如果密碼正確,則不會丟擲異常。所以我們在main()函式中以是否接收到異常判斷密碼是否正確。如果沒有接收到異常,說明密碼正確!

# -*- coding: utf-8 -*-
"""
Created on Thu Nov  1 09:00:26 2018
@author: 小謝
"""

import zipfile
import os
def Test(line):
    try:
        with zipfile.ZipFile("c://users//17250//desktop//test.zip","r") as f:
            f.extractall("c://users//17250//desktop//",pwd=line)  #利用密碼字典中的密碼解壓縮
    except Exception as e:
        return e
    finally:
        f.close()
def main():
    try:
        with open("c://users//17250//desktop//key.txt") as file:
            lines=file.readlines()
            for line in lines:
                line=line.strip("\n")
                e=Test(line)
                if e:
                    pass
                else:
                    print("************壓縮檔案的密碼是:%s"%line)
                    return line
    except Exception as e:
        print("異常物件的型別是:%s"%type(e))
        print("異常物件的內容是:%s"%e)
    finally:
        file.close()
if __name__=='__main__':
    re=main()
    if re:
        pass
    else:
        print("對不起,密碼字典中未匹配到密碼!")