Статья Windows DFIR: ловим Silver в логах с помощью Hayabusa

1786366084626.webp



Что вас ждёт в статье:

1. Введение

2. Инструментарий: фреймворки, правила, hayabusa

3. Разработка стенда
3.1 Подготовка Windows
3.2 Развертывание Sliver

4. Hayabusa


5. Заключение



Введение​

«10.07.2026 04:12:11 UTC | EventID 4688 | Parent: wsmprovhost.exe | Cmd: .\update.exe -c 127.0.0.1 -p 443»

Знакомая строчка? Сменщик передал дежурство, в логах висит это, а аналитик первого уровня уже заводит тикет на ложное срабатывание системного процесса.

Требуется сразу утилита, которая покажет, что под маской банального обновления скрывается профиль Mythic Agent или маяк Silver. Ручной разбор гигабайт EVTX в поиске аномалий — это сизифов труд. Использовать скрипты на PowerShell для парсинга сотен тысяч событий неэффективно. Скрипты ломаются на больших объемах данных, память забивается, а сессия падает в тайм-аут. Для быстрого триажа нужен быстрый инструмент. Hayabusa написана на Rust, поэтому она обрабатывает миллионы событий Sigma-правилами в оперативной памяти без тормозов интерпретируемых скриптов.

Посмотрим, что именно этот инструмент вытащит из стандартного набора логов безопасности, если злоумышленники развернули современный C2.



Инструментарий: фреймворки, правила, hayabusa

Не стоит входить в разбор инцидента без четкого понимания инструментов атакующих. Современные атакующие редко используют самописные утилиты для удержания контроля. Они берут готовые фреймворки C2, которые автоматизируют управление захваченной инфраструктурой.

Крупными игроками на этом поле стали Mythic и Sliver. Оба инструмента спроектированы для обхода стандартных систем защиты, но делают это по-разному.

Sliver, созданный компанией Bishop Fox, генерирует тяжелые бинарники на Go. Эти импланты умеют динамически менять свои сигнатуры, маскировать сетевой трафик и выгружать средства защиты прямо из оперативной памяти хоста.

Mythic устроен иначе. Разработчики сделали ставку на модульную архитектуру, где панель управления полностью отделена от агентов. Оператор может собрать кастомный исполняемый файл (например, Apollo под Windows) с уникальным профилем сетевого взаимодействия. На выходе получается агент, который общается с сервером по специфическому протоколу, не похожему на типовую малварь.

Когда такой агент или имплант закрепляется в системе, он начинает регулярно запрашивать команды у сервера C2 и выполнять их. На хосте остаются следы: новые процессы, сетевые соединения, изменения в реестре. Полноценный DFIR-анализ с поиском этих артефактов занимает часы. Для коммерческого SOC это непозволительно.

Здесь требуется триаж — процедура экспресс-анализа ключевых логов для оперативного подтверждения компрометации хоста.

Инструментом проведения такого быстрого анализа выступает Hayabusa. Эта консольная утилита обрабатывает миллионы событий за секунды, а скорость работы критична, когда нужно проверить гигабайты EVTX с десятка серверов.

Hayabusa сопоставляет их со встроенной базой правил Sigma. Формат Sigma является открытым стандартом для описания логики атак на языке YAML. Утилита берет эти универсальные паттерны, накладывает их на выгруженные файлы EVTX и выдает готовый таймлайн инцидента с четкой градацией угроз.

В итоге аналитик получает структурированную хронологию, где подсвечены конкретные шаги оператора C2.



Разработка стенда​

Подготовка Windows​

Избыточно разворачивать сложную сетевую инфраструктуру из пяти виртуальных машин для фиксации базовых артефактов Sliver. Для генерации целевого датасета логов нам понадобится всего одна тестовая Windows-машина, на которой серверная и клиентская части фреймворка будут запущены локально через петлевой интерфейс (127.0.0.1).

Прежде чем запускать генератор пакостей, необходимо заставить Windows фиксировать данные, на которые опираются правила Sigma. По умолчанию операционная система скрывает аргументы командной строки в журнале безопасности. Нам нужно это исправить.

На заранее подготовленной виртуалке Win10_22H2 делаем следующее:

Открываем редактор локальной политики безопасности через Run (комбинация Win+R), командой secpol.msc

Видим следующее окно:

1786366356019.webp

В параметре Аудит отслеживания процессов выставляю флаги для событий «Успех» и «Отказ».
1786366372519.webp

