Сегодня понадобилось написать простой код для перебора случайно сгенерированных четырехзначных паролей, для «взлома». Естественно, пароль, который мы будем «взламывать», мы введем сами, в этой же программе, ведь я не хочу создавать скрипт для брута, а лишь хочу продемонстрировать новичкам в программировании, как должен работать подобный скрипт.
Для начала надо выбрать язык. Я решил выбрать Python, так как он приятней глазу, и на нем будет проще объяснить, как работает процесс перебора паролей.
import random
Далее, надо определиться с переменными. Нам нужны 6.
correctPassword = "1234" # Вводим пароль, который нужно забрутить
wrongPasswords = [] # В этот список будут добавляться уже подобранные пароли, чтобы не повторяться
password = "" # В эту переменную будет записываться сгенерированный пароль, и, если он ложный, пойдет в wrongPassword
length = 4 # Длина пароля. Эта переменная нужна будет в будущем
chars = "1234567890" # Символы, из которых будет генерироваться пароль.
run = True # Думаю, не стоит объяснять
Вот и все необходимые переменные.
while run:
password = ""
Переходим к самому интересному — генерации и перебору паролей.
Сначала создадим цикл for, для генерации пароля. Тут нам и пригодится переменная length.
for i in range(length):
password += random.choise(chars)
Теперь напишем код, который будет проверять, генерировала уже программа этот пароль, или нет. Ну и проверять, идентичен ли он правильному.
if password not in wrongPasswords:
print(password)
if password != correctPassword:
wrongPasswords.append(password)
else:
run = False
break
print(password + " is correct")
Вот и все! Все работает!
Надеюсь, кому-то данная статья помогла, кому-то просто была интересна.
Весь код полностью:
import random
correctPassword = "1234"
wrongPasswords = []
password = ""
length = 4
chars = "12e4567890"
run = True
while run:
password = ""
for i in range(length):
password += random.choise(chars)
if password not in wrongPasswords:
if password != correctPassword:
print(password)
wrongPasswords.append(password)
else:
run = False
break
print(password + " is correct")