Программа hydra для чего

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

В настоящее время этот инструмент поддерживает следующие протоколы: adam6500, afp, asterisk, cisco, cisco-enable, cvs, firebird, ftp, ftps, http[s]-, http[s]—form, http-proxy, http-proxy-urlenum, icq, imap[s], irc, ldap2[s], ldap3[-md5][s], mssql mysql(v4), mysql5, ncp, nntp, oracle, oracle-listener, oracle-sid, pcanywhere, pcnfs, pop3[s], postgres, rdp, radmin2, redis, rexec, rlogin, rpcap, rsh, rtsp, s7-300, sapr3, sip, smb, smtp[s], smtp-enum, snmp, socks5, ssh, sshkey, svn, teamspeak, telnet[s], vmauthd, vnc, xmpp.

Что происходит с Hydra и её основателем?

Для большинства протоколов поддерживается SSL (например, https-get, ftp-SSL и т.д.). Если это невозможно, поиск необходимых библиотек осуществляется во время компиляции, однако доступных сервисов будет меньше. Чтобы просмотреть доступные варианты, следует ввести в командную строку « hydra ».

Источник: dzen.ru

Маленький хакер. Первый шаг

В статье вы получите минимально необходимую теорию для начала вашего увлекательного путешествия в мир компьютерной безопасности. Интересовались темой: CTF или attack-defence? Но не могли получалось погрузиться в данную область? Тогда эта статья для вас! Тренироваться мы будем использовать сервис HTB . Темы которые мы бегло рассмотрим: Kali Linux, SSH, FTP, Telnet.

Статья будет разделена на две части: Необходимая теория, Где применять.

Автор иллюстрации: https://www.behance.net/AlevtinaS/projects

Подготовительные работы

Не важно какая ОС стоит на вашем ПК, вам необходимо поставить себе на виртуальную машину — Kali Linux. Подробнее тут. В нашей работе потребуется использовать следующие инструменты:

  • telnet — протокол и одноименная утилита. Реализует текстовый интерфейс взаимодействия с другими сервисами. Ранее применялся также для удаленного администрирования.
  • nmap — утилита для сканирования сети.
  • hydra — поможет подобрать пароль (используя словари).

Все эти утилиты уже установлены по умолчанию в дистрибутив. Но нам так же потребуется словари для перебора (SecLists). Перед началом установим их:

sudo apt-get install seclists

Необходимая теория

Nmap

Перед началом атаки, потребуется «изучить» цель. Nmap, может применяться в очень большом множестве задач.

Запускаем атаку по словарю и пытаемся угадать логин и пароль с помощью Hydra

Мы же сосредоточимся на обнаружение служб/сервисов.

Выполнение команды nmap 10.0.0.1 , в результате покажет список открытых портов целевой машины. Важно знать, что запуск с ключем -sS позволит вам быть менее заметным для систем обнаружения. Так как с этим параметром, утилита не завершает трехстороннее рукопожатие, тем самым служба, которая ответит на открытие порта — будет считать что это настоящее соединение.

nmap -sV -p 22 10.0.0.1 запуск утилиты с ключом -sV — говорит о необходимости определить версию службы, которая слушает порт. А -p 22 , указывает какой именно порт мы сканируем.

Telnet

В очень простых заданиях, будет доступна служба telnet . В таком случае подключение простое:

telnet 10.0.0.1 23

Первый аргумент, это IP адрес цели, а второй — порт, который слушает служба. После начала сеанса, служба потребует вас ввести username/password, в редких случаях система пропустит без пароля.

Hydra

Самый простой способ попробовать проникнуть в систему — это проверить ее на использование небезопасных паролей. Для этого в Kali Linux, уже перед установлена утилита hydra. Чтобы подобрать пароль от telnet службы, необходимо выполнить следующую команду:

hydra -C /usr/share/seclists/Passwords/Default-Credentials/telnet-betterdefaultpasslist.txt telnet://10.0.0.1:23