Также необходимо включить журналирование тела командной строки

Через gpedit.msc перехожу в раздел: Конфигурация компьютера => Административные шаблоны => Система => Аудит создания процессов. Нужно перевести параметр «Включать командную строку в события создания процессов» в состояние «Включено», как показано на изображении:
1786366395335.webp

После выполнения указанных действий в PowerShell принудительно применяем групповые политики, иначе пришлось бы ждать несколько десятков минут:
1786366408879.webp

Доверяй, но проверяй. Особенно, когда речь идет о винде.

В том же PowerShell заодно вводим команду с неверным и выделяющимся синтаксисом, которую легко будет найти:
1786366420332.webp

Теперь заходим в «Просмотр событий», в журналы безопасности, где применяется поиск по ключевым словам, в нашем случае это «this_is_my_test_string»:
1786366461669.webp

Событие найдено, значит все инструкции были заданы и применены корректно.


Развертывание Sliver​

Для проведения контролируемой симуляции нам необходим сам инструмент генерации вредоносной нагрузки. Использовать полноценную Linux-систему внутри изолированной среды нет нужды, разработчики фреймворка собирают серверную часть Sliver в том числе под Windows.

Любой open-source фреймворк C2 мгновенно детектируется современными сигнатурными сканерами. Чтобы Windows Defender не ругался, создаю отдельную папку на диске, которую вношу в исключения дефендера:
1786366489836.webp

Теперь можно скачивать сам sliver-server. Оф. репозиторий прилагается:


После скачивания приложения, переношу его в исключенную из базы дефендера папку, и запускаю через cmd (обязательно с правами локального админа, так как утилите нужно будет открывать сетевые порты):
1786366544445.webp

По завершении распаковки ассетов, нас встречает приглашение утилиты и стильное пиксельное оформление:
1786366559222.webp

Основа основ – разобраться с портами. Вводим команду “http”:
1786366572328.webp

Сервер Sliver’а обращается к сетевому стеку Windows и резервирует за собой 80-й порт локального интерфейса. Теперь ядро фреймворка перешло в режим ожидания.

Для генерации исполняемого файла использую текущие средства сборки. Буду собирать сессионный имплант, работающий по протоколу HTTP. Принудительно отключаю обфускацию символов с помощью флага --skip-symbols, чтобы сохранить исходные имена функций для последующего анализа и ускорить процесс сборки на тестовом стенде:
1786366589559.webp

Сборка занимает буквально 10–15 секунд, на выходе получается единый файл «toolssliver_agent.ехе», в который зашит адрес локального сервера​

В процессе настройки тестового стенда я понял, что будет удобнее и нагляднее, если сервер sliver’a, будет установлен на системе под управлением Linux, а сам агент проброшен на Windows.

Итак, я достал свой ноутбук с Ubuntu, установил на него sliver-server и создал агента. Процесс установки почти ничем не отличался от установки на Windows, поэтому не будем заниматься самоповторами и перейдём сразу к моменту, когда агент уже проброшен на Windows-машину, логи которой в последствии я буду анализировать.

Агент создан, проброшен на атакуемую систему:
1786366648914.webp

Здесь я проваливаюсь в активную сессию импланта GASTRIC_EPOXY с помощью команды use fa9057e7 и сразу запрашиваю интерактивный доступ, выполнив команду shell для удаленного управления целевой Windows-машиной:
1786366663063.webp

Выполняю команду whoami /all внутри открытого шелла Sliver, чтобы собрать базовую информацию о текущем пользователе, его SID и проверить вхождения в группы безопасности:
1786366684285.webp

Выполняю команду net user, чтобы просмотреть список всех существующих учетных записей пользователей на целевой системе DESKTOP-9L90HP9 и выявить потенциальные цели для компрометации или дальнейшего закрепления:
1786366703606.webp

Здесь с помощью встроенной утилиты systeminfo я собираю информацию о конфигурации системы. Полученные данные при реальной атаке (сборка ОС, часовой пояс, дата установки) помогают точнее подстроить дальнейшие шаги по закреплению и симуляции атак под конкретное окружение.
1786366726939.webp

Здесь я выполняю команду type C:\Windows\System32\drivers\etc\hosts, чтобы прочитать содержимое системного файла hosts и сымитировать этап сбора данных, проверяя наличие статических сопоставлений IP-адресов и хостов в системе:
1786366749586.webp

