Если вы работаете в корпоративной безопасности или администрируете Windows-инфраструктуру, вы наверняка слышали о WMI — Windows Management Instrumentation. Это встроенный механизм, который позволяет системе управлять компонентами, собирать данные и автоматизировать задачи. Проблема в том, что всё это делает WMI идеальным инструментом для атак. Он легитимный, есть на каждой машине и редко блокируется. Давайте разберёмся, как именно его используют злоумышленники и что с этим делать.
- Почему WMI так удобен для атак
- Как злоумышленники используют WMI на практике
- 1. Дистанционное выполнение команд
- 2. Сбор информации о системе
- 3. Создание постоянного присутствия (Persistence)
- 4. Бесфайловое выполнение (Fileless Malware)
- 5. Горизонтальное перемещение (Lateral Movement)
- Сравнение техник использования WMI в атаках
- Как обнаружить злоупотребление WMI
- Мониторинг событий WMI
- Анализ репозитория WMI
- Мониторинг сетевой активности
- Что делать для защиты
- Если вы администратор и хотите быстро снизить риски
- Если вы строите систему безопасности с нуля
- Частые ошибки при защите от WMI-атак
- Что выбрать в зависимости от вашей ситуации
- Итог
Почему WMI так удобен для атак
WMI — это не уязвимость. Это штатная функция Windows, которую Microsoft создала для администраторов. И в этом вся суть проблемы. Антивирусы и файрволы не блокируют то, что система использует для собственной работы. Злоумышленники это понимают и активно эксплуатируют.
Вот что делает WMI привлекательным для атак:
- Легитимность. WMI работает от имени системы, его активность выглядит как нормальная работа Windows.
- Вездесущность. Он есть на каждой версии Windows начиная с 2000 года. Нет необходимости устанавливать дополнительное ПО.
- Дистанционное выполнение. WMI позволяет выполнять команды на удалённых машинах в сети.
- Persistence без файлов. Можно создать постоянный механизм запуска, который не оставляет файлов на диске.
- Скрытность. Многие средства мониторинга не отслеживают активность WMI должным образом.
Как злоумышленники используют WMI на практике
1. Дистанционное выполнение команд
Самый простой сценарий — запуск команд на другой машине в сети. Злоумышленник получает доступ к одному компьютеру и через WMI начинает выполнять команды на соседних.
Пример: команда wmic /node:192.168.1.10 process call create "malware.exe" запускает процесс на удалённой машине. Ничего не скачивается на диск целевой машины через обычные каналы — всё идёт через WMI.
Более продвинутый вариант — использование PowerShell через WMI:
Invoke-WmiMethod -Class Win32_Process -Name Create -ArgumentList "powershell -enc [base64_код]" -ComputerName "целевой_компьютер"
Это позволяет загрузить и выполнить код целиком в памяти, не касаясь диска.
2. Сбор информации о системе
Перед тем как двигаться дальше по сети, злоумышленник собирает данные. WMI даёт к ним полный доступ:
- список установленного ПО (чтобы найти уязвимости);
- запущенные процессы (чтобы понять, есть ли антивирус);
- учётные записи и группы (чтобы оценить привилегии);
- сетевые настройки и подключения;
- данные о дисках и файловой системе.
Запрос вроде Get-WmiObject Win32_Product покажет всё установленное программное обеспечение. Это золотая жила для планирования дальнейших действий.
3. Создание постоянного присутствия (Persistence)
Это, пожалуй, самый опасный сценарий. WMI позволяет создать подписку на события системы, которая будет запускать вредоносный код при определённых условиях — например, при загрузке системы или через заданный интервал времени.
Механизм работает так:
- Создаётся фильтр событий — условие, при котором сработает триггер (например, через 5 минут после загрузки).
- Создаётся потребитель — действие, которое выполнится (запуск команды, выполнение скрипта).
- Фильтр и потребитель связываются вместе.
После этого система сама запускает нужный код по расписанию. Никакой записи в реестре, никакого файла в автозагрузке — всё хранится в базе WMI (репозитории). Обнаружить это стандартными средствами крайне сложно.
4. Бесфайловое выполнение (Fileless Malware)
WMI может хранить код прямо в своей базе данных. Злоумышленник записывает туда вредоносный скрипт, а потом запускает его оттуда же. На диске файлов нет, антивирус ничего не находит.
Инструмент вроде WMImplant или встроенные возможности PowerShell позволяют записать Base64-код в класс WMI и выполнить его при определённом событии.
5. Горизонтальное перемещение (Lateral Movement)
Получив доступ к одной машине в домене, злоумышленник использует WMI для запуска команд на других компьютерах. Для этого достаточно учётной записи с правами локального администратора на целевой машине — что в корпоративных сетях встречается часто.
Типичная цепочка: фишинг → компрометация одной рабочей станции → извлечение учётных данных из памяти → использование WMI для выполнения команд на серверах с этими учётными данными.
Сравнение техник использования WMI в атаках
| Техника | Сложность обнаружения | Требуемые привилегии | Типичный сценарий |
|---|---|---|---|
| Удалённое выполнение команд | Средняя | Администратор на целевой машине | Горизонтальное перемещение по сети |
| Сбор информации | Низкая | Обычный пользователь (локально) | Разведка перед атакой |
| WMI Persistence | Высокая | Администратор | Поддержание доступа после перезагрузки |
| Бесфайловое выполнение | Очень высокая | Администратор | Запуск вредоносного кода без следов на диске |
| Удалённый сбор данных | Средняя | Администратор на целевой машине | Кража данных с других машин в сети |
Как обнаружить злоупотребление WMI
Обнаружение атак через WMI — задача нетривиальная, но выполнимая. Вот на что смотреть:
Мониторинг событий WMI
Windows логирует активность WMI. Включите и отслеживайте:
- Event ID 5861 — создание подписки WMI (фильтров и потребителей). Это главный индикатор persistence через WMI.
- Event ID 4688 — запуск новых процессов. Обращайте внимание на процессы, запущенные
WmiPrvSE.exe(хост провайдера WMI). - Microsoft-Windows-WMI-Activity/Operational — отдельный журнал событий WMI, который нужно включить через настройки аудита.
Анализ репозитория WMI
Репозиторий WMI хранится в C:\Windows\System32\wbem\Repository. Периодически проверяйте его на наличие подозрительных классов и объектов. Инструменты вроде WMImplant или специализированные скрипты помогут выявить нелегитимные записи.
Мониторинг сетевой активности
Удалённое использование WMI идёт через DCOM (порт 135) и RPC (динамические порты). Если вы видите необычное подключение к этим портам с рабочей станции на сервер — это повод для проверки.
Что делать для защиты
Если вы администратор и хотите быстро снизить риски
- Ограничьте удалённый доступ WMI. Настройте файрвол так, чтобы WMI-подключения (порт 135 и RPC) приходили только с управляющих станций, а не откуда угодно в сети.
- Включите аудит WMI. Настройте сбор событий из журнала Microsoft-Windows-WMI-Activity и настройте алерты на создание подписок.
- Минимизируйте число локальных администраторов. Чем меньше учётных записей с правами локального admin — тем сложнее злоумышленнику использовать WMI для перемещения по сети.
- Отключите WMI там, где он не нужен. На серверах, которые не управляются через WMI, его можно отключить как службу.
Если вы строите систему безопасности с нуля
- Внедрите EDR-решение, которое отслеживает активность WMI и аномальные вызовы.
- Настройте AppLocker или Windows Defender Application Control для ограничения запуска скриптов.
- Используйте LAPS (Local Administrator Password Solution) — у каждой машины будет свой уникальный пароль локального admin, что усложнит горизонтальное перемещение.
- Регулярно проверяйте репозиторий WMI на наличие подозрительных записей.
Частые ошибки при защите от WMI-атак
Ошибка 1: «У нас есть антивирус, этого достаточно». Антивирус плохо видит атаки через WMI, потому что они используют легитимные системные механизмы. Нужен мониторинг на уровне поведения и событий.
Ошибка 2: «Мы отключили WMI и всё». WMI используется системой для многих задач. Его отключение может сломать обновления, мониторинг и управление. Лучше ограничить доступ, чем отключать полностью.
Ошибка 3: «Мы не логируем WMI, потому что много шума». Да, событий WMI много. Но настроить фильтрацию на конкретно опасные события (создание подписок, удалённые подключения) — реально и необходимо.
Ошибка 4: «WMI — это только про Windows 7 и старше». Нет. WMI активно используется и в Windows 10/11, и в Server 2016/2019/2022. Атаки через WMI актуальны прямо сейчас.
Что выбрать в зависимости от вашей ситуации
Малый бизнес, нет выделенной команды безопасности. Включите аудит WMI через групповые политики, настройте алерты на Event ID 5861, внедрите LAPS. Этого достаточно для базовой защиты.
Средний бизнес, есть системный администратор. Добавьте к вышеперечисленному ограничение WMI-подключений на файрволе, регулярный аудит репозитория WMI и мониторинг процессов, запущенных через WmiPrvSE.exe.
Крупная компания, есть SOC. Внедрите EDR с поддержкой мониторинга WMI, настройте SIEM-правила на аномальную активность WMI, проводите регулярные тесты на проникновение с использованием WMI-техник.
Итог
WMI — это не уязвимость, которую можно пропатчить. Это архитектурная особенность Windows, которую злоумышленники научились использовать в своих целях. Бороться с этим можно только через комплексный подход: ограничение доступа, мониторинг событий, минимизация привилегий и использование современных средств защиты конечных точек.
Начните с малого — включите аудит WMI и настройте алерты на создание подписок. Это уже закроет один из самых опасных векторов атак. А дальше — по ситуации и бюджету.
