Responder

Описание Responder

Responder это инструмент для выполнения атаки человек-посередине в отношении методов аутентификации в Windows. Эта программа включает в себя травитель LLMNR, NBT-NS и MDNS благодаря которому перенаправляется трафик с запросами и хешами аутентификации. Также в программу встроены жульнические серверы аутентификации HTTP/SMB/MSSQL/FTP/LDAP, которые поддерживают такие методы аутентификации как NTLMv1/NTLMv2/LMv2, Extended Security NTLMSSP и базовую HTTP аутентификацию, для которых Responder выполняет роль ретранслятора.

Responder это LLMNR, NBT-NS и MDNS poisoner (травитель). Он будет отвечать на определённые запросы NBT-NS (NetBIOS Name Service (Сервис Имён)) основываясь на их суффиксе имён. По умолчанию инструмент будет отвечать только на запросы File Server Service (службы файлового сервера) работу которого обеспечивает протокол SMB.

Идея здесь в том, чтобы наши ответы носили целевой характер, а мы были менее заметны в сети. Это также помогает гарантировать, что мы не нарушим нормальное поведение NBT-NS. Если вы хотите отвечать на запросы суффикса имени Workstation Service (сервиса рабочей станции), то вы можете в строке команды установить опцию -r.

Функции Responder

Встроенный сервер аутентификации SMB.

По умолчанию поддержка хешей NTLMv1, NTLMv2 с Расширенной Безопасностью NTLMSSP. Успешно протестировано с Windows 95 до Server 2012 RC, Samba и Mac OSX Lion. Пароль в открытом виде если поддерживается для NT4, и понижение хеширования LM когда установлена опция --lm. SMBv2 также был реализован и поддерживается по умолчанию.

Встроенный сервер аутентификации MSSQL.

Чтобы перенаправить SQL аутентификацию на этот инструмент, вам понадобится установить опцию -r (NBT-NS запросы для преобразования SQL Server используют суффикс имени Workstation Service (службы рабочей станции)) для систем старше чем Windows Vista (LLMNR будет использоваться для Vista и выше). Этот сервер поддерживает хеши NTLMv1, LMv2. Эта функциональность была успешно протестирована на Windows SQL Server 2005 и 2008.

Встроенный сервер аутентификации HTTP.

Для перенаправления HTTP аутентификации на этот инструмент, вам понадобится установить опцию -r для Windows версии старше чем Vista (NBT-NS запросы для преобразований сервера HTTP отправляются с использованием суффикса имени Workstation Service (службы рабочей станции)). Для Vista и выше, будет использоваться LLMNR. Этот сервер поддерживает NTLMv1, NTLMv2 хеши и Базовую аутентификацию (Basic Authentication). Этот сервер был успешно протестирован на IE с 6 версии по IE 10 версии, Firefox, Chrome, Safari.

Примечание: этот модуль также работает для аутентификации WebDav NTLM выпущенной от клиентов Windows WebDav (WebClient). Теперь вы можете отправить любой файл жертве.

Встроенный сервер аутентификации HTTPS.

Как и предыдущий. Папка certs/ содержит 2 предустановленных ключа, включая самодельный приватный ключ. Это сделано специально, в целях того, чтобы Responder работал из коробки. В этой же папке вы найдёте скрипт gen-self-signed-cert.sh, который был добавлен на тот случай, если вы захотите сгенерировать свою собственную самоподписанную пару ключей.

Встроенный сервер аутентификации LDAP.

Чтобы перенаправить LDAP аутентификацию на этот инструмент, вам нужно установить опцию -r для версий Windows версии старше чем Vista (NBT-NS запросы для преобразований сервера HTTP отправляются с использованием суффикса имени Workstation Service (службы рабочей станции)). Для Vista и выше, будет использоваться LLMNR. Этот сервер поддерживает NTLMSSP хеши и Simple Authentication )аутентификацию в виде простого текста). Этот сервер был успешно протестирован на Windows Support tool "ldp" и LdapAdmin.

