Мифический агент для Windows, написанный на C
⚠️ Xenon находится на ранней стадии выпуска. Он не является OPSEC-безопасным и может содержать проблемы с памятью, вызывающие сбои. Тщательно протестируйте его, если планируете использовать в реальной среде.
Xenon не заявляет о какой-либо скрытности. Конфигурация по умолчанию не будет OPSEC-безопасной. Цель Xenon — позволить оператору настраивать функции для достижения своих задач.
Установить Xenon на уже существующий сервер Mythic очень просто. Если у вас ещё нет настроенного сервера Mythic, для этого перейдите на страницу проекта Mythic.
Для дальнейших настроек и обхода защиты обратитесь к Wiki.
Из каталога установки Mythic используйте следующую команду для установки Xenon от имени пользователя root:
./mythic-cli install github https://github.com/MythicAgents/Xenon.git
Из каталога установки Mythic используйте следующую команду для установки Xenon от имени не-root пользователя:
sudo -E ./mythic-cli install github https://github.com/MythicAgents/Xenon.git
| Команда | Использование | Описание |
|---|---|---|
pwd | pwd | Показать текущий рабочий каталог. |
ls | ls [path] | Показать информацию о каталоге <directory>. |
cd | cd <directory> | Сменить рабочий каталог. |
cp | cp <source file> <destination file> | Скопировать файл в новое место назначения. |
rm | rm <path|file> | Удалить каталог или файл. |
mkdir | mkdir <path> | Создать новый каталог. |
getuid | getuid | Получить текущую идентичность. |
make_token | make_token <DOMAIN> <username> <password> [LOGON_TYPE] | Создать токен и имперсонировать его с использованием учётных данных в открытом виде. |
steal_token | steal_token <pid> | Украсть и имперсонировать токен целевого процесса. |
rev2self | rev2self | Вернуть идентичность к токену исходного процесса. |
ps | ps | Показать процессы хоста. |
shell | shell <command> | Запускает {command} в терминале. |
remote_exec | remote_exec -Module [module] -Target [target] -Command [command + args] [-Domain [domain]] [-Username [username]] [-Password [password]] | Выполнить команду на удалённой машине с помощью WMI, WinRM или SCShell. |
sleep | sleep <seconds> [jitter] | Изменить интервал сна и джиттер. |
inline_execute | inline_execute -BOF [COFF.o] [-Arguments [optional arguments]] | Выполнить Beacon Object File в потоке текущего процесса и увидеть вывод. Внимание: Неправильные типы аргументов могут привести к сбою процесса агента. |
async_execute | async_execute -BOF [COFF.o] [-Arguments [optional arguments]] | Выполнить Beacon Object File асинхронно в фоновом потоке. Вывод передаётся через обновления задачи. Поддерживает BeaconWakeup / BeaconGetStopJobEvent. |
jobs | jobs | Показать запущенные асинхронные BOF-задачи и их Mythic task UUID. |
jobkill | jobkill <task_uuid> | Остановить запущенный асинхронный BOF по Mythic agent task UUID (подаёт сигнал BeaconGetStopJobEvent). |
usermon | usermon [-Interval 3000] | Асинхронный монитор входов в систему (опрос WTS-сессий). Живые оповещения передаются в этой задаче. Остановить с помощью jobkill <usermon_task_uuid>. |
keylogger | keylogger [-Interval 30000] | Асинхронный кейлоггер: буферизует нажатия клавиш и сбрасывает их через интервал. Живой вывод в этой задаче. Остановить с помощью jobkill <keylogger_task_uuid>. |
inline_execute_assembly | inline_execute_assembly -Assembly [file] [-Arguments [assembly args] [--patchexit] [--amsi] [--etw]] | Выполнить .NET Assembly в текущем процессе с помощью BOF "Inline-EA" от @EricEsquivel (например, inline_execute_assembly -Assembly SharpUp.exe -Arguments "audit" --patchexit --amsi --etw) |
execute_assembly | execute_assembly -Assembly [SharpUp.exe] [-Arguments [assembly arguments]] | Выполнить .NET Assembly в удалённых процессах и получить вывод. |
execute_dll | execute_dll -File [mimikatz.x64.dll] | Выполнить Dynamic Link Library как PIC. (например, execute_dll -File mimikatz.x64.dll) |
spawnto | spawnto -path [C:\Windows\System32\svchost.exe] | Задать полный путь к процессу, используемому для команд spawn & inject. |
powerchell | powerchell -Command <command> | Выполнить PowerShell-скрипт с помощью post-ex DLL PowerChell. |
powershell_import | powershell_import -File [script.ps1] | --clear | Импортировать PowerShell-скрипт в кэш. |
download | download -path <file path> | Скачать файл с целевой системы (поддерживает UNC-путь). |
upload | upload (modal) | Загрузить файл на целевую машину, выбрав файл со своего компьютера. |
status | status | Показать хосты C2-подключений и их статус. |
link | link <target> [<named pipe>|<tcp_port>] | Подключиться к SMB/TCP Link Agent. |
unlink | unlink <Display Id> | Отключиться от SMB/TCP Link Agent. |
socks | socks <start/stop> <port number> | Включить прокси, совместимый с SOCKS 5, для отправки данных в целевую сеть. |
rportfwd | rportfwd -Action {start|stop} -Port [port] -RemoteIP [ip] -RemotePort [port] | Обратное перенаправление портов. |
kill | kill [pid] | Завершить процесс по PID. |
register_process_inject_kit | register_process_inject_kit (pops modal) | Зарегистрировать пользовательский BOF для инъекции в процесс (совместим с CS). Требования см. в документации. |
exit | exit | Дать импланту задачу завершиться. |