Также за кадром были введены базовые команды по типу ls, mkdir, cp и прочие, + была предпринята попытка создать локального администратора.


Hayabusa


Интерактивная сессия закрыта. На целевом хосте остался только выгруженный журнал Security, в который оператор C2 успел натоптать пачкой тяжелых команд. Руками здесь искать нечего.

Пора запускать триаж. Переносим полученный Security.evtx в директорию с утилитой и натравливаем Hayabusa на свежий датасет. Снова используется профиль Core++, чтобы отсечь информационный шум, но не пропустить подозрительную активность Win32 API:
1786366804147.webp

Процесс сканирования завершен, утилита отработала весь массив логов. Терминал выдает итоговую статистику, которая сразу подсвечивает масштаб нашего ненастоящего бедствия и отсекает шум.

Из 76 383 событий, содержащихся в EVTX, под правила детектирования попал всего 931 инцидент. Движок отбросил 98.78% нерелевантного лога. Это как раз то, ради чего используется профиль фильтрации.

Hayabusa выдала 940 уникальных детекций, часть событий сработала по нескольким правилам. Из них критических — 9, высокого уровня — 342, среднего — 589. Нулевые показатели в графах Low и Informational подтверждают, что выбранный профиль Core+ отработал штатно

Статистика собрана, алерты распределены. Теперь открываем сгенерированный CSV-таймлайн и смотрим, на каких конкретно шагах был выявлен C2-имплант.
1786366821341.webp

Файл получился большим, даже учитывая тот факт, что были применены фильтры утилиты Hayabusa, анализ всех 900+ строк – это все еще крайне трудоемкий процесс. В реальной системе, принадлежащей крупной компании, алертов было бы еще в разы больше.

Первое, что нужно сделать, — это отфильтровать полученный результат по колонке «Timestamp».

Нас интересует сегодняшнее число:​
1786366845696.webp

Разумеется, в боевом SOC-анализе пришлось бы крутить куда больше фильтров, вычищая легитимную активность и сопоставляя контекст. Однако на тестовом стенде перед нами стоит конкретная задача: изучить сами следы, которые Sliver оставляет в операционной системе. Опираясь на эти сведения, отфильтровываю все то, что к вредоносной активности Sliver’a не относится, остаются следующие записи:
1786366860201.webp

Проанализируем алерты снизу вверх, ориенитруясь на изображение выше:

1. Defender Alert (Severe) от 2026-07-10 19:06:22.644
1786366912541.webp

Защитник Windows на атакуемом хосте DESKTOP-9L9OHP9 перехватил вредоносный файл в момент его активности или падения на диск. Угрозе присвоен наивысший уровень критичности

Сигнатурный движок сожрал исполняемый файл под именем GASTRIC_EPOXY.exe. Антивирус классифицировал его как Trojan:Win32/Gracing.I. По сути, это имя сигнатуры, под которую попал скомпилированный бинарь Sliver.

Немного о нейминге имплантов в Sliver:

по дефолту софт выдает агентам рандомное имя по формуле WORD_WORD, например: WORKING_HACIENDA, IMPRESSED_METHANE и т.д.. Конечно, обычно это имя меняется на что-то менее выделяющееся, например svchost.exe, но знать об этом механизме будет полезно.

Поле Path четко указывает, что имплант прилетел через мессенджер: он лежит в загрузках Telegram (...\Downloads\Telegram Desktop\). Поле Proc подтверждает контекст: триггером стал сам процесс Telegram.exe, который записал файл на диск или попытался его исполнить. Мессенджеры являются одним из основных способов распростанения малварей.​

2. HackTool - Sliver C2 Implant Activity Pattern от 2026-07-10 19:11:19
1786366957795.webp

Этот алерт — чистый и явный маркер компрометации хоста, который пробивает логи безопасности.

Hayabusa отловила запуск PowerShell со специфическими аргументами. Sigma-правило HackTool - Sliver C2 Implant Activity Pattern сработало по жесткой сигнатуре. Движок обнаружил характерный для Sliver паттерн инициализации консоли. В этом и заключается польза Hayabusa.

Cmdline выдает оператора C2 с головой. Конструкция [Console]::OutputEncoding=[Text.UTF8Encoding]::UTF8 автоматически подставляется Sliver при открытии интерактивной сессии или выполнении команд через встроенный механизм импланта. Так фреймворк гарантирует, что кириллица или спецсимволы в выводе терминала не превратятся в нечитаемую кашу.

3. Enumerate All Information With Whoami.EXE от 2026-07-10 19:11:42
1786366989808.webp

Этот алерт фиксирует этап разведки внутри скомпрометированной системы. Утилита whoami.exe запущена с флагом /all, что в контексте реагирования на инциденты можно назвать аномалией.

Hayabusa зафиксировала выполнение встроенной системной утилиты с флагами полной инспекции прав. Sigma-правило Enumerate All Information With Whoami.EXE отработало по Event ID 4688 в журнале Security с уровнем medium.

Команда "C:\Windows\system32\whoami.exe" /all выводит абсолютно всё: имя текущего пользователя, SID, группы, в которых он состоит, и, главное, доступные ему привилегии вроде SeDebugPrivilege или SeImpersonatePrivilege. Обычный пользователь или легитимный софт так не делает, им незачем знать свой полный токен безопасности. Это типичное поведение оператора C2, который только что закрепился в сессии и хочет понять, можно ли прямо сейчас повышать права до SYSTEM или нужно искать другие пути.

4. New User Created Via Net.EXE от 2026-07-10 19:13:55
1786367019121.webp

Этот алерт фиксирует этап закрепления в системе. Атакующий перешел от разведки к активным действиям и пытается создать резервную локальную учетную запись.

Hayabusa отловила создание нового пользователя через встроенную утилиту net.exe. Сигма-правило New User Created Via Net.EXE сработало по знакомому Event ID 4688 в журнале Security с уровнем medium. Поле Cmdline выдает намерения оператора C2 с потрохами (потому как оператор намеренно хотел быть разоблаченным в угоду наглядности) "C:\Windows\system32\net.exe" user backup_admin SuperPassword123 /add. Злоумышленник создает пользователя с именем backup_admin и задает ему пароль. Уровень Medium здесь выставлен из-за легитимности самой утилиты, но в контексте атаки это критический маркер компрометации.​

5. Weak or Abused Passwords In CLI от 2026-07-10 19:13:55
Этот алерт особого интереса не представляет, он просто говорит о том, что при создании пользователя был выбран ненадежный пароль.

5.1 Следующие два алерта – это вновь попытки создания бэкап админа и соответственно уведомление о слабом пароле. Они появились из-за того, что при симуляции атаки я случайно ввел дважды одну и ту же команду.

6. Potential Homoglyph Attack Using Lookalike Characters от 2026-07-10 19:14:07​
1786367105329.webp

Этот инцидент наглядно иллюстрирует технический сбой парсинга кириллицы в консоли Sliver наряду с попыткой атакующего получить максимальные привилегии. Hayabusa зафиксировала добавление созданного ранее пользователя backup_admin в локальную группу администраторов, но из-за несовпадения кодировок слово «Администраторы» превратилось в кракозябры ╨Р╨┤╨╝.... Это спровоцировало ложное срабатывание Сигма-правила Potential Homoglyph Attack Using Lookalike Characters, которое ошибочно приняло искаженные символы за попытку обхода детектов.

Если отбросить проблему с кодировкой, перед нами критическая фаза атаки: выполнение команды "net.exe" localgroup ... backup_admin /add всего через 12 секунд после создания учетной записи завершает этап повышения прав и закрепления в рамках всё той же активной сессии LID: 0x516bde2. Для SOC-аналитика данный лог служит финальной точкой компрометации хоста, поскольку контекст аргументов однозначно подтверждает успешное предоставление резервному аккаунту злоумышленника административных полномочий.


Заключение

Анализ логов с помощью Hayabusa демонстрирует, что современные фреймворки C2, включая Sliver, неизбежно оставляют критические маркеры компрометации в инфраструктуре. Даже при отключенной обфускации или использовании легитимных системных утилит, действия оператора C2 формируют специфические паттерны аномальной активности.

Применение специализированного инструментария триажа позволяет эффективно отсечь почти весь легитимный шум из журналов EVTX. Использование встроенных правил Sigma дает аналитикам SOC возможность оперативно восстановить хронологию инцидента с момента падения вредоносного бинарника на хост до этапов разведки и повышения привилегий в режиме реального времени.​
 
Последнее редактирование:
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

Похожие темы

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🧭 Навигатор · ИБ 2026
Не знаешь, какой трек твой?
5 направлений ИБ, реальные зарплаты и точка входа для каждого — в одном треде.
JuniorSenior+
100K → 600K+ ₽ /мес
Открыть навигатор →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab