#python #testing #brute-force
Вопрос:
Я попытался создать быстрый словарь python bruteforcer для принудительного использования zip-файла. Хотя по какой-то причине он перестает брутфорсировать на 26 словах??
код:
# Author: drk
# A quick zipfile brute forcer (dictionary)
import zipfile
from tqdm import tqdm
wordlist = "/home/drk/Desktop/list.txt"
zip_file = "/home/drk/Desktop/impossible-password.zip"
file = zipfile.ZipFile(zip_file)
count = input("nDo you want to count the amount of words? (y/n): ")
if count == "y":
total = len(list(open(wordlist, 'rb')))
print("nTotal words is: " str(total))
elif count == "n":
print("ok")
else:
print("did not recognize input, continuing...")
with open(wordlist, "rb") as list:
for word in tqdm(wordlist, total=total, unit="words"):
try:
file.extractall(pwd=word.strip())
except:
continue
else:
print("[ ] Password Found!: " word.decode().strip())
print("[-] None of the passwords did work. ")
выход:
Do you want to count the amount of words? (y/n): y
Total words is: 100000
0%| | 26/100000 [00:00<00:05, 18968.85words/s]
[-] None of the passwords did work.
Кто-нибудь знает, почему?
Комментарии:
1. Примечание: Не называйте свои переменные
list
; отключение доступа кlist
конструктору в этой области-дурной тон.
Ответ №1:
Вы повторяете строку wordlist
длиной 26 символов. Похоже, что вы хотите повторить строки файла, который вы открыли как list
. Замените свой tqdm
звонок на
tqdm(list, total=total, unit="words")
Комментарии:
1. Следствие: Они почти наверняка намеревались использовать (плохо названное)
list
вместо этого.