Compressed package password cracking sample share of similar code cracking
- 2020-04-02 13:22:42
- OfStack
Yesterday turned over the hard drive, found a good thing, but he added the password he did not remember. Tried a few common did not try out, so wrote such a small script for me to try. Well, that's a real solution.
The python script reads as follows, and it's not bad to run your own encrypted zip
# -*- coding: utf-8 -*-
import sys,os
def IsElementUniq(list):
"""
judge list Is the element of
"""
for word in list:
if list.count(word)>1:
return False
return True
def GenPswList():
"""
Ask the user to enter a word, and combine the password according to the word, try only four words to combine, and limit the password length to 20 . The writing is rather poor
"""
psw=raw_input('input a word>')
wordlist = []
while psw:
wordlist.append(psw)
psw=raw_input('input a word>')
print wordlist
global g_pswlist
g_pswlist = []
for word in wordlist:
g_pswlist.append(word)
for word1 in wordlist:
for word2 in wordlist:
locallist = [word1, word2]
if IsElementUniq(locallist):
tmp = word1 + word2
if len(tmp) < 20:
g_pswlist.append(tmp)
for word1 in wordlist:
for word2 in wordlist:
for word3 in wordlist:
locallist = [word1, word2, word3]
if IsElementUniq(locallist):
tmp = word1 + word2 + word3
if len(tmp) < 20:
g_pswlist.append(tmp)
for word1 in wordlist:
for word2 in wordlist:
for word3 in wordlist:
for word4 in wordlist:
locallist = [word1, word2, word3, word4]
if IsElementUniq(locallist):
tmp = word1 + word2 + word3 + word4
if len(tmp) < 20:
g_pswlist.append(tmp)
print 'gen psw is:', g_pswlist
def TestUnZipPack(filename):
"""
Try unzipping a zip with a password
"""
command = ""
for psw in g_pswlist:
command = "7z e -p%s -y %s" %(psw,filename)
print command
ret = os.system(command)
if ret == 0:
print 'right psw is ', psw
break
def main(filename):
GenPswList()
TestUnZipPack(filename)
if __name__ == '__main__':
if len(sys.argv) != 2:
print 'argv error'
print 'example:test_7z_psw.py 1.7z'
sys.exit(1)
main(sys.argv[1])