Меню Рубрики

Telnet bruteforce medusa windows

Lust and love’s Blog

Medusa: Свободная программа для проверки паролей

Medusa: Свободная программа для проверки паролей
автор: Поль Рубенс
оригинал

[cut]
Плохие пароли могут привести к плохим последствиям. Именно поэтому они особенно важны для корпоративной безопасности, для защиты данных (в том числе почтовых серверов, серверов баз данных и других) от несанкционированного проникновения (и от хакеров).
У плохого пароля есть три отличительных признака:

  1. Он легко угадывается
  2. Его с большой вероятностью можно встретить в списке паролей
  3. Его можно быстро подобрать

Все три возможности вкратце разбираются дальше.

Легко угадываемый пароль

Выбирая пароль, люди очень предсказуемы, поэтому встречаются одни и те же пароли. Ниже проанализированы 32 миллиона паролей, которые выложили в публичный доступ после взлома сайта Rockyou.com.

Самые популярные пароли

1 123456 290,731
2 12345 79,078
3 123456789 76,790
4 Password 61,958
5 iloveyou 51,622
6 princess 35,231
7 rockyou 22,588
8 1234567 21,726
9 12345678 20,553
10 abc123 17,542

Почти 1% пользователей Rockyou.com выбрали пароль «123456». Иначе говоря, хакеру был доступен примерно 1аккаунт из 100.
Другие легко угадываемые пароли это имена питомцев, детей, любимой спортивной команды или супруга. Эти данные легко получить, используя социальные сети, например, Facebook.

Список паролей

