CIM-вирусы в Windows: методика и инструмент обнаружения
А.В. Попов1, Е.А. Шикин2
1 Мордовский государственный университет им. Н.П. Огарева, Саранск
2 Мордовское отделение №8589 Сбербанка России, Саранск

Одной из основных технологий компании Microsoft для централизованного управления и слежения за работой компьютерной сети под управлением Windows, является Windows Management Instrumentation (WMI) [1]. В свою очередь, в основе WMI лежит схема Common Information Model (CIM), которая представляет физическую и логическую структуры компьютерной системы в виде единой расширяемой объектно-ориентированной информационной модели и определяет единые интерфейсы для получения информации о любом компоненте этой модели. Таким образом, CIM можно считать универсальным иерархическим хранилищем классов, где класс – это модель (шаблон) управляемого объекта (в качестве управляемых объектов могут выступать самые различные логические и физические компоненты компьютерной системы: жесткие диски, журналы событий, сетевые карты, файлы и папки, процессы, сервисы, процессоры и т. д.). С этой точки зрения CIM похожа на другие каталоги, которые используются в Windows (например, каталог файловой системы или каталог Active Directory).
Технология WMI делает возможным создание собственных обработчиков практически для любого события операционной системы (запуск или завершение работы определенного приложения, создание в каталоге файла с заданным именем, появление в журнале событий определенного сообщения и т.д.). При этом постоянные потребители событий также хранятся в CIM; стандартные классы для создания постоянных потребителей позволяют, в частности, записывать в текстовые файлы произвольные сообщения и запускать определенные сценарии (скрипты) WMI. Таким образом, при наличии необходимых разрешений на доступ можно легко поместить в CIM вредоносный сценарий и выполнить его. Например, один потребитель событий может при наступлении какого-либо события операционной системы создать текстовый файл-сценарий с расширением js или vbs, а другой – запустить сформированный сценарий. Если при этом пользователь работает под учетной записью администратора, то подобный сценарий может выполнить в операционной системе любые действия, а затем удалить файл со своим текстом, чтобы не оставлять следов.
Ясно, что вирусы подобного типа, использующие потенциальную уязвимость репозитория CIM, довольно опасны и их трудно обнаружить с помощью имеющихся в настоящее время антивирусных программ. Для выявления CIM-вирусов предлагается утилита Scan_CIM.hta, с помощью которой можно сканировать репозитории CIM на машинах в сети и создавать отчеты в форматах HTML или XML для анализа того, какие постоянные потребители событий зарегистрированы на компьютерах, и какие действия могут быть выполнены этими потребителями. Кроме этого, данная утилита позволяет запоминать состав постоянных потребителей событий и выделять новые потребители, которые были зарегистрированы после последней проверки.

Литература
1. А.В.Попов, Е.А.Шикин. Администрирование Windows с помощью WMI и WMIC. - СПб.: БХВ-Петербург, 2004. - 752 с.