Встроенные серверы аутентификации FTP, POP3, IMAP, SMTP.

Этот модуль соберёт учётные данные в виде простого текста.

Встроенный DNS сервер.

Этот сервер ответит записями A. Это очень полезно при сочетании с ARP спуфингом.

Встроенный прокси сервер WPAD.

Этот модуль будет захватывать все HTTP запросы от любого запущенного в сети Internet Explorer если у они имеют включённые "Auto-detect settings" (настройки автоматического определения прокси). Этот модуль крайне эффективный. Вы можете настроить ваш собственный скрипт в Responder.conf и внедрить HTML код в ответы сервера. Смотрите файл Responder.conf.

Слушатель браузеров (Browser Listener)

Этот модуль позволяет найти PDC в невидимом режиме.

Снятие отпечатков (Fingerprinting)

Когда используется опция -f, Responder будет снимать отпечатки с любого хоста, выполнившего LLMNR/NBT-NS запрос. В режиме снятия отпечатков все модули захвата продолжают работать.

Icmp редирект

python tools/Icmp-Redirect.py

Для атаки человек-посередине (MITM) на Windows XP/2003 и более ранних членах Домена. Эта атака в комбинации с модулем DNS является весьма эффективный.

Жульнический DHCP

python tools/DHCP.py

DHCP Inform Spoofing. Позволяет вам сделать так, что реальный DHCP сервер выдаёт IP и затем отправляет DHCP Inform ответ для установки вам IP адреса как главного DNS сервера и вашего собственного WPAD URL.

Режим анализа.

Этот модуль позволяет вам видеть NBT-NS, BROWSER, LLMNR, DNS запросы в сети без их травления какими либо ответами. Также вы можете пассивно составить карту доменов, серверов MSSQL и рабочих станций, увидеть, будет ли атака ICMP Редиректы иметь успех в вашей сети.

Домашняя страница: https://github.com/lgandx/Responder

Автор: Laurent Gaffie

Лицензия: GPLv3

Справка по Responder

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

python Responder.py ОПЦИИ

Опции можно записывать как по одной:

python Responder.py -I eth0 -w -r -f

так и компоновать вместе:

python Responder.py -I eth0 -wrf

Опции:

  --version             показать номер версии программы и выйти
  -h, --help            показать сообщение справки и выйти
  -A, --analyze         Режим анализа. Эта опция позволяет вам видеть NBT-NS,
                        BROWSER, LLMNR запросы без фальшивых ответов на них.
  -I eth0, --interface=eth0
                        Сетевой интерфейс для использования, вы можете использовать 'ALL'
                        чтобы выбрать все интерфейсы
  -i 10.0.0.21, --ip=10.0.0.21
                        Локальный IP для использования (только для OSX)
  -e 10.0.0.22, --externalip=10.0.0.22
                        Травить все запросы с другого IP адреса нежели
                        адрес Responder'а.
  -b, --basic           Вернуть Basic HTTP аутентификацию. По умолчанию: NTLM
  -r, --wredir          Включить ответы для запросов суффиксов netbios wredir.
                        Ответы на wredir весьма вероятно поломают всё
                        в сети. По умолчанию: False
  -d, --NBTNSdomain     Включить ответы для запросов суффиксов домена netbios.
                        Ответ на доменные суффиксы весьма вероятно поломают всё
                        в сети. По умолчанию: False
  -f, --fingerprint     Эта опция включает сбор отпечатков (информации) о хостах,
                        отправляющих запросы NBT-NS или LLMNR.
  -w, --wpad            Запустить жульнический прокси сервер WPAD. Значением
                        по умолчанию является: False
  -u UPSTREAM_PROXY, --upstream-proxy=UPSTREAM_PROXY
                        Вышестоящий HTTP прокси используемый жульническим WPAD 
                        прокси для исходящих запросов (формат: хост:порт)
  -F, --ForceWpadAuth   Принудительная NTLM/Basic аутентификация при получении файла wpad.dat
                        retrieval. Это может привести к появлению окон запроса входа. По умолчанию:
                        False
  -P, --ProxyAuth       Принудительная NTLM (прозрачная)/Basic (через окно входа)
                        аутентификация для прокси. WPAD не обязательно должен быть
                        ON. Эта опция крайне эффективна когда комбинируется с
                        -r. По умолчанию: False
  --lm                  Принудительное понижение хеша LM для Windows XP/2003 и
                        более ранних. По умолчанию: False
  -v, --verbose         Увеличить вербальность.

Справка по responder-multirelay

Для лучших результатов используйте этот скрипт в сочетании с responder. Убедитесь, что в файле Responder.conf значения SMB и HTTP установлены на OFF.

Этот инструмент прослушивает на TCP портах 80, 3128 и 445.

Для оптимальных результатов, запустите Responder только с этими двумя опциями: -rv

Избегайте использовать команды которые скорее всего вызовут приглашение ввода информации, такие как net use и т. д. Если вы сделали так, используйте taskkill (как system) для закрытия этого процесса.

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

python MultiRelay.py ОПЦИИ

Опции:

  --version             показать номер версии программы и выйти
  -h, --help            показать сообщение справки и выйти
  -t 10.20.30.45        Целевой сервер для SMB ретранслятора.
  -p 8081               Дополнительный порт для прослушивания, он будет ретранслятором для
                        входящих пакетов прокси, http и webdav.
  -u, --UserToRelay     Пользователи для ретранслирования. Используйте '-u ALL' для ретрансляции всех пользователей.
  -c whoami, --command=whoami
                        Единичная команда для запуска (скриптование)
  -d, --dump            Дамп хешей (скриптование)

Обязательными опциями являются -t и -u.

Примеры использования:

python MultiRelay.py -t 10.20.30.40 -u Administrator lgandx admin
python MultiRelay.py -t 10.20.30.40 -u ALL

Доступные после запуска интерактивные команды:

dump

Извлечь базу данных SAM и напечатать хеши.

regdump

Дамп ключа регистра HKLM (например: regdump SYSTEM)

read ПУТЬ_ДО_ФАЙЛА

Прочитать файл (например: read /windows/win.ini)

get ПУТЬ_ДО_ФАЙЛА

Загрузить файл (например: get users/administrator/desktop/password.txt)

delete ПУТЬ_ДО_ФАЙЛА

Удалить файл (например: delete /windows/temp/executable.exe)

upload ПУТЬ_ДО_ФАЙЛА

Выгрузить локальный файл (например: upload /home/user/bk.exe), файлы будут выгружены в \\windows\\temp\\

runas КОМАНДА

Запустить КОМАНДУ как текущий выполнивший вход пользователь. (например: runas whoami)

scan /24

Сканировать (используя SMB) это /24 или /16 для поиска хостов для пивотинга

pivot IP адрес

Подключиться к другому хосту (например: pivot 10.0.0.12)

mimi КОМАНДА

Запустить удалённую Mimikatz 64 битную команду (например: mimi coffee)

mimi32 КОМАНДА

Запустить удалённую Mimikatz 32 битную команду (например: mimi coffee)

lcmd КОМАНДА

Запустить локальную команду и отобразить результат в оболочке MultiRelay (например: lcmd ifconfig)

help

Напечатать справку.

exit

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

Если вы хотите выйти, напишите exit, а затем используйте CTRL-c

Любые другие команды, отличные от вышеприведённых, будут выполнены на цели от SYSTEM.

Справка по responder-findsmb2uptime

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

responder-findsmb2uptime 10.1.3.37

или:

responder-findsmb2uptime 10.1.3.37/24

Справка по responder-runfinger

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

python RunFinger.py -i 10.10.10.224

или:

python RunFinger.py -i 10.10.10.0/24

Опции:

  --version             показать номер версии программы и выйти
  -h, --help            показать справку и выйти
  -i 10.10.10.224, --ip=10.10.10.224
                        Целевой IP адрес или подсеть класса C
  -g, --grep            Вывод в формате для поиска по регулярным выражениям программой grep

Справка по responder-dhcp

По умолчанию этот скрипт будет внедрять новый DNS/WPAD сервер в машины с Windows <= XP/2003.

Для внедрения DNS сервера/домена/маршрута на Windows >= Vista и Linux, используйте -R (может быть шумным).

Используйте настройку RespondTo в файле Responder.conf для атаки только на определённые цели.

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

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

python DHCP.py -I eth0 -d pwned.com -p 10.20.30.40 -s 10.20.30.1 -r 10.20.40.1

Опции:

  -h, --help            показать справку и выйти
  -I eth0, --interface=eth0
                        Имя интерфейса для использования, например: eth0
  -d pwned.com, --dnsname=pwned.com
                        Имя DNS для инъекции, если вы не хотите делать инъекцию DNS
                        сервера, то укажите оригинальный.
  -r 10.20.1.1, --router=10.20.1.1
                        IP адрес роутера или ваш если вы хотите
                        перехватывать трафик.
  -p 10.20.1.10, --primary=10.20.1.10
                        IP адрес оригинального первичного DNS сервера или
                        ваш
  -s 10.20.1.11, --secondary=10.20.1.11
                        IP адрес оригинального вторичного DNS сервера или
                        ваш
  -n 255.255.255.0, --netmask=255.255.255.0
                        Сетевая маска этой сети
  -w "http://wpadsrv/wpad.dat", --wpadserver="http://wpadsrv/wpad.dat"
                        Строка вашего WPAD сервера
  -S                    Спуфить IP адрес роутера
  -R                    Отвечать на DHCP запросы, инъекция клиентов Linux (очень
                        шумный, это отправляется на 255.255.255.255)

Справка по responder-icmp-redirect

Эта утилита в сочетании с Responder полезна, когда вы сидите в сети на базе Windows.

Большинство дистрибутивов Linux по умолчанию отбрасывают перенаправления ICMP.

Обратите внимание, что если целью является Windows, отравление будет длиться только в течение 10 минут, вы можете повторно отравить цель, запустив эту утилиту снова

Если вы хотите отвечать на трафик, например, на DNS запросы, которые исходят от вашей цели, запустите как root команду вида:

sudo iptables -A OUTPUT -p ICMP -j DROP && iptables -t nat -A PREROUTING -p udp --dst ЦЕЛЬ_НАЗНАЧЕНИЯ --dport 53 -j DNAT --to-destination ЭТОТ_ХОСТ:53

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

python Icmp-Redirect.py -I eth0 -i 10.20.30.40 -g 10.20.30.254 -t 10.20.30.48 -r 10.20.40.1