Попробовав пароли вроде «123456» и «Password», хакер переходит к списку паролей. Обычно это списки слов из словарей, известные имена и наиболее полные списки с комбинациям слов (например, iloveyou), слова и цифры (как money123), а также слова с числовыми вставками (типа m0n3y). В таких списках практически не бывает паролей с использованием верхнего и нижнего регистра одновременно, случайных наборов символов ( d5j*Dg;r?’fRey), комбинации из нескольких слов (doGbutTerbicYclE) или слова со знаками препинания (s(c&H#0%o»L).

Метод «грубой силы» (брутфорс)
Единственный верный способ найти пароль — это перебирать все варианты, пока не повезет — это называется брутфорс. Пароль из одного, двух или трех символов быстро подбирается, но чем длиннее пароль тем меньше шансов его подобрать. Чтобы подобрать пароль из 15 символов потребуются милларды лет.

Тестирование/Проверка
С одной стороны, чтобы проверить корпоративную систему, вы можете использовать хакерский путь: подбирать разные пароли и оценивать успех. Это так называемая онлайн-атака. Ее еще можно использовать чтобы проверить, как ваша система определяет атаку на сервер в результате неудачных попыток залогиниться и блокируется ли отдельный аккаунт после нескольких неудачных попыток.
Для онлайновых атак существует множество программ, в том числе программа с открытым исходным кодом Hydra . Но, верооятно, одна из самых лучших программ этого типа для OS Linux — это Medusa, написанная «гиками с ресурса Foofus.net».
Medusa это «быстрая, массивно-параллельная, модульная программа для подбора паролей» с модулями для поддержки практически любого сервиса для удаленной аутентификации с помощью пароля, включая: CVS, FTP, HTTP, IMAP, MS-SQL, MySQL, POP3, PostgreSQL, SMTP-AUTH, Telnet и VNC. Medusa быстрее чем Hydra благодаря использованию поточной организации (организация Hydra построена на процессах) и одновременно пытается соединится с несколькими хостами или пользователями.

Medusa 2.0 How-To

Установка
Сохраните medusa-2.0.tar.gz в выбранную папку.
Разархивируйте архив с программой.
-zxvf medusa-2.0.tar.gz
Зайдите в папку с программой
cd medusa-2.0
Используйте обычную процедуру установки в ОС Linux
«./configure «, «make», «make install»
./configure
make
make install

Здесь подробные инструкции, включая список зависимостей.

Список паролей

Medusa соединяется с сервисом, например, через веб-страницу или FTP-сервер, и пытается залогиниться, используя различные имена пользователя и пароли.
Чтобы проверить устотойчивость пароля отдельного пользователя вам понадобится список паролей, которые и будет перебирать Medusa.
В интернете выложено множено платных и бесплатных таких списков, например:
hugewordlist.txt: 3.5 миллиона слов, имен, номеров и комбинаций.
Outpost 9 wordlists: около 40 различных списков, в том числе словари и имена
Packet Storm wordlists: Подборка бесплатных списков на английском и других языка.
Masta-spitz: Огромный (194 мб) мета-список компиляция других списков.

Вы сможете составить Ваш собственный список паролей на базе существующих, используя правила «подстановки» типа @ вместо «а», добавляя цифры в начале или в конце каждого слова.
С этим справится например John the Ripper — мультиплатформенная программа с открытым кодом.
Также пригодиться:
The Associative Wordlist Generator: онлайновый инструмент для создания списков паролей на основе заданных вами слов.
Wyd: свободная программа для Linuх , скачивающая слова с сайтов, файлов и папок.

Использование Medusa

Medusa это консольный инструмент, поэтому использование всего лишь вопрос понимания инструкций команднолй строки.
Например, мы хотим, чтобы Medusa подключилась к сетевому роутеру с IP адресом 192.168.1.1 c типовым именем пользователя admin и проверим, как быстро программа найдет пароль. Используется список паролей hugewordlist.txt (выше о нем уже говорилось).
Мы знаем, что собаку администратора зовут Fido, двух его детей Элис и Боб и добавляем эти имена в начало текстового файла hugewordlist.txt вместе с названием фирмы и 10 самыми распространенными паролями с сайта Rockyou.com (о них говорилось в начале статьи).

В настройках нужно указать следующее:
Хост 192.168.1.1, к которому подключается Medusa с ключом -h
Имя пользователя admin c ключом -u
Название текстового файла со списком паролей с ключом -P
Модуль сервиса, к которому мы хотим получить доступ ( в данном случае http) c ключом -M

Получаем команду medusa -h 192.168.1.1 -u «admin» -P hugewordlist.txt -M http
В моей сети Medusa перебирала 2000 паролей в минуту и нашла пароль «>tvaringa» примерно за 50 секунд.

Но что, если вы хотите проверить прочность паролей многих пользователей вместо одного с логином admin?
Чтобы проверить пароли пользователей на POP3 сервере, потребуется список email адресов в текстовом файле типа «emailusers.txt».
А еще потребуется список паролей. В этот раз мы возьмем более короткий список с популярными паролями и сохраним его в файле с именем «shortpasswordlist.txt». Medusa способна обрабатывать их паралельно, подбирая пароль к 10 (или к любому другому числу) пользователей за раз.
Другими словами Medusa проверит первые 10 имен пользователей на совпадение с первым паролем из списка, затем еще 10 имен на совпадение со вторым паролем и так далее. Когда список дойдет до конца, Medusa начнет проверять следующие 10 имен и сверит их со всеми паролями.

Для проверки нескольких имен надо ввести следующее:
IP адрес POP3 сервера (в этом случае 192.168.1.20) с ключом -h
Текстовый файл со списком имен пользователей (emailusers.txt) с ключом -U
Текстовый файл с паролями (shortpasswordlist.txt) с ключом -P
That Medusa should test multiple usernames at simultaneously using the -L switch
The number of usernames to test at a time using the -t switch
The module to use (POP3) using the -M switch
Medusа сравнит многочисленные имена пользователей одновременно c ключом -L
Число одновременно проверяемых имен задается с ключом -t
Модуль (POP3) задается -М

Команда выглядит так: 192.168.1.20 -U emailusers.txt -P shortpasswordlist.txt -t 10 -L -M POP3
Если Medusa способна найти любые пароли, разумно будет проверить насколько эти пароли отвечают вашей политике безопасности. Если Medusa находит ваши пароли, они должны быть заменены на более стойкие. Если нет, вы можете сообщить сознательным пользователям о риске использования слабых паролей и убедиться, что пароли были изменены.

Больше информации о Medusa

Чтобы узнать все доступные команды наберите medusa
Чтобы узнать, какие сервисные модули установлены наберите medusa -d

Eсть еще примеры использования, но лучше просто скачать программу и начать ею пользоваться.

Источник

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

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

Medusa

Описание Medusa

Medusa — это быстрый, параллельный и модульный брут-форсер входа. Цель заключается в поддержке такого количество служб, на которых возможна удалённая аутентификация. Ключевыми особенностями этого приложения являются:

  • Параллельное тестирование, основанное на потоках. Атака грубой силой может быть выполнена одновременно в отношении нескольких хостов, пользователей или паролей.
  • Гибкий пользовательский ввод. Целевая информация (хост/пользователь/пароль) могут быть указаны разнообразными способами. Например, любой пункт может быть как единичной записью, так и файлом, содержащим множество записей. Кроме того, комбинированный формат файла позволяет пользователю уточнить их целевой список.
  • Модульный дизайн. Модуль каждой службы размещён в независимом файле .mod. Это означает, что не требуется изменение ядра приложения для расширения списка поддерживаемых служб для брут-форсинга.
  • Поддержка множества протоколов. В настоящее время поддерживаются многие службы (например, среди прочих это SMB, HTTP, POP3, MS-SQL, SSHv2).

Автор: Joe Mondloch

Справка по Medusa

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

-h [ЦЕЛЬ]

Имя хоста или IP адрес сети.

-H [ФАЙЛ]

Считывает заданные цели из файла, а не из командной строки. Файл должен содержать список, разделённый новыми строками.

-u [ЦЕЛЬ]

Целевое имя пользователя

-U [ФАЙЛ]

Считывать целевые имена пользователя из указанного файла, а не из командной строки. Файл должен содержать список, разделённый новыми строками.

-p [ЦЕЛЬ]

-P [ФАЙЛ]

Считывать целевые пароли из указанного файла, а не из командной строки. Файл должен содержать список, разделённый новыми строками.

-C [ФАЙЛ]

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

В комбо файле возможные следующие комбинации: 1.) foo:bar:fud 2.) foo:bar: 3.) foo:: 4.) :bar:fud 5.) :bar: 6.) ::fud 7.) foo::fud

Medusa может также поддерживать файлы PwDump в качестве комбо файлов. Формат этих файлов должен быть user:id:lm:ntlm. Мы ищем ‘. ‘ в конце первой строки для определения, содержит ли файл вывод PwDump.

-O [ФАЙЛ]

Файл к которому добавляет информация журнала. Medusa будет вести журнал всех валидных учётных данных аккаунтов или которые вызвали неизвестную ошибку. Также будет записано время запуска и остановки аудита вместе с параметрами вызова.

-e [n/s/ns]

Дополнительные проверки пароля ([n] Без пароля, [s] Пароль = Имя_Пользователя). Если используются обе опции, то они должны быть указаны вместе («-e ns«). Если вызывается только одна опция, используйте или «-e n» или «-e s«.

-M [ТЕКСТ]

Имя модуля для выполнения (без расширения .mod).

m [ТЕКСТ]

Параметр, передаваемый модулю. Можно использовать несколько раз, каждый раз с другим параметром, и они все будут отправлены модулю (например, -m Param1 -m Param2 и т.д.)

Показать список всех модулей.

-n [ЧИСЛО]

Использовать номер TCP порта, отличный от используемого службой по умолчанию.

-g [ЧИСЛО]

Сдаться после попыток подключения в течение ЧИСЛО секунд (по умолчанию 3).

-r [ЧИСЛО]

Засыпать на ЧИСЛО секунд между повтором попыток (по умолчанию 3).

-R [ЧИСЛО]

Пытаться ЧИСЛО раз перед признанием неудачи. Общее число попыток будет ЧИСЛО + 1.

-c [ЧИСЛО]

Установить количество микросекунд, ожидаемое во время теста по установлению сетевого сокета. Некоторые службы (например, FTP, IMAP, POP3 и SMTP) могут быть настроены на закрытие подключений после произвольного числа неудачных попыток входа. Мы пробуем повторно использовать установленное соединение для отправки попыток аутентификации пока не случится отключение, в этом случае подключение устанавливается повторно. Для завершения этого перед аутентификацией внутри выбранных модулей, мы проверяем, жив ли ещё сокет. По умолчанию выполняется 1 микросекундная проверка. Может потребоваться намного большее значение. Например, 1000 микросекунд понадобилось при тестировании сервера vsftp чтобы не возникало проблем с встроенным механизмом анти-брутфорса.

-t [ЧИСЛО]

Общее число логинов для одновременного тестирования. Следует отметить, что приблизительно t x T потоков может быть одновременно запущено.

-T [ЧИСЛО]

Общее количество хостов для одновременного тестирования.

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

Остановить сканирования хоста после первого найденного действительного имени_пользователя/пароля.

Остановить аудит после первого найденного действительного имени_пользователя/пароля на любом хосте.

Подавить банер при запуске.

Показать информацию по использованию модуля. Это следует использовать вместе с опцией «-M». Например, «medusa -M smbnt -q».

-v [ЧИСЛО]

Уровень вербальности [0 – 6 (больше)]. Все сообщения на этом или ниже этого уровня будут отображены. По умолчанию уровень равен 5.

Следующие сообщения показываются на уровнях вербальности: 0) ВЫХОД ИЗ ПРИЛОЖЕНИЯ 1) СООБЩЕНИЯ БЕЗ ТЭГА 2) СООБЩЕНИЯ ЖУРНАЛА БЕЗ ТЭГА 3) ВАЖНЫЕ СООБЩЕНИЯ 4) АККАУНТ НАЙДЕН 5) ПРОВЕРКА АККАУНТА 6) ОБЩИЕ СООБЩЕНИЯ

-w [ЧИСЛО]

Уровень отладки ошибок [0 – 10 (больше)]. Будут отображаться все сообщения на указанном уровне или уровнях ниже. Значение по умолчанию — 5.

Следующие сообщения показываются на уровнях ошибок: 0) ФАТАЛЬНЫЕ 1) ТРЕВОГА 2) КРИТИЧНЫЕ 3) ОШИБКИ 4) ПРЕДУПРЕЖДЕНИЯ 5) УВЕДОМЛЕНИЯ 6) ИНФОРМАЦИЯ 7) ОТЛАДКА 8) ОТЛАДКА — АУДИТ 9) ОТЛАДКА — СЕРВЕР 10) ОТЛАДКА — МОДУЛЬ

-Z [ТЕКСТ]

Позволяет базовое восстановление предыдущего сканирования. Передаваемый параметр описывает, какие хосты были завершены, какие были частично протестированы, а какие не были начаты. Когда Medusa получает SIG‐INT, она рассчитывает и отображает (карту возобновления». Эта карта затем может быть указана при следующем запуске. Например, «medusa [OPTIONS PREVIOUSLY USED] -Z h6u1u2h8.» В этом конкретном примере хосты 1-5 были завершены, хост 6 был частично выполнен (пользователь 1 был частично завершён и пользователь 2 и далее не начинались), хост 7 был завершён и хост 8 и далее не начинались. Medusa разберёт эту карту и пропустит хосты и соответствующих пользователей. Если пользователь был начат, но не был закончен, он быдут протестирован с начала соответствующего списка паролей.

Информация о модулях Medusa и их опциях

Доступные для брут-форса модули:

  • afp.mod : Модуль брут-форса для AFP сессий
  • cvs.mod : Модуль брут-форса для CVS сессий
  • ftp.mod : Модуль брут-форса для FTP/FTPS сессий
  • http.mod : Модуль брут-форса для HTTP
  • imap.mod : Модуль брут-форса для IMAP сессий
  • mssql.mod : Модуль брут-форса для MSSQL сессий
  • mysql.mod : Модуль брут-форса для MySQL сессий
  • nntp.mod : Модуль брут-форса для NNTP сессий
  • pcanywhere.mod : Модуль брут-форса для PcAnywhere сессий
  • pop3.mod : Модуль брут-форса для POP3 сессий
  • postgres.mod : Модуль брут-форса для PostgreSQL сессий
  • rdp.mod : Модуль брут-форса для RDP (Microsoft Terminal Server) сессий
  • rexec.mod : Модуль брут-форса для REXEC сессий
  • rlogin.mod : Модуль брут-форса для RLOGIN сессий
  • rsh.mod : Модуль брут-форса для RSH сессий
  • smbnt.mod : Модуль брут-форса для SMB (LM/NTLM/LMv2/NTLMv2) сессий
  • smtp-vrfy.mod : Brute force module for verifying SMTP аккаунтов (VRFY/EXPN/RCPT TO)
  • smtp.mod : Модуль брут-форса для SMTP аутентификации с TLS
  • snmp.mod : Модуль брут-форса для общих строк (Community Strings) SNMP
  • ssh.mod : Модуль брут-форса для SSH v2 сессий
  • svn.mod : Модуль брут-форса для Subversion сессий
  • telnet.mod : Модуль брут-форса для telnet сессий
  • vmauthd.mod : Модуль брут-форса для демона аутентификации VMware
  • vnc.mod : Модуль брут-форса для VNC сессий
  • web-form.mod : Модуль брут-форса для веб-форм
  • wrapper.mod : Модуль универсальной обёртки

Доступные опции модуля:

Устанавливает имя целевой директории. Если не указана, то по умолчанию это «/root»

Пример использования: «-M cvs -m DIR:/some_project»

Доступные опции модуля:

  • MODE:? (NORMAL*, EXPLICIT, IMPLICIT)

EXPLICIT: Режим AUTH TLS как определено в RFC 4217

Явный FTPS (FTP/SSL) подключается к FTP службе с незашифрованными учётными данными. Тем не менее, перед отправкой каких-либо учётных данных выдаётся команда «AUTH TLS» и согласовывается SSL сессия.

IMPLICIT: FTP через SSL (990/tcp)

Неявный FTPS требует выполнение SSL рукопожатия перед отправкой каких-либо FTP команд. Эта служба, как правило, обитает на порту tcp/990. Если пользователь указывает эту опцию или использует опцию «-n» (SSL), то по умолчанию модуль будет в этом режиме и использовать порт tcp/990.

Поведение по умолчанию, если MODE не указан. Попытка аутентификации осуществляется без шифрования. Если сервер запрашивает шифрование для данного пользователя, используется явный FTPS.

(*) Значение по умолчанию

http

Доступные опции модуля:

  • USER-AGENT:? (User-Agent (пользовательский агент). По умолчанию: Mozilla/1.22 (compatible; MSIE 10.0; Windows 3.1))
  • DIR:? (Целевая директория. По умолчанию «/»)
  • AUTH:? (Тип аутентификации (BASIC/DIGEST/NTLM). По умолчанию: автоматически)
  • DOMAIN:? [опционально]
  • CUSTOM-HEADER:? Дополнительный HTTP заголовок. Можно указать больше заголовков, используя эту опцию несколько раз.

Пример использования: «-M http -m USER-AGENT:»g3rg3 gerg» -m DIR:exchange/»

Пример использования: «-M http -m CUSTOM-HEADER:»Cookie: SMCHALLENGE=YES»

Примечание: Поведением по умолчанию NTLM аутентификации является использование предоставляемого сервером доменного имени. Для направления на локальные аккаунты, а не домены, используйте опцию DOMAIN для указания на локальную систему: «-m DOMAIN:127.0.0.1».

imap

Доступные опции модуля:

  • TAG:? (По умолчанию: gerg)
  • AUTH:? (Тип аутентификации (LOGIN/PLAIN/NTLM). По умолчанию: автоматически)
  • DOMAIN:? [опционально]

Пример использования: «-M imap -m TAG:A0001 -m AUTH:PLAIN

Опция DOMAIN должна должным образом предоставлять указанный домен, независимо от типа аутентификации. Домен также можно указать через поля имя_пользователя, но формат меняется типом аутентификации.

Пример 1: NTLM аутентификация с опцией DOMAIN

Пример 2: NTLM аутентификация с доменом через имя_пользователя

* Если при использовании NTLM аутентификации домен не указан, то будет использоваться домен, предоставленный сервером.

Пример 3: Аутентификация LOGIN с доменом через имя_пользователя

mssql

ПРИМЕЧАНИЕ: MS-SQL Developer Edition или MSDE’s concurrent workload governor ограничивают вас не более чем пяти одновременными подключениями к серверу в любой один момент времени.

mysql

Доступные опции модуля:

  • PASS:? (PASSWORD*, HASH)
  • PASSWORD: Использовать нормальный пароль.
  • HASH: Использовать хеши а не пароли. (только не-SHA1 хеши)

(*) Значение по умолчанию

1: Обычная скучная проверка…

2: Использование MySQL хешей в старом стиле …

nntp

Пример использования: «-M nntp -U accounts.txt -p password»

pcanywhere

ПРИМЕЧАНИЕ: PcAnywhere позволяет только одно подключение за раз. Запуск нескольких потоков на одну цель может работать неправильно.

Доступные опции модуля:

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

Пример использования: «-M pcanywhere -m DOMAIN:FOODOM»

pop3

Доступные опции модуля:

  • MODE:? (NORMAL, AS400) [опционально]

Устанавливает режим для выявления ошибок.

  • AUTH:? (Тип аутентификации (USER/PLAIN/LOGIN/NTLM). По умолчанию: автоматически)

Модуль опросит службу, какие методы она принимает через «AUTH» запрос.

Поддерживаются методы аутентификации USER (простой текст), SASL PLAIN, SASL LOGIN и SASL NTLM.

AUTH USER — Добавляет домен к имени пользователя (например, user@domain.com).

AUTH NTLM — Обеспечивает указанный домен во время NTLM аутентификации. Поведение по умолчанию — использовать предоставленное сервером значение домена.

postgres

Доступные опции модуля:

Устанавливает имя целевой базы данных.

Пример использования: «-M postgres -m DB:some_db»

Доступные опции модуля:

Пример использования: «-M rdp»

*** Судя по всему, имеются проблемы с безопасностью потоков в библиотеке FreeRDP и/или этом модуле. ***

*** Рекомендуется избегать использование действующих одновременно хостов/пользователей (т.е. -T/-t).

Rsh — это служба, где нужно иметь доступ .rhosts/hosts.equiv с хоста источника. Пароли не имеют значения. Поэтому лучшим способом использовать этот модуль является единичный простой пароль и список пользователей, которые могут быть разрешены в .rhosts/hosts.equiv с вашего ресурса.

smbnt

Доступные опции модуля:

Опция устанавливает поле NetBIOS workgroup.

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

LOCAL: Проверить локальный аккаунт.

BOTH: Проверять оба. Это оставляет настройку поля workgroup пустой и затем пытается проверить учётные данные на хосте. Если аккаунт не существует локально на тестируемом хосте, тогда эти хосты запрашивают их доменный контроллер.

Опция позволяет вручную настроить домен для проверки. Используйте вместо GROUP.

PASSWORD: Использовать нормальный пароль.

HASH: Использовать NTLM хеш а не пароль.

MACHINE: Использовать NetBIOS имя машины как пароль.

Опция устанавливает уровень аутентификации LAN Manager.

Принудительный режим NetBIOS (отключает родной режим Win2000). Win2000 режим присутствует по умолчанию.

По умолчанию модуль тестирует TCP/445 с использованием родного Win2000. Если происходит неудача, модуль откатится до TCP/139 используя NetBIOS режим. Для тестирования только TCP/139, используйте следующее: medusa -M smbnt -m NETBIOS -n 139

(*) Значение по умолчанию

1: Нормальная скучная проверка…

2: Тестирование учётных данных домена на клиентской системе…

3: Тестирование каждых учётных данных из файла PwDump в отношении целевого домена через цель…

4: Тестирование каждого хеша из файла PwDump в отношении указанного локального пользователя на целе…

5: Тестирование индивидуального NTLM хеша…

Этот модуль выполняет и запросы аутентификации SMB (Session Setup AndX), и запросы общего подключения (Tree Connect AndX). Запросы общего подключения для дефолтных скрытых административных шар ADMIN$. Цель идентифицировать, имеют ли тестируемые учётные данные административные права на целевой системе. Посмотрите на следующие примеры.

smtp-vrfy

Доступные опции модуля:

Использовать команду HELO. По умолчанию: EHLO

Указать домен HELO/EHLO. По умолчанию: server.domain

Указывает адрес MAIL FROM. По умолчанию: doesnotexist@foofus.net

  • VERB:? (Verb/Команда: VRFY/EXPN/RCPT TO. По умолчанию: RCPT TO

*** ПРИМЕЧАНИЕ: Адрес целевого домена должен быть определён внутри парольного поля. ***

smtp

Доступные опции модуля:

Указывает EHLO приветствие.

  • AUTH:? (Тип аутентификации (PLAIN/LOGIN/NTLM). По умолчанию: автоматический)

Модуль сделает запрос на сервис о принимаемых методах через запрос «AUTH».

Поддерживаются метода аутентификации PLAIN, LOGIN и NTLM.

Опция DOMAIN должна надлежащим образом определять домен, независимо от типа аутентификации. Домен может быть предоставлен через поля имя_пользователя, но формат представления будет различаться в зависимости от типа аутентификации.

snmp

Доступные опции модуля:

Устанавливает количество секунд для ожидания UDP ответов (по умолчанию: 5 секунд).

Устанавливает количество микросекунд для ожидания между отправкой запросов (по умолчанию: 200 микросекунд).

Устанавливает версию SNMP клиента.

Устанавливает уровень доступа для тестирования с общей строкой (community string).

(*) Значение по умолчанию

Следует отметить, что при тестировании возможности записи (WRITE), этот модуль будет считывать текущее значение sysLocation и затем записывать это же значение назад в систему.

Поскольку SNMP — это основанный на UDP протокол, нет никакого подтверждения связи между передающим и принимающим объектам транспортного уровня. Из-за этой коммуникации без установления связи, мы знаем о существовании SNMP службы только в то время, когда мы отправляем верную общую строку (community string), и сервер отправляет ответ. Все другие результаты запросов не отправляют ответы. После завершения этого, мы ждём TIMEOUT секунд для любых запросов. Если мы получили в обратку какой-либо ответ, мы исследуем его, чтобы увидеть, какая общая строка оказалась успешным значением. Эта техника должна позволить быстрый брут-форсинг. Тем не менее, следует позаботиться о значениях TIMEOUT и SEND_DELAY чтобы избежать проблем с целевой службой или пропуском данных ответа.

Пример использования: «-M snmp -m TIMEOUT:2 -m ACCESS:WRITE»

Доступные опции модуля:

  • BANNER:? (Клиентский банер Libssh. По умолчанию SSH-2.0-MEDUSA.)

Пример использования: «-M ssh -m BANNER:SSH-2.0-FOOBAR»

Доступные опции модуля:

Устанавливает URL ветви для аутентификации. Например, svn://host/branch.

Пример использования: «-M svn -m BRANCH:test_project»

telnet

Доступные опции модуля:

  • MODE:? (NORMAL, AS400) [опциональный]

Устанавливает режим для обнаружения ошибок.

Пример использования: «-M telnet -m MODE:AS400 -U accounts.txt -p password»

vmauthd

Демон VMware Authentication прослушивает TCP порт 902 и может требовать (а может и нет) зашифрованное по SSL подключение. Этот модуль подключается к службе, не используя SSL, и если потребуется, автоматически переключится на SSL.

Доступные опции модуля:

Устанавливает максимально разрешённое время сна, когда сталкивается с задержкой VNC RealVNC направленной против брут-форса. Это значение в секундах, и если оно не установлено, то по умолчанию равно 60.

Устанавливает значение домена при проверке подлинности в отношении функции UltraVNC’s MS-Logon.

Некоторые версии VNC имеют встроенную функциональность против атаки грубой силой. RealVNC, например, позволяет 5 неудачных попыток, а затем включает 10 секундную задержку. Для каждой последовательности попыток, эта задержка удваивается. Судя по всему, UltraVNC позволяет 6 неверных попыток, а затем включает 10 секундную задержку между каждой попыткой. Этот модуль пытается идентифицировать эти ситуации и реагировать соответствующим образом, используя sleep(). Пользователь может установить предел сна параметром MAXSLEEP при брут-форсе RealVNC. При достижении этого значения, модуль завершит работу.

Следует отметить, что в настоящее время модуль поддерживает безпарольные и только-парольные VNC серверы. Дополнительно, он поддерживает функцию UltraVNC’s MS-Logon, которая может использоваться для обеспечения сквозной проверки подлинности в отношении локального домена и домена аккаунтов Windows. В случае базовых только-парольных VNC, обеспечивает произвольные значения имени пользователя.

Пример использования: «-M vnc -m MAXSLEEP:120 -m DOMAIN:FOOFUSDOM»

web-form

Доступные опции модуля:

  • USER-AGENT:? Значение пользовательского агента (User-agent). По умолчанию: «I’m not Mozilla, I’m Ming Mong».
  • FORM:? Целевая форма для запроса. По умолчанию: «/»
  • DENY-SIGNAL:? Сообщение неудачной аутентификации. Попытка помечается как успешная, если этот текст отсутствует в ответе сервера. По умолчанию: «Login incorrect»
  • CUSTOM-HEADER:? Пользовательский HTTP заголовок.

Можно указать больше заголовков, используя эту опцию несколько раз.

Методы и поля для отправки веб-службе. Валидными методами являются GET и POST. Действительные данные, которые отправляет форма, также должны быть определены здесь. Особенно поля имя_пользователя и пароль. Поле имя_пользователя должно быть первым, за ним следует поле пароля. По умолчанию: «post?username=&password=»

Пример использования: «-M web-form -m USER-AGENT:»g3rg3 gerg» -m FORM:»webmail/index.php» -m DENY-SIGNAL:»deny!» -m FORM-DATA:»post?user=&pass=&submit=True» -m CUSTOM-HEADER:»Cookie: name=value»

wrapper

Цель модуля wrapper (обёртка) позволить пользователям выполнять произвольные скрипты и задействовать преимущества Medusa по управлению хостами/пользователями/паролями. Образцы скриптов включены в директорию wrapper: https://github.com/jmk-foofus/medusa/tree/master/src/modsrc/wrapper

Начальная цель этого модуля была протестировать RDP сервера используя rdesktop.

Следующий пример показывает один из способов использования rdesktop с модулем wrapper:

Один из возможных методов спрятать графический вывод от rdesktop:

Доступные опции модуля:

Опция устанавливает тип скрипта, который будет вызван модулем, образцы скриптов: https://github.com/jmk-foofus/medusa/tree/master/src/modsrc/wrapper

SINGLE: Скрипт ожидает, что весь пользовательский ввод поступает с исходной командной строки.

STDIN: Информация о хосте и пользователе передаётся в скрипт через командную строку, пароли для тестирования передаются скрипту через стандартный ввод (STDIN).

Опция для настройки пути до исполнимого файла.

Опция для настройки исполнимых параметров. Могут использоваться следующие подстановки:

Пример использования: ‘-M wrapper -m TYPE:SINGLE -m PROG:./foo.pl -m ARGS:»-h %H -u %U -p %P»‘

Пример использования: ‘-M wrapper -m TYPE:STDIN -m PROG:./bar.pl -m ARGS:»–host %H –user %U»‘

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

Следующая команда инструктирует Medusa протестировать все пароли, имеющиеся в passwords.txt в отношении одного пользователя (administrator) на хосте 192.168.0.20 через службу SMB. Опции «-e ns» инструктируют Medusa дополнительно проверять, имеет ли административный аккаунт пустой пароль или является ли пароль равным имени пользователя (administrator).

Ниже командная строка демонстрирует, как выполнить несколько параллельных операций в Medusa. Здесь по меньшей мере 20 хостов и 10 пользователей тестируются одновременна. Опция «-L» инструктирует Medusa распараллелить пользователей. Это означает, что каждый из 10 потоков нацеленных на хост проверяет уникального пользователя.

Medusa позволяет использовать комбо файлы в которых данные структурированы в виде хост/имя_пользователя/пароль. Комбо файл можно указать используя опцию «-C». Файл должен содержать одну запись на строку и иметь разделённые двоеточием значения в формате хост:пользователь:пароль. Если какое-либо из этих полей является пустым, соответствующая информация должна быть предоставлена в глобальном значении или как список в файле. Medusa выполнить начальную проверку параметров, основываясь на содержимом первой строки файла.

Следующие комбинации возможны в комбо файле:

  • host:username:password
  • host:username:
  • host::
  • :username:password
  • :username:
  • ::password
  • host::password

Следующие пример проверит каждую запись в combo.txt

Следующий пример проверит каждую запись в файле combo.txt в отношении списка целей из hosts.txt

Medusa также поддерживает использование файлов PwDump как комбо файлов. Формат этих файлов должен быть user:id:lm:ntlm. Мы ищем ‘. ‘ в конце первой строки для определения, содержит ли этот файл вывод PwDump.

Возобновление сканирования Medusa. Medusa имеет возможность возобновить сканирвоание, которое было прервано сигналом SIGINT (т.е. CTRL-C). Например:

Далее краткое описание карты возобновления:

Установка Medusa

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

Установка в BlackArch

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

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

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

Источник

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

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

  • Tell me more для windows 7
  • Teleprom dlja android i windows
  • Telemetry windows 10 что это
  • Telegram русский язык для windows phone
  • Telegram русификатор для windows phone