##

3. Запустите cmd.exe от имени Администратора
4. Перейдите в распакованную папку программы и запустите APTSimulator.bat
Пакетный скрипт извлекает инструменты и оболочки из зашифрованного архива 7z во время выполнения. Не загружайте мастер-репозиторий с помощью кнопки «download as ZIP». Вместо этого используйте официальный релиз из раздела релизы.
APT Симулятор содержит модуль с именем «AVExcluder», который пытается зарегистрировать используемый `%APTDIR%` как исключение из антивирусного ПО в типичных антивирусных решениях. Поскольку у меня нет доступа ко всем антивирусным продуктам на рынке, пожалуйста, сообщайте об ошибках или добавляйте новые исключения в виде пул-реквестов.
Начиная с версии 0.4 стало очень легко расширять тестовые наборы, просто добавив один `.bat`-файл в одну из папок категорий тестовых наборов.
Например, если вы хотите написать простой тестовый случай для «повышения привилегий», использующий инструмент с именем «privesc.exe», клонируйте репозиторий и сделайте следующее:
1. Добавьте свой инструмент в папку `toolset`
2. Напишите новый пакетный скрипт `privesc-1.bat` и добавьте его в папку `./test-sets/privilege-escalation`
4. Добавьте свой тестовый случай в таблицу и раздел тестовых наборов в README.md
Если ваш скрипт включает в себя инструмент, веб-оболочку, вспомогательный или выходной файл, поместите их в папки `./toolset` или `./workfiles`. Запуск скрипта сборки `build_pack.bat` включит их в зашифрованные архивы `enc-toolset.7z` и `enc-files.7z`.
"%ZIP%" e -p%PASS% %TOOLARCH% -aoa -o%APTDIR% toolset\tool.exe > NUL
"%ZIP%" e -p%PASS% %FILEARCH% -aoa -o%APTDIR% workfile\tool-output.txt > NUL
В следующей таблице показаны различные тестовые случаи и ожидаемые результаты обнаружения.
* NIDS = Система обнаружения вторжений в сеть
* EDR = Обнаружение и реагирование на конечных точках
Теперь вы должны иметь возможность находить события в вашей системе мониторинга безопасности (SIEM, EDR и т.д.) по следующим ключевым словам:
* `334485` (используется в активности Get System)
Примечание: Нет мониторинга именованных каналов? Вы можете использовать Sysmon + эту конфигурацию и это правило Sigma для начала.
* `b6a1458f396` (множественные события: новая регистрация службы и создание процесса)
Примечание: Нет событий? Вы можете использовать это правило Sigma для начала.
* `
* `
* сбрасывает вывод pwdump в рабочий каталог
* сбрасывает список каталогов в рабочий каталог
* Использует Curl для доступа к известным C2-серверам
* Выполняет запросы к нескольким известным C2-адресам, чтобы вызвать DNS-запросы и занести адреса в локальный DNS-кэш
* Использует вредоносные user-agent для доступа к веб-сайтам
* Сбрасывает альтернативу PowerShell Ncat в рабочий каталог и запускает её для обратного подключения к известному домену атакующего
* Использует WMIBackdoor Мэтта Грэбера для связи с C2 через определённые интервалы
* Сбрасывает память процесса LSASS в подозрительную папку
* Сбрасывает вывод Mimikatz в рабочий каталог (запасной вариант, если другие варианты выполнения не сработали)
* Запускает специальную версию Mimikatz и выводит результат в рабочий каталог
* Запускает Invoke-Mimikatz в памяти (загрузка с github, отражение)
* Создаёт записи журнала событий Windows, которые выглядят так, как будто был выполнен WCE
#### Активация гостевой учетной записи администратора
* Добавляет гостевого пользователя в локальную группу администраторов
* Сбрасывает подозрительный исполняемый файл с именем системного файла (svchost.exe) в папку %PUBLIC%
* Запускает эту подозрительную программу в папке %PUBLIC%
* Добавляет записи в локальный файл hosts (блокировщик обновлений, записи, вызванные вредоносным ПО)
* Запускает обфусцированный JavaScript-код с помощью wscript.exe и запускает декодированную привязку оболочки на порту 1234/tcp
* Сбрасывает замаскированный RAR-файл с расширением JPG
* Сканирует 3 частных IP-адреса класса C и выводит результат в рабочий каталог
* Выполняет команды, используемые атакующими для получения информации о целевой системе
* Сбрасывает переименованную версию PsExec в рабочий каталог
* Запускает PsExec для запуска командной строки в контексте LOCAL_SYSTEM
* Сбрасывает инструмент удалённого выполнения в рабочий каталог
* Создаёт at-задачу, которая запускает Mimikatz и сбрасывает учётные данные в файл
* Создаёт подозрительную новую запись ключа RUN, которая выводит результат «net user» в файл
* Создаёт запланированную задачу, которая запускает Mimikatz и выводит результат в файл
* Создаёт запланированную задачу через XML-файл с помощью Invoke-SchtasksBackdoor.ps1
* Пытается заменить sethc.exe на cmd.exe (создаётся резервная копия)
* Пытается зарегистрировать cmd.exe как отладчик для sethc.exe
* Создаёт стандартный корневой каталог веб-сайта
* Сбрасывает стандартные веб-оболочки в этот каталог
* Сбрасывает GIF-обфусцированную веб-оболочку в этот каталог
#### Постоянство через UserInitMprLogonScript
* Использование ключа UserInitMprLogonScript для обеспечения постоянства
* Использует WMIBackdoor Мэтта Грэбера для завершения локального procexp64.exe при его запуске
Начиная с версии 0.8.0 APT Симулятор включает пакетный режим от @juju4, который позволяет запускать его в скриптовом режиме, например, через Ansible
Этот репозиторий содержит инструменты и исполняемые файлы, которые могут нанести вред целостности и стабильности вашей системы. Используйте их только на непродуктивных тестовых или демонстрационных системах. Создайте снимок системы перед началом. В противном случае вам придётся вручную удалять все изменения, что является утомительной задачей.