Опции:

  -h, --help            показать справку и выйти
  -i 10.20.30.40, --ip=10.20.30.40
                        IP адрес на который перенаправлять трафик. (обычно
                        ваш)
  -g 10.20.30.254, --gateway=10.20.30.254
                        IP адрес исходного шлюза (чтобы узнать где
                        шлюз, выполните команду 'route -n'
  -t 10.20.30.48, --target=10.20.30.48
                        IP адрес цели
  -r 10.20.40.1, --route=10.20.40.1
                        IP адрес, куда цель отправляет трафик, например: DNS
                        сервер. Должен быть в другой подсети.
  -s 10.20.40.1, --secondaryroute=10.20.40.1
                        IP адрес, куда цель отправляет трафик, например: вторичный
                        DNS сервер. Должен быть в другой подсети.
  -I eth0, --interface=eth0
                        Имя интерфейса для использования, пример: eth0
  -a 10.20.30.40, --alternate=10.20.30.40
                        Альтернативный шлюз, установите эту опцию если вы хотите
                        перенаправить трафик жертвы на другой, отличный от вашего хоста

Справка по responder-dumphash

Выводит список всех захваченных хешей. У программы нет опций, но для доступа к файлу дампа DumpNTLMv2.txt нужно запускать с правами root:

sudo responder-dumphash

Справка по responder-report

Генерирует отчёт на основе записанных журналов активности responder.

Программа запускается без опций:

responder-report

Справка по FindSMB2UPTime

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

python ./FindSMB2UPTime.py 10.1.3.37

или:

python ./FindSMB2UPTime.py 10.1.3.37/24

Справка по FindSQLSrv

Нет информации.

Справка по responder-BrowserListener

Нет информации.

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

Страница man отсутствует.

Хеши

Все хеши печатаются в стандартный вывод и сбрасываются в уникальный файл совместимый с John Jumbo в следующем формате:

(ИМЯ_МОДУЛЯ)-(ТИП_ХЕША)-(IP_КЛИЕНТА).txt

Файлы журналов располагаются в папке "logs/". Хеши будут сохранены и напечатаны только один раз на одного пользователя на один тип хеша. Будет выведен каждый хеш, если вы используете Вербальный режим, то есть если вы указали опцию -v.

Вся активность будет записана в файл Responder-Session.log

Режим анализа запишет свой журнал в Analyze-Session.log

Травление будет записано в файл Poisoners-Session.log

Дополнительно все захваченные хеши сохраняются в базе данных SQLite, которую вы можете настроить в Responder.conf

Особенности запуска

Этот инструмент прослушивает несколько портов: UDP 137, UDP 138, UDP 53, UDP/TCP 389,TCP 1433, UDP 1434, TCP 80, TCP 139, TCP 445, TCP 21, TCP 3141,TCP 25, TCP 110, TCP 587, TCP 3128 и Multicast UDP 5553.

Если на вашей системе запущена Samba, остановите smbd и nmbd и все другие службы, прослушивающие указанные порты.

Для пользователей Ubuntu

Откройте для редактирования файл /etc/NetworkManager/NetworkManager.conf и закомментируйте строку:

dns=dnsmasq

Затем остановите dnsmasq командой:

sudo killall dnsmasq -9

Общие замечания

Любой жульнический сервер можно отключить в Responder.conf.

Этот инструмент не предназначен для работы на Windows.

Замечания для пользователей OSX

Responder должен быть запущен с указанным IP адресом при флаге -i (например -i ВАШ_IP_АДРЕС). В OSX нет поддержки для привязки к указанному интерфейсу. Использование -i en1 не работает. Также для лучших результатов с Responder, запустите следующее как root:

launchctl unload /System/Library/LaunchDaemons/com.apple.Kerberos.kdc.plist
launchctl unload /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
launchctl unload /System/Library/LaunchDaemons/com.apple.smbd.plist
launchctl unload /System/Library/LaunchDaemons/com.apple.netbiosd.plist

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

Запустить в Режиме анализа (-A) с подробным выводом (-v) на указанном сетевом интерфейсе (-I):

sudo responder -I wlo1 -v -A

Запустить атаку на указанном сетевом интерфейсе (-I), включить ответы для запросов суффиксов netbios wredir (-r), включить принудительную NTLM (прозрачная)/Basic (через окно входа) аутентификацию для прокси (-P), включить сбор отпечатков (информации) о хостах, отправляющих запросы NBT-NS или LLMNR (-f), а также включить подробный вывод (-v):

sudo responder -I wlo1 -rPvf

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

responder-report

Вывести перехваченные хеши:

sudo responder-dumphash

Установка Responder

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

Установка в BlackArch

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

sudo pacman -S responder responder-multirelay

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

Скриншоты Responder

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

Близкие программы:

  • LANs (71%)
  • Intercepter-NG (55.9%)
  • MITMf (55.8%)
  • DNSChef (53.1%)
  • dns2proxy (52.3%)
  • BruteX (RANDOM - 0.3%)
  • Рекомендуется Вам:

    Comments are Closed