Установка и использование Sysmon в Windows

Установка и использование Sysmon в WindowsSysmon — инструмент для Windows 11/10 и предыдущих версий системы, работающий как служба и позволяющий отслеживать активность системы, записывая важные события в журнал, доступный для изучения в «Просмотре событий».

В этом материале об установке Sysmon, просмотре собранных событий и возможностях конфигурации при использовании утилиты.

Установка и просмотр событий

В зависимости от версии Windows на вашем компьютере шаги для установки могут отличаться:

  1. В Windows 11 Sysmon присутствует как дополнительный компонент в системе: нажмите клавиши Win+R на клавиатуре, введите appwiz.cpl и нажмите Enter, в панели слева выберите пункт «Включение или отключение компонентов Windows», отметьте «Sysmon», нажмите «Ок» и дождитесь установки. После этого запустите командную строку от имени администратора и выполните команду
    sysmon -accepteula -i

    для установки необходимой службы и драйвера.Установка Sysmon как дополнительного компонента в Windows 11

  2. В случае Windows 10 скачайте Sysmon с официального сайта распакуйте архив, запустите командную строку от имени администратора и выполните команду
    путь_к_sysmon.exe -accepteula -i

    В результате файлы нужной разрядности будут скопированы в системную папку Windows, будет создана необходимая служба.

Работа Sysmon не будет отличаться ни в первом, ни во втором варианте установки, однако при использовании второго способа исполняемый файл помещается в C:\Windows, а при использовании первого — в C:\Windows\System32

Перезагрузка компьютера не требуется, сбор данных начинается сразу после установки службы, просмотреть события можно следующим образом:

  1. Откройте «Просмотр событий» Windows 11/10, например, с помощью меню по правому клику на кнопке «Пуск».
  2. Перейдите в «Журналы приложений и служб» — «Microsoft» — «Windows» — «Sysmon» — «Operational», чтобы просмотреть события.
  3. При установке с параметрами по умолчанию регистрируются ограниченный набор событий: вы преимущественно будете наблюдать коды 1 (создание процесса) и 5 (завершение процесса) с возможность просмотра инициатора, родительского процесса и другой информации о конкретном процессе. Однако, этим возможности инструмента не ограничиваются, о чём в следующем разделе статьи.

Если вам потребуется остановить сбор данных, используйте команду

net stop sysmon

Для последующего перезапуска:

net start sysmon

Команда для полного удаления службы и драйвера:

sysmon -u

Файлы конфигурации

Sysmon позволяет отслеживать множество событий, таких как создание и удаление файлов, изменения в реестре, сетевые события, загрузка драйверов и другие, полный список доступен на официальном сайте. При этом пользователь имеет возможность отфильтровывать события, помещаемые в журнал, например, отслеживать изменения лишь в конкретных папках или разделах реестра.

Всё это осуществляется с помощью XML файлов конфигурации, параметры которых также рассмотрены на официальном сайте. Установка конфигурации выполняется с помощью команды:

sysmon -c путь_к_файлу\config.xml

Изменения вступают в силу сразу после успешной загрузки конфигурации.

Например, ниже представлен пример конфигурации с комментариями, цель — демонстрация возможностей и параметров:

<Sysmon schemaversion="4.82">
  <!--
    Алгоритмы хеширования:
    md5,sha256 — для проверки файлов на VirusTotal.
  -->
  <HashAlgorithms>md5,sha256</HashAlgorithms>

  <EventFiltering>

    <!-- 
      EVENT ID 1: PROCESS CREATION
      Отслеживание запуска программ, исключение системных (пример).
    -->
    <RuleGroup name="" groupRelation="or">
      <ProcessCreate onmatch="exclude">
        <Image condition="is">C:\Windows\System32\Sysmon.exe</Image>
        <Image condition="is">C:\Windows\System32\svchost.exe</Image>
        <Image condition="is">C:\Windows\System32\SearchIndexer.exe</Image>
      </ProcessCreate>
    </RuleGroup>

    <!-- 
      EVENT ID 5: PROCESS TERMINATION
      Отслеживание завершения процессов.
    -->
    <RuleGroup name="" groupRelation="or">
      <ProcessTerminate onmatch="include">
        <Image condition="begin with">C:\</Image>
      </ProcessTerminate>
    </RuleGroup>

    <!-- 
      EVENT ID 3: NETWORK CONNECTION
      Сетевые соединения. Исключение браузеров.
    -->
    <RuleGroup name="" groupRelation="or">
      <NetworkConnect onmatch="exclude">
        <Image condition="end with">chrome.exe</Image>
        <Image condition="end with">firefox.exe</Image>
        <Image condition="end with">msedge.exe</Image>
        <Image condition="end with">opera.exe</Image>
        <Image condition="end with">OneDrive.exe</Image>
        <DestinationHostname condition="end with">microsoft.com</DestinationHostname>
      </NetworkConnect>
    </RuleGroup>
    
    <!-- Отслеживание консольных утилит в сети -->
    <RuleGroup name="" groupRelation="or">
      <NetworkConnect onmatch="include">
        <Image condition="end with">powershell.exe</Image>
        <Image condition="end with">cmd.exe</Image>
        <Image condition="end with">wscript.exe</Image>
        <Image condition="end with">cscript.exe</Image>
      </NetworkConnect>
    </RuleGroup>

    <!-- 
      EVENT ID 11: FILE CREATE
      Создание исполняемых файлов в критических папках.
    -->
    <RuleGroup name="" groupRelation="or">
      <FileCreate onmatch="include">
        <TargetFilename condition="contains">\Start Menu\Programs\Startup\</TargetFilename>
        <TargetFilename condition="end with">.exe</TargetFilename>
        <TargetFilename condition="end with">.bat</TargetFilename>
        <TargetFilename condition="end with">.vbs</TargetFilename>
        <TargetFilename condition="end with">.ps1</TargetFilename>
      </FileCreate>
    </RuleGroup>

    <!-- 
      EVENT ID 12, 13, 14: REGISTRY EVENTS
      Автозагрузка через реестр.
    -->
    <RuleGroup name="" groupRelation="or">
      <RegistryEvent onmatch="include">
        <TargetObject condition="contains">\CurrentVersion\Run</TargetObject>
        <TargetObject condition="contains">\Windows NT\CurrentVersion\Winlogon\Shell</TargetObject>
        <TargetObject condition="begin with">HKLM\SYSTEM\CurrentControlSet\Services</TargetObject>
      </RegistryEvent>
    </RuleGroup>

  </EventFiltering>
</Sysmon>

После установки этого файла конфигурации:

  1. Начнут регистрироваться новые события. В примере выделено событие создания файла в папке автозагрузки:События Sysmon после использования файла конфигурации
  2. В описании событий для процессов появятся новые контрольные суммы, позволяющие выполнить поиск по MD5 или SHA256 хэшу в VirusTotal или другом аналогичном сервисе:Проверка на VirusTotal с использованием контрольной суммы
  3. Будут регистрироваться события изменений в реестре Windows (с указанием конкретных изменений и их инициатора), а также сетевые соединения, инициируемые не браузерами.

Используя шаблон сравнительно легко настроить собственные исключения или, наоборот, области отслеживания. А если это сложно — почти любая современная LLM успешно создаст файл конфигурации под ваши задачи.

Подводя итог, Sysmon — отличный инструмент, если вам требуется отследить, что именно происходит в вашей Windows 11/10 или другой версии с возможность настройки собираемых сведений.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *