Цель лаборатории DanderSpritz — позволить исследователям и защитникам быстро развернуть полнофункциональную версию DanderSpritz — набора инструментов постэксплуатации Equation Group — а также контроллер домена Windows Server 2008 и клиент в качестве целей. На целевой машине Windows установлены некоторые инструменты реверс-инжиниринга, которые оказались полезными при изучении DanderSpritz и его возможностей.
Веб-сайт, созданный для документирования возможностей и инструментов DanderSpritz: https://danderspritz.com
ПРИМЕЧАНИЕ: Эта лаборатория никак не защищена (она намеренно уязвима) и работает с учётными данными vagrant по умолчанию. Пожалуйста, не подключайте и не мостите её к сетям, которые для вас важны.
Требования
20+ ГБ свободного места на диске
8+ ГБ ОЗУ
20 ГБ трафика (для загрузки ISO, обновлений, сервис-паков и т.д.)
Virtualbox (VMWare Fusion/Workstation будут доступны позже)
Запуск лаборатории DanderSpritz
DanderSpritz использует Packer, Vagrant и плагин Vagrant-reload для установки и настройки лаборатории с нуля. Packer загрузит ISO-образы Windows непосредственно с сайта Microsoft и установит пробные версии программного обеспечения для использования в исследованиях.
Клонируйте этот репозиторий на свою машину
git clone [email protected]:francisck/DanderSpritz_lab.git
Убедитесь, что у вас установлен плагин Vagrant-reload
vagrant plugin install vagrant-reload
Чтобы загрузить ISO и выполнить сборку Vagrant-боксов, выполните следующую команду:
packer build danderspritz_lab.json
После сборки Vagrant-боксов запустите виртуальные машины и позвольте им завершить дополнительную настройку:
vagrant up
Создание проекта FuzzBunch
Запустите командную строку Windows (cmd) и выполните следующее:
D:\python fb.py
Установите адрес цели по умолчанию: 192.168.40.3
Установите адрес обратного вызова по умолчанию: 192.168.40.4
Не используйте перенаправление (на первых порах)
Оставьте каталог журналов по умолчанию
Создайте новый проект (вариант 0)
Дайте имя новому проекту
Оставьте каталог журналов по умолчанию
Эксплуатация целевой машины
Выполните следующую команду для эксплуатации машины с помощью EternalBlue
use eternalblue
Выберите все параметры по умолчанию, кроме механизма доставки. Используйте "FB" (традиционное развёртывание) в качестве механизма доставки
После успешного выполнения EternalBlue настройте danderspritz и peddlecheap
Настройка и запуск DanderSpritz
Запустите ещё одну командную строку Windows (cmd) и выполните следующее:
D:\python configure_lp
Разрешите Java через брандмауэр
Выберите browse рядом с "Лог-директория" и выберите имя проекта FuzzBunch, который вы создали
Нажмите "Go"
Подготовка PeddleCheap (настройка импланта)
В консоли DanderSpritz выполните следующую команду:
pc_prep
Выберите стандартный payload sharedlib для x64-winnt уровня 3
5
Не выбирайте расширенные настройки
Выберите немедленный обратный вызов
Используйте ID PC по умолчанию (0)
Выберите "Да" на вопрос "Хотите ли вы слушать?"
Не изменяйте порты прослушивания
Оставьте адрес обратного вызова по умолчанию (127.0.0.1)
Не изменяйте имя исполняемого файла
Используйте ключ по умолчанию (вариант 2)
Проверьте корректность конфигурации PeddleCheap
Не настраивайте с помощью FC (felonycrowbar)
Скопируйте путь к сконфигурированному бинарному файлу:
Доставка импланта (peddlecheap) через бэкдор DoublePulsar:
В исходном окне Fuzzbunch введите:
use doublepulsar
Выберите "да", когда вас спросят, хотите ли вы получать запросы на ввод переменных
Выберите все параметры переменных по умолчанию, кроме архитектуры цели (выберите вариант 1)
1) x64 x64 64-bit
Выберите функцию "RunDLL" (вариант 2)
2) RunDLL Использовать APC для внедрения DLL в пользовательский процесс.
Оставьте все остальные параметры по умолчанию и выберите "Да", когда вас спросят, хотите ли вы выполнить плагин
Вы должны увидеть "Doublepulsar succeeded"
Подключение к импланту PeddleCheap с помощью DanderSpritz
В DanderSpritz выберите "PeddleCheap" в верхней части экрана
Выберите ключ "default" из выпадающего меню ключей
Цель этого проекта — позволить исследователям безопасности легко построить и настроить полнофункциональную лабораторию DanderSpritz для реверс-инжиниринга и тестирования.
Не запускайте это против каких-либо целей за пределами этой лаборатории.
Не используйте это для "красных командных учений"
Делайте вносите свой вклад в сообщество, публикуя результаты исследований
После того как вы один раз запустили packer, повторно запускать его не нужно. Vagrant-боксы будут доступны для перестроения, уничтожения и перезапуска вашей лаборатории.
Ниже приведены некоторые полезные команды, которые могут пригодиться при работе с лабораторией:
Основы Vagrant
Запустить все хосты лаборатории DanderSprotz: vagrant up
Перезапустить конкретный хост и повторно выполнить процесс настройки: vagrant reload <имя_хоста> --provision
Уничтожить конкретный хост: vagrant destroy <имя_хоста>
Уничтожить всю среду лаборатории Danderspritz: vagrant destroy
Сделать снимок машины: vagrant snapshot save <имя_хоста> <имя_снимка>
Восстановить снимок машины: vagrant snapshot restore <имя_хоста> <имя_снимка>
Проверить статус каждого хоста: vagrant status
Приостановить среду лаборатории: vagrant suspend
Возобновить среду лаборатории: vagrant resume
Продление срока действия истекших лицензий Windows
Если вы столкнулись с проблемой истечения пробной лицензии, вы можете продлить её до 3 раз (получив 90 дней Windows-лицензии), выполнив следующую команду в командной строке с правами администратора:
root@kitploit:~
`slmgr /rearm`
После этого потребуется перезагрузка машины.
Информация о лаборатории
Схема лаборатории
Дополнительная информация о лаборатории
Имя домена: windomain.local
Учётные данные администратора (все машины): vagrant:vagrant
DC (контроллер домена): 192.168.40.2/24
Цель: 192.168.40.3/24
DanderSpritz: 192.168.40.4/24
Хосты лаборатории
DC — контроллер домена Windows 2008 R2
Контроллер домена Windows для Windomain.local
GPO конфигурации WEF-сервера
GPO ведения журналов PowerShell
Расширенная политика аудита Windows GPO
Target — рабочая станция Windows 7
Имитирует целевую рабочую станцию / машину
Присоединена к домену Windows AD Windomain.local
Предустановлены некоторые инструменты реверсинга / визуализации
Доступен Chocolatey (с репозиторием FireEye Flare REPO) для дальнейшей установки инструментов
DanderSpritz Box — Windows 10
Предустановлены DanderSpritz и Fuzzbunch
Установленные инструменты на целевой машине (Windows 7 SP1)
Sysmon
Sysinternal Tools (Procmon, TCPview и др.)
API Monitor
InfoPe
HxD
PEView
Windbg
WireShark
Binary Ninja
HashCalc
IDA 7 Free
Ollydbg
Расширенный аудит GPO
Ведение журналов PowerShell GPO
События Windows пересылаются на контроллер домена (WEC)
Авторы / Ресурсы
Значительная часть этого кода заимствована и адаптирована из проекта Chris LongDetectionLab, а также из packer-windows и adfs2 от Stefan Scherer на Github. Огромное спасибо всем, кто внес свой код, сделав такие проекты проще (или даже возможными).