Thc hydra как установить на windows

Обновлено: 03.07.2024

Список инструментов для тестирования на проникновение и их описание

Описание Hydra

Программа hydra поддерживает огромное количество служб, благодаря своей быстроте и надёжности она завоевала заслуженную признательность среди тестеров на проникновение.

Программа прекрасно компилируется и работает на Linux, Windows/Cygwin, Solaris, FreeBSD/OpenBSD, QNX (Blackberry 10) и OSX.

Автор: Van Hauser, Roland Kessler

Справка по Hydra

Руководство по Hydra

Поддерживаемые службы (это же название модулей):

Дополнительная информация об опции -x

Сгенерировать пароли длинной от 3 до 5, состоящие из букв нижнего регистра:

Сгенерировать пароли длинной от 5 до 8, состоящие из букв верхнего регистра и цифр:

Сгенерировать пароли длинной от 1 до 3 символов, содержащих только слэши:

Сгенерировать пароли длинной 5 символов, которые состоят только из /%,.-

Информация о дополнительных параметрах для модулей Hydra, в которых они требуются

cisco

Модуль cisco опционально принимает ключевое слово ENTER, затем он отправляет начальное ENTER при подключении к службе.

cisco-enable

Модуль cisco-enable опционально принимает пароль входа для устройства cisco.

Примечание: если используется AAA аутентификация, используйте опцию -l для имени пользователя и опциональный параметр для пароля пользователя.

cvs

Модуль cvs опционально принимает имя репозитория для атаки, по умолчанию это "/root"

firebird

Модуль firebird опционально принимает имя базы данных для атаки, по умолчанию это "C:\Program Files\Firebird\Firebird_1_5\security.fdb"

Модули требует страницу для аутентификации.

Модули требует страницу и параметры веб-формы.

По умолчанию этот модуль настроен следовать максимум пяти редиректам подряд. Он каждый раз собирает новое куки с того же URL без переменных. Параметр принимает три разделённых ":" значения, плюс опциональные значения.

(Примечание: если вам нужно двоеточие в строке опций в качестве значения, экранируйте его с "\:", но не экранируйте "\" с "\\".)

  • Первое — это страница на сервере (URL) на которую отправляются данные методом GET или POST.
  • Второе — это переменные POST/GET получаемые либо из браузера, либо прокси и т. д. Имена пользователей и пароли будут подставлены вместо заполнителей "^USER^" и "^PASS^" (ПАРАМЕТРЫ ФОРМЫ).
  • Третье — это строка, которая проверяет неверный вход (по умолчанию). Перед условием неверного входа должна стоять "F=", перед условиям успешного входа должна стоять "S=". Это то место, где больше всего людей ошибаются. Вы должны проверить веб-приложение, на что похожа строка, которую он выдаёт при неуспешном входе и указать её в этом параметре!

Следующие параметры опциональны:

задаёт другую страницу с которой собрать начальные кукиз.

^USER^ и ^PASS^ также могут быть размещены в этих заголовках!

Помните, если вы собираетесь разместить двоеточие (:) в ваших заголовках, вам следует их экранировать обратным слэшем (\). Все двоеточия, которые не являются разделителями опций, должны быть экранированы .

Вы можете задать заголовок без экранирования двоеточий, но в этом случае вы не сможете разместить двоеточия в само значения заголовка, поскольку они будут интерпретироваться в hydra как разделители опций.

Поддерживаются и согласовываются автоматически Basic, DIGEST-MD5 и NTLM.

imap, imaps

Модуль imap опционально принимает тип аутентификации: CLEAR or APOP (default), LOGIN, PLAIN, CRAM-MD5, CRAM-SHA1, CRAM-SHA256, DIGEST-MD5, NTLM

Дополнительно опцией TLS может быть принудительно выбрано TLS шифрование через STARTTLS.

irc

Модуль irc опционально принимает общий пароль сервера, если сервер его требует, и если ничего не указано, то будет использоваться пароль из -p/-P.

ldap2, ldap2s, ldap3, ldap3s, ldap3-crammd5, ldap3-crammd5s, ldap3-digestmd5, ldap3-digestmd5s

Модули опционально принимают DN (в зависимости от выбранного метода.

Примечание: вы также можете указать DN как логин, когда используется Простой метод аутентификации).

Ключевое слово "^USER^" заменяется логином.

Специальные указания для Простого метода имеют 3 режима работы: анонимный (без пользователя и пароля), не прошедший проверку подлинности (с пользователем, но без пароля), с проверкой подлинности юзер/пароль (пользователей и пароль).

Поэтому не забудьте установить пустую строку в качестве пользователя/пароля для тестирования всех режимов.

mysql

Модуль mysql is опционально принимает базу данных для атаки, по умолчанию это "mysql"

nntp

Модуль nntp опционально принимает один тип аутентификации из: USER (по умолчанию), LOGIN, PLAIN, CRAM-MD5, DIGEST-MD5, NTLM.

oracle-listener

Модуль oracle-listener / tns опционально принимает режим, в котором сохранён пароль, это может быть PLAIN (по умолчанию) или CLEAR.

pop3, pop3s

Модуль pop3 опционально принимает один из типов аутентификации: CLEAR (по умолчанию), LOGIN, PLAIN, CRAM-MD5, CRAM-SHA1, CRAM-SHA256, DIGEST-MD5, NTLM.

Дополнительно опцией TLS можно выбрать принудительное TLS шифрование через STLS.

postgres

Модуль postgres опционально принимает имя базы данных для атаки, по умолчанию это "template1".

rdp

Модуль rdp опционально принимает доменное имя Windows.

s7-300

Модуль S7-300 специально для Siemens PLC. Ему нужен только пароль или отсутствие аутентификации, поэтому просто используйте опцию -p или -P.

smb

По умолчанию модуль smb настроен для тестирования и локального и доменного аккаунта, используя простой пароль с диалектом NTLM.

Примечание: вы можете выбрать тип группы используя ключевое слово LOCAL или DOMAIN или other_domain: для указания доверенного домена.

Вы можете задать тип пароля используя ключевое слово HASH или MACHINE (для использования машинное имя NetBIOS в качестве пароля).

Вы можете установить диалект используя ключевое слово NTLMV2, NTLM, LMV2, LM.

smtp, smtps

Модуль smtp опционально принимает тип аутентификации из: LOGIN (по умолчанию), PLAIN, CRAM-MD5, DIGEST-MD5, NTLM.

Дополнительно опцией TLS может быть принудительно выбрано TLS шифрование через STARTTLS.

smtp-enum

Модуль smtp-enum опционально принимает SMTP команду из: VRFY (по умолчанию), EXPN, RCPT (который подключится используя аккаунт "root")

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

Например, для тестирования, существует ли john@localhost на 192.168.0.1:

snmp

Модуль snmp опционально принимает следующие параметры:

Для комбинирования опций используйте двоеточие (":"), например:

sshkey

Модуль sshkey не обеспечивает дополнительных опций, хотя меняется значение опций -p и -P:

  • -p ожидает путь до незашифрованного приватного ключа в формате PEM.
  • -P ожидает имя файла, содержащего список путей до некоторых незашифрованных ключей в формате PEM.

svn

Модуль svn опционально принимает имя репозитория для атаки, по умолчанию это "trunk"

telnet, telnets

Модуль telnet опционально принимает строку, которая отображается после успешного входа (не зависит от регистра), используйте если та, которая в telnet по умолчанию, выдаёт слишком много ложных срабатываний.

xmpp

Модуль xmpp опционально принимает тип аутентификации из: LOGIN (default), PLAIN, CRAM-MD5, DIGEST-MD5, SCRAM-SHA1.

Примеры запуска Hydra

Попытаться войти как пользователь root (-l root) используя список паролей (-P /usr/share/wordlists/metasploit/unix_passwords.txt) в 6 потоков (-t 6) на данный SSH сервер (ssh://192.168.1.123):

Попытаться войти как пользователь user (-l user) используя список паролей (-P passlist.txt) на данный FTP сервер (ftp://192.168.0.1):

Попытаться войти на SSH сервера (ssh) из списка (-M targets.txt) используя список пользователей (-L logins.txt) и список паролей (-P pws.txt):

Попробовать зайти на FTP сервера в указанной подсети (ftp://[192.168.0.0/24]/) с именем пользователя admin (-l admin) и паролем password (-p password):

Зайти на почтовый сервер (imap://192.168.0.1/), использующий протокол IMAP с именам пользователей из списка (-L userlist.txt) и паролем defaultpw (-p defaultpw), в качестве типа аутентификации выбран PLAIN:

Зайти на почтовый сервер с протоколом POP3S, размещённом указанном на IPv6 (-6) адресе 2001:db8::1, на порту 143 со списком учётных данных в формате "логин:пароль" размещённом в файле defaults.txt (-C defaults.txt) с использованием типа аутентификации DIGEST-MD5 и принудительным TLS шифрованием через STLS:

Установка Hydra

Программа предустановлена в Kali Linux.

Установка в BlackArch

Программа предустановлена в BlackArch.

Установка в Debian, Ubuntu, Linux Mint

Информация об установке в другие операционные системы будет добавлена позже.

xHydra (графический интерфейс для THC-Hydra)

Для запуска графического интерфейса xHydra выполните команду:

Программы, входящие в пакет THC-Hydra

В пакет Hydra входит программа pw-inspector — инструмент для уменьшения списка паролей за счёт отфильтровывания их по заданным параметрам.

Как пользоваться программой THC-Hydra

Тестирование уязвимостей важно для владельцев веб-сайтов и серверов. Важно понимать, насколько они защищены от действий вероятных злоумышленников, особенно от популярного метода взлома путем перебора паролей (Brute Force). Один из популярных инструментов для этого – программное обеспечение THC-Hydra.

Установка THC-Hydra

В ПО встроены функции перебора паролей с прямым обращением к серверу. Такой подход дает возможность заодно проверить настройку брандмауэра, блокируются ли хакерские запросы к серверу или пропускаются, определяется ли тип атаки. Перечень поддерживаемых сервисов включает веб-приложения, FTP, SSH и другие протоколы соединения через интернет.

Процедура инсталляции из официального репозитория выглядит просто:

$ sudo apt install hydra – в системе Ubuntu.

$ sudo yum install hydra – то же, но в Red Hat или CentOS.

По приведенной команде будет скачана последняя стабильная версия программы. Если же хочется получить наиболее свежий релиз, пусть и в стадии бета-тестирования, придется устанавливать его вручную. Так, исходник THC-Hydra 8.4 скачивается командой:

Следующие действия включают распаковку, компиляцию и установку приложения:

Рабочие файлы программы копируются в директорию /usr/local. Это удобнее, чем затем искать их по всему накопителю. Пользователю предоставляется выбор – использовать приложение через консоль или установить графическую оболочку. Второй вариант активируется командами:

Они вводятся в командную строку после перехода в каталог hydra-gtk. Оконный интерфейс особо не востребован, в большинстве случаев достаточно консоли, чтобы воспользоваться всем имеющимся в программе функционалом.

Основы работы в THC-Hydra

В командной строке управление настройками утилиты осуществляется при помощи определенного синтаксиса. Пользователю достаточно разобраться, когда и какие команды нужно вставлять в строку вместе с основной.

Программа Hydra

Общий формат выглядит так:

Опциями меняются глобальные параметры, ими же задаются списки логинов и паролей для перебора. Также указывается IP-адрес удаленного хоста, который будет подвергаться проверке «атакой». Перечень основных опций представлен ниже:

  • -R – повторно запустить незавершенную сессию;
  • -S – подключаться с использованием протокола SSL;
  • -s – вручную указать порт подключения к серверу;
  • -l – указать определенный логин пользователя;
  • -L – подключить файл со списком логинов;
  • -p – внести конкретный пароль;
  • -P – использовать пароли из текстового файла;
  • -M – атаковать цели, указанные в списке;
  • -x – активировать генератор паролей;
  • -u – включается проверка одного пароля для всех логинов;
  • -f – закрыть программу, если обнаружена правильная связка «логин-пароль»;
  • -o – сохранить результаты сканирования в указанный файл;
  • -t – принудительно задать количество потоков;
  • -w – указать время, которое проходит между запросами (в секундах);
  • -v – включить режим подробного вывода информации;
  • -V – выводить тестируемые логины и пароли.

Программа поддерживает более 30 видов запросов, среди них есть POP3, SMTP, FTP, CISCO, ICQ, VNC, TELNET. Всего одним инструментом легко обеспечить проверку всей инфраструктуры – от хостинга и облачного хранилища до сервера, используемого для развертывания учетных программ класса ERP.

Далее рассмотрим наиболее востребованные функции приложения.

Как пользоваться THC-Hydra

Простейший вариант использования THC-Hydra – найти в интернете стандартные списки для Brute Force, подключить их при помощи опций и ждать результата. Также понадобятся данные сервера, на который будет осуществляться атака. Перечни паролей подходят и от других программ вроде John the Ripper.

Перебор пароля FTP

По протоколу FTP осуществляется подключение к файловой системе удаленных серверов в режиме «как на локальном компьютере». Поэтому это один из первых каналов взаимодействия с удаленным ресурсом, который рекомендуется проверять на защищенность. Запускается тестирование для FTP командой:

Брутфорс

Опция –l здесь задает логин пользователя, а –P подключает файл со списком вероятных паролей. За ними указывается путь к файлу, протокол и IP-адрес целевого хоста. После нажатия клавиши Enter программа начинает перебор со скоростью 300 шт. в минуту. Если реальный пароль достаточно сложный, результата придется ждать долго.

Чтобы сделать подбор более информативным, достаточно в командную строку внести опции –v и –V. Также есть возможность указать не один IP-адрес, а целую сеть или подсеть. Выполняется это при помощи квадратных скобок. Команда будет выглядеть так:

Если есть заранее известный список IP-адресов, по которым требуется провести тестирование, он подключается в виде текстового файла:

Метод перебора с автоматической генерацией пароля подключается на основе заданного набора символов. Тогда вместо списка задается опция –x, а после нее вставляется строка с параметрами. Синтаксис команды такой:

Минимальное и максимальное количество знаков указывается цифрами, буквы указываются как в нижнем, так и в верхнем регистре (указывается A и a). Плюс рекомендуется добавлять цифры от 1 до 9 – в этом случае будет охвачен весь диапазон, кроме спецсимволов. Выглядеть строка будет следующим образом:

В приведенном примере программа будет подбирать пароль размером в 4 символа, состоящий из букв обоих регистров и цифр. Есть альтернативное написание, где протокол подключения указан в конце, после IP-адреса:

THC-Hydra

Пароли по протоколам SSH, TELNET и схожих по назначению тестируются тем же образом, только в строке указывается соответствующая им команда.

Перебор паролей веб-форм

Несколько сложнее запускается перебор для веб-форм. Здесь сначала понадобится выяснить, какие формы передаются на сервер, а какие обрабатываются на уровне локального компьютера. Поможет в этом исходный код, который легко просмотреть функциями браузера. Там нужно «подсмотреть» протокол, используемый для подключения. Например, на приведенном скрине это метод POST.

Проверка безопасноси формы

Переменные ^USER^ и ^PASS^ принимают значения, взятые из указанного файла (логин и пароль соответственно). В этом режиме скорость перебора выше – обычно она достигает 1000 паролей в минуту.

Выводы

Мы рассмотрели основные методы сканирования защиты серверов в программе Hydra. Графическая оболочка (xHydra) упрощает применение утилиты, когда приходится постоянно тестировать различные хосты, но при «одиночном» запуске обычно достаточно консоли.

xHydra

В графическом интерфейсе имеется несколько вкладок:

  1. Target – цель атаки;
  2. Passwords – списки паролей;
  3. Tuning – дополнительные настройки;
  4. Specific – настройки модулей;
  5. Start – запуск и просмотр статуса.

Освоиться легко, но важно помнить, что использование приложения вне собственной компании, в частном порядке, может оказаться преступлением. Поэтому не стоит соглашаться на просьбы «проверить» безопасность на чужом сайте. Все должно проводиться официально.

Программа hydra поддерживает огромное количество служб, благодаря своей быстроте и надёжности она завоевала заслуженную признательность среди тестеров на проникновение. Будучи очень мощной и гибкой, программу hydra нельзя отнести к простым и легко дающимся новичкам. Не надо отчаиваться, если вам не удалось оседлать hydra, я рекомендую вам посмотреть на программу BruteX. Она значительно автоматизирует процесс подбора, более того, она использует ту же самую hydra, но сама вводит необходимые ключи и даже не нужно искать файлы с именами и паролями, поскольку они поставляются вместе с программой.

Установка Hydra

Первым делом нам необходимо установить этот инструмент. Это довольно популярная утилита для тестирования безопасности, поэтому вы можете найти ее в официальных репозиториях. Для установки нужных пакетов в Ubuntu выполните:

sudo apt install hydra

Чтобы установить программу в Red Hat/CentOS команда аналогичная:

sudo yum install hydra

Но в официальных репозиториях, как правило, находятся более старые версии программы. Если вы хотите самую свежую, то придется собрать ее из исходников. Но здесь нет ничего сложного. Сначала загрузим исходники последней версии с GitHub, на данный момент, это 8.4:

Затем необходимо их распаковать и перейти в папку с исходниками:

tar xvpzf thc-hydra-v8.4.tar.gz
$ cd thc-hydra-v8.4

Дальше выполните такие команды для компиляции и установки:

./configure
$ make
$ sudo make install

Разработчики поступили очень грамотно, когда настроили установку в /usr/local. Таким образом, утилита не распространится по всей файловой системе, а будет в одном месте. Если вы еще хотите установить графическую оболочку, то вам нужно переместиться в папку hydra-gtk и выполнить те же команды:

cd hydra-gtk
$ ./configure
$ make
$ sudo make install

Нужно заметить, что для ее сборки необходимы пакеты разработки gtk2. Но я бы не советовал вам использовать этот графический интерфейс. Если разобраться в работе с утилитой через терминал, то он совсем не нужен, тем более, что вся гибкость утилиты раскрывается через командную строку.

Перед тем как мы начнем рассматривать как пользоваться htc hydra, нам необходимо разобраться какие параметры команде передавать и как это делать. Давайте сначала рассмотрим общий синтаксис:

$ hydra опции логины пароли -s порт адрес_цели модуль параметры_модуля

Опции задают глобальные параметры утилиты, с помощью них вы можете настроить необходимые параметры, например, указать что нужно выводить информацию очень подробно, список логинов и паролей для перебора задается тоже с помощью опций, но я выделил его в отдельный пункт. Дальше нужно задать порт сервиса на удаленной машине и ip адрес цели. В конце мы задаем модуль перебора, который будем использовать и параметры модуля. Обычно это самая интересная часть но начнем мы с опций:

Это были основные опции, которые, вы будете использовать. Теперь рассмотрим модули, а также способы аутентификации, которые вы можете подобрать:

Как видите, количество доступных протоколов достаточно большое, вы можете проверить безопасность как ssh, ftp, и до веб-форм. Дальше мы рассмотрим как пользоваться hydra, как использовать самые часто применяемые протоколы.

Перебор паролей FTP

Сначала поговорим про использование hydra в консольной версии. На самом деле, это основная программа. Команда будет выглядеть таким образом:

hydra -l admin -P john.txt ftp://127.0.0.1

hydra -l admin -P john.txt -vV ftp://127.0.0.1

Также, с помощью синтаксиса квадратных скобок, вы можете задать не одну цель, а атаковать сразу целую сеть или подсеть:

hydra -l admin -P john.txt ftp://[192.168.0.0/24]

Также вы можете брать цели из файла со списком. Для этого используется опция -M:

hydra -l admin -P john.txt -M targets.txt ftp

Если подбор по словарю не сработал, можно применить перебор с автоматической генерацией символов, на основе заданного набора. Вместо списка паролей нужно задать опцию -x а ей передать строку с параметрами перебора. Синтаксис ее такой:

минимальная_длина:максимальная_длина:набор_символов

Вся команда будет выглядеть вот так:

hydra -l admin -x 4:4:aA1. ftp://127.0.0.1

Можно пойти другим путем и указать ip цели и порт вручную с помощью опции -s, а затем указать модуль:

hydra -l admin -x 4:4:aA1 -s 21 127.0.0.1 ftp

hydra -l admin -P

адрес_страницы:имя_поля_логина=^USER^&имя_поля_пароля=^PASS^&произвольное_поле=значение:строка_при_неудачном_входе

Строчка запуска программы будет выглядеть вот так:

/john.txt -o ./result.log -V -s 80 127.0.0.1 http-post-form "/wp-admin:log=^USER^&pwd=^PASS^:Incorrect Username or Password"

Переменные ^USER^ и ^PASS^ содержат имя пользователя и пароль взятые из словаря, также, возможно, придется передать дополнительные параметры, они передаются также, только значения будут фиксированы. Заканчивается выражение строкой, которая присутствует на странице при неудачном входе. Скорость перебора может достигать 1000 паролей в минуту, что очень быстро.

Графическая утилита XHYDRA

Хотелось бы еще сказать несколько слов про графическую версию. Это просо интерфейс, который помогает вам сформировать команду для консольной hydra. Главное окно программы выглядит вот так:

THC-Hydra 8.5 дает возможность определить логин и пароль в разнообразных сервисах. Установка THC-Hydra 8.5 возможна на разные операционные системы. Программа позволяет ввести ключевое слово к архиву или сервису. Пароль подбирается по особому способу THC-Hydra. Программа обеспечивает возможность подбора пароля с использованием выборки в разных форматах и протоколах.

Закачка THC-Hydra 8.5 позволяет проверить свою операционную систему на предмет безопасности. Софт узнает, взламывалась ли система, знает ли кто-либо сведения о пользователе. Для особо продвинутых пользователей THC-Hydra 8.5 предоставляет возможность взламывать программы в искусственном режиме, чтобы в полной мере получить удовольствие от этого инструмента. Некоторые пользователи пытаются получить чужие данные.

THC-Hydra 8.5 представляет собой мультиплатформенный продукт для десктопов для определения неизвестного пароля и логина.

Список сервисов и ресурсов, для которых можно искать пароли и логины с помощью этой программы очень велик. Разработка поддерживает огромное количество протоколов. Их насчитывается свыше полусотни.

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

Программа в состоянии производить параллельный перебор паролей по нескольким протоколам. Скорость процесса подбора пароля и логина определяется особенностями протокола. Если по какой-то причине сессия работы программы оказалась прерванной, ее можно восстановить, использовав специальные инструменты программы.

Установка THC-Hydra 8.5

В операционной системе Windows программа THC-Hydra 8.5 работает командной строкой. Она не обладает собственной графической оболочкой. Для установки программы ее следует скачать из надежного источника. Затем эта разработка запускается как обычно командной строкой.

Для использования THC-Hydra 8.5 придется выучить ее многочисленные опции и функции, чтобы было проще к ней обращаться.

THC-Hydra 8.5 имеет массу достоинств. Программа проверит систему на безопасность или произведет ее взлом, поддерживает большое количество протоколов.

С ее помощью можно прервать текущую сессию и продолжить свои действия впоследствии. Продукт подходит для всей линейки операционной системы Windows. Установка THC-Hydra 8.5 не должна вызывать больших трудностей.

Читайте также: