THC-Hydra: очень быстрый взломщик сетевого входа в систему (часть первая) | WebWare.biz

# THC-Hydra: очень быстрый взломщик сетевого входа в систему (часть первая)

16.08.201518.08.2015 WebWare Team Безопасность

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

Этот инструмент — THC-Hydra — предназначен только для законных целей.

Программа прекрасно компилируется и работает на Linux, Windows/Cygwin, Solaris, FreeBSD/OpenBSD, QNX (Blackberry 10) и OSX. Лучше всех пользователям Kali Linux – у них программа уже установлена.

В настоящее время поддерживаются следующие протоколы: Asterisk, AFP, Cisco AAA, Cisco auth, Cisco enable, CVS, Firebird, FTP, HTTP-FORM-GET, HTTP-FORM-POST, HTTP-GET, HTTP-HEAD, HTTP-PROXY, HTTPS-FORM-GET, HTTPS-FORM-POST, HTTPS-GET, HTTPS-HEAD, 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, SAP/R3, SIP, SMB, SMTP, SMTP Enum, SNMP v1+v2+v3, SOCKS5, SSH (v1 и v2), SSHKEY, Subversion, Teamspeak (TS2), Telnet, VMware-Auth, VNC и XMPP.

Ну т. е. правда — много.

## Синтаксис Hydra:

    hydra [[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e nsr] [-o FILE] [-t TASKS] [-M FILE [-T TASKS]] [-w TIME] [-W TIME] [-f] [-s PORT] [-x MIN:MAX:CHARSET] [-SuvVd46] [service://server[:PORT][/OPT]]

Прибавилось ли понимания после увиденного синтаксиса? )) Не переживайте, сейчас рассмотрим опции THC-Hydra, а потом углубимся в понимание работы с этой программой.

## Опции hydra:

      -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  вербальный режим / показывать логин+пароль для каждой попытки / режим отладки
      -q        не печатать сообщения об ошибках соединения
      -U        подробные сведения об использовании модуля
      server    цель: DNS, IP или 192.168.0.0/24 (эта ИЛИ опция -M)
      service   служба для взлома (смотрите список поддерживаемых протоколов)
      OPT       некоторые модули служб поддерживают дополнительный ввод (-U для справки по модулю)

## Как использовать hydra

### Пароли для Hydra

THC-Hydra поставляется без логинов/паролей. Нам нужно самим где-то их раздобыть. И вот здесь нам поможет недавняя статья «Списки слов для атаки по словарю: пароли, имена пользователей, каталоги». Изучайте её, скачивайте свои пароли.

Ещё файлы с дефолтными паролями позволяет генерировать утилита от hydra — dpl4hydra.sh. Чтобы узнать, какие устройства есть в базе, зайдите сюда.

Чтобы воспользоваться программой dpl4hydra.sh на Kali Linux, нам сначала нужно её скачать (по какой-то причине авторы Kali не включили её в стандартную установку).

    wget https://raw.githubusercontent.com/vanhauser-thc/thc-hydra/master/dpl4hydra.sh

Теперь создаём необходимые для работы программы файлы:

    touch /usr/local/etc/dpl4hydra_full.csv /usr/local/etc/dpl4hydra_local.csv

Запускаем первый раз

    sh dpl4hydra.sh refresh

Теперь можно сделать так:

    sh dpl4hydra.sh all

чтобы скачать дефолтные пароли для всех брендов. А можно задать конкретный бренд, например, меня очень интересуют популярные роутеры D-Link, то я набираю

    sh dpl4hydra.sh d-link

По идее, должен сгенерироваться файл с дефолтными паролями устройств D-Link, но этого не происходит из-за каких-то ошибок парсинга. Пусть нас это не огорчает, ведь ссылку на статью с паролями я уже дал.

### Графический интерфейс Hydra

Кстати, для пользователей Linux доступен графический интерфейс (GTK gui), для его запуска наберите

    xhydra

### Использование Hydra в командной строке

Для использования в командной строке синтаксис следующий:

- Для атаки одной цели или сети, вы можете использовать новый стиль ://

    hydra [некоторые опции командной строки] ПРОТОКОЛ://ЦЕЛЬ:ПОРТ/ОПЦИИ

- Старая старый синтаксис также поддерживается, а если вы хотите, то дополнительно можете задать цели из текстового файла, при этом вы *должны* использовать этот синтаксис:

    hydra [некоторые опции командной строки] [-s порт] ЦЕЛЬ ПРОТОКОЛ ОПЦИИ

Через опции командной строки вы определяете, какие логины и пароли перебирать, нужно ли использовать SSL, во сколько потоков осуществлять атаку и т.д.

ПРОТОКОЛ — это протокол, который вы хотите атаковать, например, ftp, smtp, http-get или любой из доступных

ЦЕЛЬ — это целевая машина, которую вы хотите атаковать

TARGET is the target you want to attack

ОПЦИИ дополнительные значения, которые задаются для модуля ПРОТОКОЛ

Первое — выберите вашу цель

есть три способа задать цель для атаки:

1. единичная цель в командной строке: просто введите IP или DNS адрес
2. диапазон подсети в командной строке:
3. список хостов в текстовом файле: один хост на строку (подробности ниже)

Второе — выберите ваш протоколов

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

Третье — проверьте, имеет ли модуль дополнительные параметры

    hydra -U ПРОТОКОЛ

например,

    hydra -U smtp

Четвёртое — порт назначение

Это необязательно! Если на удалённой машине используется порт по умолчанию для этой службы, то программа hydra сама знает, какие порты используется для ПРОТОКОЛов

Если вы задали использовать SSL (опция "-S"), то по умолчанию будет использоваться обычный порт SSL.

Если вы используете нотацию "://", то вы должны использовать квадратные скобки [ ], если вы хотите целя для атак определить адресами IPv6 или CIDR ("192.168.0.0/24")

    hydra [некоторые опции командной строки] ftp://[192.168.0.0/24]/
    hydra [некоторые опции командной строки] -6 smtp://[2001:db8::1]/NTLM

Обратите внимание, что hydra делает все атаки только на IPv4!

Если вы хотите атаковать адреса IPv6 вы должны добавить опцию "-6". Тогда все атаки будут на IPv6.

Если вы хотите задать цели через текстовый файл, вы не можете использовать обозначение ://, используйте старый стиль и задайте протокол (и опции модуля):

    hydra [некоторые опции командной строки] -M targets.txt ftp

Вы также можете указать порт для каждой цели, добавив ":<порт>" после каждой записи цели в файле, например:

    foo.bar.com
    target.com:21
    unusual.port.com:2121
    default.used.here.com
    127.0.0.1
    127.0.0.1:2121

Обратите внимание, если вы хотите присоединить цели IPv6, вы должны указать опцию -6 и должны поместить адреса IPv6 в квадратные скобки в файле (!) примерно так:

    foo.bar.com
    target.com:21
    [fe80::1%eth0]
    [2001::1]
    [2002::2]:8080
    [2a01:24a:133:0:00:123:ff:1a]

## Логины и пароли Hydra

Есть много разных опций, как атаковать с логинами и паролями.

Опциями -l для логина и -p для пароля, вы можете сказать hydra использовать только эти логин и/или пароль для попытки.

С -L для логинов и -P для паролей вы указываете текстовые файлы с записями, например:

    hydra -l admin -p password ftp://localhost/
    hydra -L default_logins.txt -p test ftp://localhost/
    hydra -l admin -P common_passwords.txt ftp://localhost/
    hydra -L logins.txt -P passwords.txt ftp://localhost/

Дополнительно вы также можете пробовать пароли, основанные на логины, это делается опцией "-e".

Опция "-e" имеет три параметра:

- s — пробовать логин как пароль
- n — пробовать пустой пароль
- r — перестановка в логине символов с зада на перёд и использование получившегося слова в качестве пароля

К примеру, если вы хотите попробовать логин в качестве пароля и пустой пароль, то вам нужно в командной строке указать "-e sn".

Для пароля кроме -p/-P есть ещё пара режимов:

Вы можете использовать текстовый файл, в котором логины и пароли разделены двоеточием, например:

    admin:password
    test:test
    foo:bar

Это популярный стиль записи листинга дефольтных значений аккаунта. В таком же виде генерирует файлы dpl4hydra.sh (генератор дефолтных логинов и паролей для hydra).

Использовать такой текстовый файл нужно с опцией -C, обратите внимание, что в этом режиме нельзя использовать опции -l/-L/-p/-P (хотя -e nsr можно).

Пример:

    hydra -C default_accounts.txt ftp://localhost/

И наконец, есть режим брутфорса с опцией -x (её нельзя использовать с -p/-P/-C):

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

Набор символов определяет 'a' для букв в нижнем регистре, 'A' — для букв в вернем регистре, '1' — для цифр, а для всего другого используйте их реальные символы.

Примеры:

- -x 1:3:a генерирует пароли длинной от 1 до 3 символов, состоящие только из букв в нижнем регистре
- -x 2:5:/ генерирует пароли длинной от 2 до 5 символов, содержание только слэши
- -x 5:8:A1 генерирует пароли длинной от 5 до 8 символов, с большими буквами и цифрами

Пример:

    hydra -l ftp -x 3:3:a ftp://localhost/

## Специальные опции для модулей

Через третий параметр командной строки (ЦЕЛЬ СЛУЖБА ОПЦИИ) или после ключа -m, вы можете передать модулю одну опцию.

Многие модули используют их, а некоторые требуют их!

Чтобы получить дополнительную информацию по опции модуля, наберите

    hydra -U <модуль>

например:

    hydra -U http-post-form

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

Примеры (они все означают одно и то же):

    hydra -l test -p test -m PLAIN 127.0.0.1 imap
    hydra -l test -p test 127.0.0.1 imap PLAIN
    hydra -l test -p test imap://127.0.0.1/PLAIN

## Возобновление прерванной/оборванной сессии

Когда hydra прерывается командой Control-C, убивается или вылетает с ошибкой, она оставляет файл "hydra.restore" в котором содержится вся необходимая информация для восстановления сессии. Этот файл сессии пишется каждые 5 минут.

Примечание: файл hydra.restore НЕ может быть скопирован между различными платформами (например с little indian на big indian или с solaris на aix)

## Как сканировать/взламывать через прокси

Переменная среды HYDRA_PROXY_HTTP определяет веб прокси (это работает только для службы http/www!)

Следующий синтаксис является валидными:

    HYDRA_PROXY_HTTP="http://123.45.67.89:8080/"

Для всех остальных служб используйте переменную HYDRA_PROXY для сканирования/взлома через дефолтный вызов веб-прокси CONNECT. Он использует тот же самый синтаксис, например:

    HYDRA_PROXY=[http|socks4|socks5]://proxy_addr:proxy_port

например:

    HYDRA_PROXY=http://proxy.anonymizer.com:8000

Если на прокси необходима аутентификация, используйте переменную окружения HYDRA_PROXY_AUTH:

    HYDRA_PROXY_AUTH="the_login:the_password"

## Дополнительные подсказки

- сортируйте ваши файлы с паролями по вероятности и используйте опцию -u для нахождения паролей намного быстрее!
- пропускайте ваши словари через команду uniq, чтобы они содержали только уникальные записи! Это может сэкономить вам уйму времени

    cat words.txt | sort | uniq > dictionary.txt

- если вы знаете, что цель использует политику паролей (позволяя пользователям выбирать пароли только с минимальной длинной от 6 символов, содержащих по крайней мере одну букву и одну цифру и т. д., используйте инструмент pw-inspector, который поставляется вместе с пакетом hydra для уменьшения списка паролей:

    cat dictionary.txt | pw-inspector -m 6 -c 2 -n > passlist.txt

## Скорость hydra

Благодаря функции множественных одновременных запросов, этот инструмент взлома паролей может быть очень быстрым. Тем не менее, скорость зависит от протокола. Самыми быстрыми являются POP3 и FTP.

Экспериментируйте с опцией -t для ускорения! Чем выше — тем быстрее 😉 (но слишком высокое — и это отключит службу)

## Статистика hydra

Запущенная в отношении SuSE Linux 7.2 на локалхосте с "-C FILE", содержащем 295 записей (294 невалидных учётных данных, 1 валидный). Каждый тест запускался три раза (только для "1 задача" единожды) и были получены следующие средние цифры:

    			ПАРАЛЛЕЛЬНЫЕ ЗАДАЧИ
    SERVICE	1	4	8	16	32	50	64	100	128
    ------- --------------------------------------------------------------------
    telnet	23:20	5:58	2:58	1:34	1:05	0:33	0:45*	0:25*	0:55*
    ftp	    45:54	11:51	5:54	3:06	1:25	0:58	0:46	0:29	0:32
    pop3	92:10	27:16	13:56	6:42	2:55	1:57	1:24	1:14	0:50
    imap	31:05	7:41	3:51	1:58	1:01	0:39	0:32	0:25	0:21

    (*) Обратите внимание на тайминг telnet — он может быть ОЧЕНЬ разным для задач от 64 до 128! Например, со 128 задачами, запущенный четыре раза, результаты в тайминге между 28 и 97 секундами!
    Причина этого неизвестна...

    предположений на задачу (округлённо):
    	295	74	38	19	10	6	5	3	3

    возможные предположения на соединения (зависит от серверного программного обеспечения и конфигурации):
    	telnet	4
    	ftp	6
    	pop3	1
    	imap	3

## THC-Hydra: справка по важнейшим модулям, перебор паролей в веб-приложениях, примеры Hydra

Брутфорсинг веб-сайтов с Hydra (часть вторая инструкции по Hydra).

Поделиться "THC-Hydra: очень быстрый взломщик сетевого входа в систему (часть первая)"

- Facebook
- Twitter
- Google+
- VKontakte
- E-mail

Связанные статьи:

- Брутфорсинг веб-сайтов с Hydra (часть вторая инструкции по Hydra) (100%)
- Списки слов для атаки по словарю: пароли, имена пользователей, каталоги (83%)
- BruteX: программа для автоматического брутфорса всех служб (69.6%)
- Crunch — генератор паролей: основы использования и практические примеры (65.6%)
- Инструкция по Armitage: автоматический поиск и проверка эксплойтов в Kali Linux (65.1%)
- Как у меня "увели" домен (RANDOM - 50%)

### Добавить комментарий Отменить ответ

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Имя *

E-mail *

Сайт

Комментарий

Можно использовать следующие HTML-теги и атрибуты: `<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>`

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

### Бесплатная книга по Kali

Читайте и скачивайте бесплатную книгу по Kali Linux 2.0 на русском языке

### Примечательные статьи:

- Рекомендованные USB беспроводные карты для Kali Linux
- Что почитать о компьютерной безопасности в 2015 году
- Как получить короткий и красивый e-mail
- Хостинг со сканером вирусов
- Свобода самовыражения с новыми доменными зонами
- Брошенные сайты с ТИЦ и PR, свободные премиум домены

### Популярные записи

Установка Apache, PHP, MySQL, phpMyAdmin 19 Авг , 2014
Как установить Kali Linux: подробная инструкция для установки на компьютер и в виртуальную машину 19 Окт , 2014
Взлом Wi-Fi пароля (WPA/WPA2), используя pyrit и cowpatty в Kali Linux 12 Фев , 2015
Kali Linux 2.0 с ядром 4.0 – Установка проприетарного драйвера NVIDIA – ускоренный видеодрайвер NVIDIA для Linux 12 Фев , 2015
MiAl’s Server Pack (полностью настроенный и рабочий сервер Apache + MySQL + PHP + phpMyAdmin — WAMP) (v. 0.3.1) 20 Авг , 2014
Модификация форка Reaver — t6x — для использования атаки Pixie Dust 04 Май , 2015

### Свежие записи

- PW-Inspector: отбираем пароли соответствующие критериям
- Решение ошибки dpkg: warning: ‘ldconfig’ not found in PATH or not executable, возникающей при установке пакетов в Kali Linux
- Решение проблемы с ошибкой E: Could not get lock /var/lib/dpkg/lock — open (11: Resource temporarily unavailable) в Kali Linux
- Брутфорсинг веб-сайтов с Hydra (часть вторая инструкции по Hydra)
- THC-Hydra: очень быстрый взломщик сетевого входа в систему (часть первая)

### Свежие комментарии

- DocenT к записи Взлом Wifi WPA/WPA2 паролей с использованием Reaver
- ss к записи Взлом Wifi WPA/WPA2 паролей с использованием Reaver
- Спасибо тебе большое! к записи Книга «Тестирование на проникновение с Kali Linux» 2.0 на русском языке
- Денис к записи Установка Nvidia + Bumblebee + CUDA на Kali Linux 1.1.0 для машин с включённым Optimus
- Денис к записи Как установить Kali Linux: подробная инструкция для установки на компьютер и в виртуальную машину

### Рубрики

- CSS
- JavaScript
- PHP
- SEO
- WordPress
- Без рубрики
- Безопасность
- Настройка сети
- Ни web'ом единым
- Новости
- Плагины
- Программирование (кодинг)
- Программы для сервера
- Работа и заработок в Интернете
- Ресурсы
- Создание сайтов
- Фотографии

### Вступайте в официальную группу

### Счётчики