где -C указывает на файл с парами login:password, а второй аргумент для указания ://: . В папке /usr/share/seclists размещены словари часто используемых реквизитов для входа. Обратите внимание на то, что словари разложены по папкам. Обращайте внимание на то какой список вы используете.

Практика

От практики зависит ваше развитие. Конечно если пытаться применить знания в живую, то скорей всего вы не сможете так легко найти уязвимые системы. Технологии безопасности далеко шагнули. Чтобы начать практиковаться на простых целях, рекомендую использовать платформу: HTB. На ней есть бесплатный тариф, которого хватит для первого погружения в дисциплину.

А полученных знаний из этой статьи должно хватить для прохождения первых заданий из раздела Starting Point. Tier 0.

  • Meow — на проникновение через telnet
  • Fawn — в этом задании будет машина с уязвимым FTP
Читайте также:
Программа terabox что это

Надеюсь что данная статья, поможет начинающим в области этичного хакинга сделать первые шаги. В начале всегда сложно, не знаешь с чего начать. А данная дисциплина особо сложна для входа.

  • Информационная безопасность
  • CTF

Источник: habr.com

Инструменты Kali Linux

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

Hydra

Описание Hydra

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

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

В настоящее время поддерживаются следующие протоколы: Asterisk, AFP, Cisco AAA, Cisco auth, Cisco enable, CVS, Firebird, FTP, HTTP-FORM-GET, HTTP-FORM-POST, HTTP-GET, HTTP-HEAD, HTTP-POST, HTTP-PROXY, HTTPS-FORM-GET, HTTPS-FORM-POST, HTTPS-GET, HTTPS-HEAD, HTTPS-POST, HTTP-Proxy, ICQ, IMAP, IRC, LDAP, MS-SQL, MYSQL, NCP, NNTP, Oracle Listener, Oracle SID, Oracle, PC-Anywhere, PCNFS, POP3, POSTGRES, RDP, Rexec, Rlogin, Rsh, RTSP, SAP/R3, SIP, SMB, SMTP, SMTP Enum, SNMP v1+v2+v3, SOCKS5, SSH (v1 and v2), SSHKEY, Subversion, Teamspeak (TS2), Telnet, VMware-Auth, VNC и XMPP.

Справка по Hydra

hydra [[[-l ЛОГИН|-L ФАЙЛ] [-p ПАРОЛЬ|-P ФАЙЛ]] | [-C ФАЙЛ]] [-e nsr] [-o ФАЙЛ] [-t ЗАДАЧИ] [-M ФАЙЛ [-T ЗАДАЧИ]] [-w ВРЕМЯ] [-W ВРЕМЯ] [-f] [-s ПОРТ] [-x МИН:МАКС:НАБОРЫ СИМВОЛОВ] [-SOuvVd46] [service://server[:ПОРТ][/OPT]]
-R восстановить предыдущую прерванную/оборванную сессию -S выполнить SSL соединение -s ПОРТ если служба не на порту по умолчанию, то можно задать порт здесь -l ЛОГИН или -L ФАЙЛ с ЛОГИНАМИ (именами), или загрузить несколько логинов из ФАЙЛА -p ПАРОЛЬ или -P ФАЙЛ с паролями для перебора, или загрузить несколько паролей из ФАЙЛА -x МИНИМУМ:МАКСИМУМ:НАБОР_СИМВОЛОВ генерация паролей для брутфорса, наберите «-x -h» для помощи -e nsr «n» — пробовать с пустым паролем, «s» — логин в качестве пароля и/или «r» — реверс учётных данных -u зацикливаться на пользователя, а не на паролях (эффективно! подразумевается с использованием опции -x) -C ФАЙЛ формат где «логин:пароль» разделены двоеточиями, вместо опции -L/-P -M ФАЙЛ список серверов для атак, одна запись на строку, после двоеточия ‘:’ можно задать порт -o ФАЙЛ записывать найденные пары логин/пароль в ФАЙЛ вместо стандартного вывода -f / -F выйти, когда пара логин/пароль подобрана (-M: -f для хоста, -F глобально) -t ЗАДАЧИ количество запущенных параллельно ЗАДАЧ (на хост, по умолчанию: 16) -w / -W ВРЕМЯ время ожидания ответов (32 секунды) / между соединениями на поток -4 / -6 предпочитать IPv4 (по умолчанию) или IPv6 адреса -v / -V / -d вербальный режим / показывать логин+пароль для каждой попытки / режим отладки -O использовать старые SSL v2 и v3 -q не печатать сообщения об ошибках соединения -U подробные сведения об использовании модуля server цель: DNS, IP или 192.168.0.0/24 (эта ИЛИ опция -M) service служба для взлома (смотрите список поддерживаемых протоколов) OPT некоторые модули служб поддерживают дополнительный ввод (-U для справки по модулю) Для настройки прокси используйте переменные окружения HYDRA_PROXY_HTTP или HYDRA_PROXY и, если необходимо, HYDRA_PROXY_AUTH. Напр.: % export HYDRA_PROXY=socks5://127.0.0.1:9150 (or socks4:// or connect://) % export HYDRA_PROXY_HTTP=http://proxy:8080 % export HYDRA_PROXY_AUTH=user:pass

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

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

  • asterisk
  • afp
  • cisco
  • cisco-enable
  • cvs
  • firebird
  • ftp
  • ftps
  • http-head
  • https-head
  • http-get
  • https-get
  • http-post
  • https-post
  • http-get-form
  • https-get-form
  • http-post-form
  • https-post-form
  • http-proxy
  • http-proxy-urlenum
  • icq
  • imap
  • imaps
  • irc
  • ldap2
  • ldap2s
  • ldap3
  • ldap3s
  • ldap3-crammd5
  • ldap3-crammd5s
  • ldap3-digestmd5
  • ldap3-digestmd5s
  • mssql
  • mysql
  • nntp
  • oracle-listener
  • oracle-sid
  • pcanywhere
  • pcnfs
  • pop3
  • pop3s
  • postgres
  • rdp
  • redis
  • rexec
  • rlogin
  • rsh
  • rtsp
  • s7-300
  • sip
  • smb
  • smtp
  • smtps
  • smtp-enum
  • snmp
  • socks5
  • ssh
  • sshkey
  • svn
  • teamspeak
  • telnet
  • telnets
  • vmauthd
  • vnc
  • xmpp

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

-x MIN:MAX:CHARSET где MIN минимальное количество символов в пароле MAX максимальное количество символов в пароле CHARSET это указание наборов символов для использования в генерации. Валидными значениями CHARSET являются: ‘a’ для букв нижнего регистра, ‘A’ для букв верхнего регистра, ‘1’ для чисел, а для всех остальных, просто добавляйте их самих.

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

-x 3:5:a

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

-x 5:8:A1

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

-x 1:3:/

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

-x 5:5:/%,.-

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

cisco

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

cisco-enable

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

Читайте также:
ActivaTors что это за программа и нужна ли

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

hydra -P pass.txt target cisco-enable (прямой консольный доступ) hydra -P pass.txt -m cisco target cisco-enable (пароль входа cisco) hydra -l foo -m bar -P pass.txt target cisco-enable (AAA логин foo, пароль bar)

cvs

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

firebird

Модуль firebird опционально принимает имя базы данных для атаки, по умолчанию это «C:Program FilesFirebirdFirebird_1_5security.fdb»

http-get, https-get, http-post, https-post

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

Например: «/secret» или «http://bla.com/foo/bar» или «https://test.com:8080/members»

http-get-form, https-get-form, http-post-form, https-post-form

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

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

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

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

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

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

для отправки с каждым запросом заданного пользователем HTTP заголовка

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

Примечание: ‘h’ добавит определённый пользователем заголовок в конец, независимо от того, отправила ли уже Hydra заголовок или нет.

‘H’ заменит значение этого заголовка, если оно существует, тем, которое указал пользователь или добавит заголовок в конец.

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

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

«/login.php:user=^USER^ «/login.php:user=^USER^colon=colon:escape:S=authlog=.*success» «/login.php:user=^USER^mid=123:authlog=.*failed» «/:user=^USER «/exchweb/bin/auth/owaauth.dll:destination=http%3A%2F%2F%2Fexchangeusername=%5C^USER^SubmitCreds=x

http-proxy

Модуль http-proxy опционально принимает страницу на которой аутентификация.

По умолчанию это http://www.microsoft.com/)

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

http-proxy-urlenum

Модуль http-proxy-urlenum только использует опцию -L, а не опции -x или -p/-P. После опции -L должно идти имя файла с URL списком, которые нужно пробовать как прокси. Учётные данные прокси могут быть указаны как опциональный параметр, например:

hydra -L urllist.txt -s 3128 target.com http-proxy-urlenum user:pass hydra -L urllist.txt http-proxy-urlenum://target.com:3128/user:pass

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 режима работы: анонимный (без пользователя и пароля), не прошедший проверку подлинности (с пользователем, но без пароля), с проверкой подлинности юзер/пароль (пользователей и пароль).

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

Подсказка: для аутентификации в windows active directy ldap это обычно cn=^USER^,cn=users,dc=foo,dc=bar,dc=com for domain foo.bar.com

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.

hydra rdp://192.168.0.1/firstdomainname -l john -p doe

s7-300

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

smb

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

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

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

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

hydra smb://microsoft.com -l admin -p tooeasy -m «local lmv2» hydra smb://microsoft.com -l admin -p D5731CFC6C2A069C21FD0D49CAEBC9EA:2126EE7712D37E265FD63F2C84D2B13D. -m «local hash» hydra smb://microsoft.com -l admin -p tooeasy -m «other_domain:SECONDDOMAIN»

smtp, smtps

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

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

smtp-enum

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

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

hydra smtp-enum://192.168.0.1/vrfy -l john -p localhost

snmp

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

READ выполняет запросы чтения (по умолчанию) WRITE выполняет запросы записи 1 использовать SNMP версии 1 (по умолчанию) 2 использовать SNMP версии 2 3 использовать SNMP версии 3 Помните, что SNMP версии 3 обычно использует и логин и пароль! SNMP версии 3 имеет следующие дополнительные подпараметры: MD5 использовать аутентификацию MD5 (по умолчанию) SHA использовать SHA аутентификацию DES использовать DES шифрование AES использовать AES шифрование если не указан параметр -p/-P, SNMPv3 выполняется noauth, которая требует только пароль (или имя пользователя) но не оба.

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

hydra -L user.txt -P pass.txt -m 3:SHA:AES:READ target.com snmp hydra -P pass.txt -m 2 target.com 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.

Помните, что переданная цель должна быть fdqn, так как значение используется в запросе Jabber init, пример: hermes.jabber.org

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

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

hydra -l root -P /usr/share/wordlists/metasploit/unix_passwords.txt -t 6 ssh://192.168.1.123

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

hydra -l user -P passlist.txt ftp://192.168.0.1

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

hydra -L logins.txt -P pws.txt -M targets.txt ssh

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

hydra -l admin -p password ftp://[192.168.0.0/24]/

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

hydra -L userlist.txt -p defaultpw imap://192.168.0.1/PLAIN

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

hydra -C defaults.txt -6 pop3s://[2001:db8::1]:143/TLS:DIGEST-MD5

Установка Hydra

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

Установка в BlackArch

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

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

sudo apt-get remove hydra sudo apt-get install libssl-dev libssh-dev libidn11-dev libpcre3-dev libgtk2.0-dev libmysqlclient-dev libpq-dev libsvn-dev firebird2.1-dev libncp-dev git clone https://github.com/vanhauser-thc/thc-hydra.git cd thc-hydra/ ./configure make sudo make install

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

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

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

xhydra

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

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

Скриншоты Hydra

Инструкции по Hydra

Источник: kali.tools

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru