您好,登錄后才能下訂單哦!
這篇文章主要介紹“如何用python實(shí)現(xiàn)破解zip壓縮包程序”,在日常操作中,相信很多人在如何用python實(shí)現(xiàn)破解zip壓縮包程序問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”如何用python實(shí)現(xiàn)破解zip壓縮包程序”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!
項(xiàng)目文件結(jié)構(gòu)
代碼實(shí)現(xiàn)過(guò)程
演示效果
在當(dāng)前目錄有三個(gè)文件:
3-zipCrack.py :zip 破解程序
dictionary.txt :密碼字典
evil.zip :zip 壓縮包程序
ZIP,是一個(gè)文件的壓縮的算法,ZIP通常使用后綴名“.zip”,它的MIME格式為 application/zip 。
目前,ZIP格式屬于幾種主流的壓縮格式之一,其競(jìng)爭(zhēng)者包括RAR格式以及開(kāi)放源碼的7-Zip格式。從性能上比較,RAR格式較ZIP格式壓縮率較高,但是它的壓縮時(shí)間遠(yuǎn)遠(yuǎn)高于Zip。
其破解原理就是遍歷密碼字典的密碼,逐個(gè)嘗試解碼,如果密碼復(fù)雜字典過(guò)大會(huì)導(dǎo)致破解效率下降,下面用多線程破解可以改善之。
import zipfile import optparse from threading import Thread def extractFile(zFile, password): # 破解zip 密碼程序 zFile.extractall(pwd=password) print '[+] Found password ' + password + '\n' def main(): parser = optparse.OptionParser("usage %prog "+\ "-f <zipfile> -d <dictionary>") # 解析命令行 # ... zFile = zipfile.ZipFile(zname) passFile = open(dname) for line in passFile.readlines(): # 實(shí)現(xiàn)多線程破解 t = Thread(target=extractFile, args=(zFile, password)) t.start() if __name__ == '__main__': main()
PS:如有需要Python學(xué)習(xí)資料的小伙伴可以加下方的群去找免費(fèi)管理員領(lǐng)取
在當(dāng)前目錄有三個(gè)文件:
3-zipCrack.py :zip 破解程序
dictionary.txt :密碼字典
evil.zip :zip 壓縮包程序
第一次輸入python 3-zipCrack.py提示使用用法:
usage %prog -f <zipfile> -d <dictionary>
然后按使用方法正確輸入命令:
python 3-zipCrack.py -f evil.zip -d dictionary.txt
這樣成功破解出 evil.zip 壓縮包,并顯示 zip 解碼密碼是secret。
到此,關(guān)于“如何用python實(shí)現(xiàn)破解zip壓縮包程序”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。