Использование пересылки событий Windows для обнаружения атак

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

Переадресация событий Windows (WEF) считывает любой операционный или административный журнал событий на устройстве в организации и пересылает выбранные события на сервер сборщика событий Windows (WEC).

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

Эта реализация помогает различать, где в конечном итоге хранятся события. Базовые события можно отправлять на устройства с возможностью анализа в сети, такие как диспетчер событий безопасности (SEM), а также отправлять события в систему MapReduce, например HDInsight или Hadoop, для долгосрочного хранения и более глубокого анализа. События из подписки Suspect отправляются непосредственно в систему MapReduce из-за громкости и меньшего соотношения сигнал/шум. Они в основном используются для судебно-медицинского анализа узла.

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

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

Ниже приведено приблизительное руководство по масштабированию для событий WEF:

Диапазон событий в секунду Хранилище данных
0 - 5,000 SQL или SEM
5,000 - 50,000 SEM
50,000+ Hadoop/HDInsight/Data Lake

Создание событий на устройстве должно быть включено отдельно или как часть объекта групповой политики для базовой реализации WEF, включая включение отключенных журналов событий и настройку разрешений канала. Дополнительные сведения см. в приложении C. Параметры канала событий (включение и доступ к каналу). Это условие связано с тем, что WEF является пассивной системой в отношении журнала событий. Он не может изменить размер файлов журнала событий, включить отключенные каналы событий, изменить разрешения канала или настроить политику аудита безопасности. WEF запрашивает только каналы событий для существующих событий. Кроме того, создание событий на устройстве позволяет создавать более полный сбор событий, создавая полный журнал действий системы. В противном случае вы будете ограничены скоростью циклов обновления объектов групповой политики и подписки WEF, чтобы внести изменения в то, что создается на устройстве. На современных устройствах включение большего количества каналов событий и увеличение размера файлов журнала событий не привело к заметным различиям в производительности.

Сведения о минимально рекомендуемой политике аудита и параметрах ACL системы реестра см. в разделе Приложение A — Минимальная рекомендуемая минимальная политика аудита и Приложение Б . Рекомендуемая политика минимального ACL системы реестра.

Примечание.

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

С точки зрения управления подписками WEF предоставленные запросы событий должны использоваться в двух отдельных подписках для упрощения обслуживания; Доступ к целевой подписке будет разрешен только компьютерам, отвечающим определенным критериям. Этот доступ будет определяться алгоритмом или направлением аналитиков. Все устройства должны иметь доступ к базовой подписке.

Эта система двойной подписки означает, что вы создадите две базовые подписки:

  • Базовая подписка WEF. События, собранные со всех узлов; Эти события включают некоторые события, зависящие от ролей, которые будут создаваться только этими компьютерами.
  • Целевая подписка WEF. События, собранные с ограниченного набора узлов из-за необычной активности и (или) повышенной осведомленности об этих системах.

Каждый из них использует соответствующий запрос события ниже. Для целевой подписки для включения параметра "чтение существующих событий" должно быть задано значение true, чтобы разрешить сбор существующих событий из систем. По умолчанию подписки WEF пересылают только события, созданные после того, как подписка WEF была получена клиентом.

В приложении E — запрос на событие базовой подписки с заметками и в приложении F — запрос на событие подозрительной подписки с заметками XML-код события включается при создании подписок WEF. Эти подписки имеют заметки для целей запроса и ясности. Отдельный <Query> элемент можно удалить или изменить, не затрагивая остальную часть запроса.

Распространенные вопросы о WEF

В этом разделе рассматриваются распространенные вопросы от ИТ-специалистов и клиентов.

Заметит ли пользователь, если на его компьютере включена функция WEF, или если в WEF возникнет ошибка?

Короткий ответ: Нет.

Более длинный ответ: канал событий для пересылки журналов событийPlugin/Operational регистрирует события успеха, предупреждения и ошибки, связанные с подписками WEF, присутствующими на устройстве. Если пользователь не откроет Просмотр событий и не перейдет в этот канал, он не заметит WEF через использование ресурсов или всплывающие окна графического пользовательского интерфейса. Даже если с подпиской WEF возникла проблема, взаимодействие с пользователем или снижение производительности не происходит. Все события успешного выполнения, предупреждения и сбоя регистрируются в этом канале операционных событий.

Wef Push или Pull?

Подписку WEF можно настроить для отправки или извлечения, но не для обеих. Самое простое и гибкое ИТ-развертывание с наибольшей масштабируемостью можно достичь с помощью принудительной или инициируемой исходной подпиской. Клиенты WEF настраиваются с помощью объекта групповой политики, и активируется встроенный клиент переадресации. Для извлечения, инициированного сборщиком, подписка на сервере WEC предварительно настроена с именами клиентских устройств WEF, из которых будут выбраны события. Эти клиенты должны быть настроены заранее, чтобы разрешить учетным данным, используемым в подписке, удаленный доступ к журналам событий (обычно путем добавления учетных данных во встроенную локальную группу безопасности читателей журнала событий ). Полезный сценарий: тщательный мониторинг определенного набора компьютеров.

Будет ли WEF работать через VPN или RAS?

WEF хорошо обрабатывает сценарии VPN, RAS и DirectAccess и будет повторно подключаться и отправлять все накопленные события невыполненной работы при повторной установке подключения к сборщику WEF.

Как отслеживается ход выполнения клиента?

Сервер WEC хранит в своем реестре сведения о закладках и время последнего пульса для каждого источника событий для каждой подписки WEF. Когда источник событий повторно подключается к серверу WEC, последняя позиция закладки отправляется устройству для использования в качестве отправной точки для возобновления переадресации событий. Если у клиента WEF нет событий для отправки, клиент WEF будет периодически подключаться для отправки пульса на сервер WEC, чтобы указать, что он активен. Это значение пульса можно настроить отдельно для каждой подписки.

Будет ли WEF работать в среде IPv4, IPv6 или смешанной среды IPv4/IPv6?

Да. WEF не зависит от транспорта и будет работать с IPv4 или IPv6.

Зашифрованы ли события WEF? Я вижу параметр HTTP/HTTPS!

В параметре домена подключение, используемое для передачи событий WEF, по умолчанию шифруется с помощью Kerberos (с NTLM в качестве резервного варианта, который можно отключить с помощью объекта групповой политики). Только сборщик WEF может расшифровать подключение. Кроме того, соединение между клиентом WEF и сервером WEC проходит взаимную проверку подлинности независимо от типа проверки подлинности (Kerberos или NTLM). Существуют параметры объекта групповой политики для принудительной проверки подлинности для использования только Kerberos.

Эта проверка подлинности и шифрование выполняются независимо от того, выбран ли http или HTTPS.

Параметр HTTPS доступен, если используется проверка подлинности на основе сертификата, в случаях, когда взаимная проверка подлинности на основе Kerberos не является параметром. SSL-сертификат и подготовленные клиентские сертификаты используются для обеспечения взаимной проверки подлинности.

Есть ли у клиентов WEF отдельный буфер для событий?

Локальный журнал событий клиентских компьютеров WEF — это буфер для WEF при потере подключения к серверу WEC. Чтобы увеличить размер буфера, увеличьте максимальный размер файла журнала событий, в котором выбираются события. Дополнительные сведения см. в разделе Приложение C. Параметры канала событий (включение и доступ к каналу).

Когда журнал событий перезаписывает существующие события (что приводит к потере данных, если устройство не подключено к сборщику событий), сборщику WEF не отправляется уведомление о потере событий от клиента. Также не существует индикатора того, что в потоке событий обнаружен разрыв.

Какой формат используется для переадресации событий?

WEF имеет два режима для перенаправленных событий. Значение по умолчанию — "Отрисованный текст", которое включает текстовое описание события, как оно отображается в Просмотр событий. Включение этого описания означает, что размер события фактически удваивается или утрояется в зависимости от размера отображаемого описания. Альтернативный режим — "События" (иногда называемый двоичным форматом), который представляет собой просто XML-код события, отправляемый в двоичном формате XML (как это было бы записано в evtx-файл).) Этот формат является компактным и может более чем удвоить объем событий, который может вместить один сервер WEC.

Подписку "testSubscription" можно настроить для использования формата Событий с помощью программы WECUTIL:

@rem required to set the DeliveryMaxItems or DeliveryMaxLatencyTime
Wecutil ss "testSubscription" /cf:Events

Как часто доставляются события WEF?

Параметры доставки событий являются частью параметров конфигурации подписки WEF. Существует три встроенных варианта доставки подписки: "Обычный", "Минимизировать пропускную способность" и "Минимизировать задержку". Четвертый универсальный вариант с именем "Пользовательский" доступен, но его нельзя выбрать или настроить с помощью пользовательского интерфейса WEF с помощью Просмотр событий. Параметр Настраиваемая доставка должен быть выбран и настроен с помощью приложения WECUTIL.EXE командной строки. Все параметры подписки определяют максимальное число событий и максимальный возраст событий. При превышении любого из них накопленные события отправляются сборщику событий.

В этой таблице перечислены встроенные варианты доставки:

Параметры оптимизации доставки событий Описание
Обычный Этот параметр обеспечивает надежную доставку событий и не пытается сэкономить пропускную способность. Это подходящий выбор, если вам не нужен более строгий контроль за использованием пропускной способности или вам не требуется перенаправление событий, доставленных как можно быстрее. Он использует режим доставки по запросу, пакетирует по 5 элементов одновременно и устанавливает время ожидания пакета в 15 минут.
Минимизация пропускной способности Этот параметр гарантирует, что использование пропускной способности сети для доставки событий строго контролируется. Это подходящий вариант, если вы хотите ограничить частоту сетевых подключений, выполненных для доставки событий. Он использует режим принудительной доставки и устанавливает время ожидания пакета в 6 часов. Кроме того, используется интервал пульса в 6 часов.
Минимизация задержки Этот параметр гарантирует, что события доставляются с минимальной задержкой. Это подходящий выбор, если вы собираете оповещения или критические события. Он использует режим принудительной доставки и устанавливает время ожидания пакета в 30 секунд.

Дополнительные сведения о вариантах доставки см. в разделе Настройка дополнительных параметров подписки.

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

@rem required to set the DeliveryMaxItems or DeliveryMaxLatencyTime
Wecutil ss "SubscriptionNameGoesHere" /cm:Custom
@rem set DeliveryMaxItems to 1 event
Wecutil ss "SubscriptionNameGoesHere" /dmi:1
@rem set DeliveryMaxLatencyTime to 10 ms
Wecutil ss "SubscriptionNameGoesHere" /dmlt:10

Разделы справки контролировать, какие устройства имеют доступ к подписке WEF?

Для исходных подписок. Каждая подписка WEF на сервере WEC имеет собственный список ACL для учетных записей компьютеров или групп безопасности, содержащих учетные записи компьютеров (не учетные записи пользователей), которым явно разрешено участвовать в этой подписке или которым явно запрещен доступ. Этот список ACL применяется только к одной подписке WEF (так как на данном сервере WEC может быть несколько подписок WEF), другие подписки WEF имеют собственный отдельный список ACL.

Для подписок, инициированных сборщиком: подписка содержит список компьютеров, с которых сервер WEC собирает события. Этот список управляется на сервере WEC, и учетные данные, используемые для подписки, должны иметь доступ к журналам событий из клиентов WEF. Учетные данные могут быть учетной записью компьютера или учетной записью домена.

Может ли клиент взаимодействовать с несколькими сборщиками событий WEF?

Да. Если требуется среда High-Availability, настройте несколько серверов WEC с одной конфигурацией подписки и опубликуйте оба URI сервера WEC в клиентах WEF. Клиенты WEF будут одновременно пересылать события в настроенные подписки на серверах WEC, если у них есть соответствующий доступ.

Каковы ограничения сервера WEC?

Существует три фактора, ограничивающие масштабируемость серверов WEC. Общее правило для стабильного сервера WEC на стандартном оборудовании планирует в среднем 3000 событий в секунду для всех настроенных подписок.

  • Дисковый ввод-вывод. Сервер WEC не обрабатывает и не проверяет полученное событие, а буферирует полученное событие, а затем записывает его в локальный файл журнала событий (ФАЙЛ EVTX). Скорость ведения журнала в файл EVTX ограничена скоростью записи на диск. Изоляция файла EVTX в собственном массиве или использование высокоскоростных дисков может увеличить количество событий в секунду, которые может получать один сервер WEC.

  • Сетевая Connections. Хотя источник WEF не поддерживает постоянное постоянное подключение к серверу WEC, он не отключается сразу после отправки событий. Это означает, что количество источников WEF, которые могут одновременно подключаться к серверу WEC, ограничено открытыми TCP-портами, доступными на сервере WEC.

  • Размер реестра. Для каждого уникального устройства, которое подключается к подписке WEF, существует раздел реестра (соответствующий полному доменному имени клиента WEF), созданный для хранения сведений о закладках и исходном пульсе. Если эти сведения не удаляются для удаления неактивных клиентов, со временем этот набор разделов реестра может увеличиться до неуправляемого размера.

    • Если подписка имеет >1000 источников WEF, подключающихся к ней в течение своего рабочего времени существования, также известных как источники WEF, Просмотр событий может перестать отвечать на запросы в течение нескольких минут при выборе узла Подписки в левой области навигации, но затем будет работать нормально.
    • В >50 000 источников WEF, Просмотр событий больше не является вариантом, и wecutil.exe (в составе Windows) должны использоваться для настройки подписок и управления ими.
    • При >100 000 источников WEF со временем существования реестр будет недоступен для чтения, и сервер WEC, скорее всего, придется перестроить.

Сведения о подписке

Ниже перечислены все элементы, собираемые каждой подпиской. Фактический XML-код подписки доступен в приложении. Эти элементы разделяются на базовые и целевые. Цель заключается в том, чтобы подписать все узлы на базовые показатели, а затем зарегистрировать (и удалить) узлы по мере необходимости в целевую подписку.

Базовая подписка

Хотя эта подписка представляется самой крупной подпиской, на самом деле это самый низкий том для каждого устройства. (Исключения должны быть разрешены для необычных устройств. Ожидается, что устройство, выполняющее сложные задачи, связанные с разработчиком, создаст необычно большой объем событий создания процесса и AppLocker.) Для этой подписки не требуется специальная настройка на клиентских устройствах для включения каналов событий или изменения разрешений канала.

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

Базовые требования к подписке

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

  • Примените политику аудита безопасности, которая является супер-набором рекомендуемой минимальной политики аудита. Дополнительные сведения см. в приложении A . Минимальная рекомендуемая минимальная политика аудита. Эта политика гарантирует, что журнал событий безопасности создает необходимые события.

  • Примените к устройствам по крайней мере политику AppLocker Audit-Only.

    • Если вы уже разрешаете или ограничиваете события с помощью AppLocker, это требование будет выполнено.
    • События AppLocker содержат полезную информацию, например сведения о хэшах файлов и цифровой подписи для исполняемых файлов и скриптов.
  • Включите отключенные каналы событий и задайте минимальный размер для современных файлов событий.

  • В настоящее время нет шаблона объекта групповой политики для включения или задания максимального размера для современных файлов событий. Это пороговое значение должно быть определено с помощью объекта групповой политики. Дополнительные сведения см. в разделе Приложение C. Параметры канала событий (включение и доступ к каналу).

Запрос события с заметками можно найти в следующем примере. Дополнительные сведения см. в разделе Приложение F . Запрос на событие подозрительной подписки с заметками.

  • События защиты от вредоносных программ из Microsoft Antimalware или Защитник Windows. Эти события можно легко настроить для любого конкретного продукта защиты от вредоносных программ, если он записывает данные в журнал событий Windows.

  • Журнал событий безопасности Процесс Создания событий.

  • События создания процесса AppLocker (EXE, скрипт, установка и выполнение упакованных приложений).

  • События изменения реестра. Дополнительные сведения см. в разделе Приложение B. Рекомендуемая минимальная политика ACL системы реестра.

  • Запуск и завершение работы ОС

    • События запуска включают версию операционной системы, уровень пакета обновления, версию QFE и режим загрузки.
  • Установка службы

    • Содержит имя службы, путь к образу и кто установил службу.
  • События аудита центра сертификации

    • Эти события применимы только к системам с установленной ролью центра сертификации.
    • Регистрирует запросы сертификатов и ответы.
  • События профиля пользователя

    • Использование временного профиля или невозможность создать профиль пользователя может указывать на то, что злоумышленник в интерактивном режиме входит на устройство, но не хочет оставлять постоянный профиль позади.
  • Сбой запуска службы

    • Коды сбоев локализованы, поэтому необходимо проверка dll сообщений для значений.
  • События доступа к сетевому ресурсу

    • Отфильтруйте общие папки IPC$ и /NetLogon, которые являются ожидаемыми и шумные.
  • Запуск запросов на завершение работы системы

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

  • Сеансы служб удаленных рабочих столов подключаются, повторно подключаются или отключаться.

  • События EMET, если установлен EMET.

  • События подключаемого модуля пересылки событий

    • Для мониторинга операций подписки WEF, таких как события частичного успеха. Это событие полезно для диагностики проблем с развертыванием.
  • Создание и удаление общих сетевых общей папки

    • Включает обнаружение несанкционированного создания общей папки.

      Примечание.

      Все общие папки создаются повторно при запуске устройства.

  • Сеансы входа

    • Успешный вход в интерактивном режиме (локальный и удаленный интерактивный/удаленный рабочий стол)
    • Успешный вход для служб для не встроенных учетных записей, таких как LocalSystem, LocalNetwork и т. д.
    • Успешный вход для пакетных сеансов
    • Закрытие сеанса входа— это события выхода для сеансов, не относящихся к сети.
  • отчеты об ошибках Windows (только события сбоя приложения)

    • Этот сеанс поможет обнаружить ранние признаки злоумышленника, не знакомого с корпоративной средой, с помощью целевой вредоносной программы.
  • События службы журналов событий

    • Ошибки, события запуска и события остановки для службы журнала событий Windows.
  • Журнал событий очищен (включая журнал событий безопасности)

    • Это событие может указывать на злоумышленника, который покрывает их следы.
  • Специальные привилегии, назначенные новому входу

    • Это назначение указывает, что во время входа пользователь является администратором или имеет достаточный доступ, чтобы стать администратором.
  • Попытки сеанса исходящих служб удаленных рабочих столов

    • Видимость потенциального плацдарм для злоумышленника
  • Системное время изменилось

  • Клиент SMB (подключения к сопоставленным дискам)

  • Проверка учетных данных учетной записи

    • Локальные учетные записи или учетные записи домена на контроллерах домена
  • Пользователь был добавлен или удален из локальной группы безопасности Администраторы.

  • Доступ к закрытому ключу API шифрования

    • Связан с объектами подписывания с помощью локально хранящегося закрытого ключа.
  • Создание и удаление задачи планировщика задач

    • Планировщик задач позволяет злоумышленникам выполнять код в указанное время, как LocalSystem.
  • Вход с явными учетными данными

    • Обнаружение изменений использования учетных данных злоумышленниками для доступа к дополнительным ресурсам.
  • События проверки владельца смарт-карты карта

    • Это событие определяет, когда используется смарт-карта.

Подозрительная подписка

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

  • Создание сеанса входа для сетевых сеансов

    • Включает анализ временных рядов сетевых графов.
  • События RADIUS и VPN

    • Полезно, если используется реализация MICROSOFT IAS RADIUS/VPN. Здесь показано назначение IP-адресов> пользователя с удаленным IP-адресом, подключенным к предприятию.
  • События цепочки объектов и сборок API шифрования X509

    • Обнаруживает известный недопустимый сертификат, ЦС или дочерний ЦС
    • Обнаруживает необычное использование CAPI процесса
  • Группы, назначенные локальному входу

    • Обеспечивает видимость для групп, которые обеспечивают доступ на уровне учетной записи.
    • Позволяет лучше планировать усилия по исправлению
    • Исключает хорошо известные встроенные системные учетные записи.
  • Завершение сеанса входа

    • Только для сеансов входа в сеть.
  • События подстановки DNS клиента

    • Возвращает процесс, выполненный dns-запросом, и результаты, возвращенные с DNS-сервера.
  • Завершение процесса

    • Позволяет проверять процессы, которые неожиданно завершались.
  • Проверка локальных учетных данных или вход с явными учетными данными

    • Создается, когда локальный SAM является полномочным для учетных данных учетной записи, для которых выполняется проверка подлинности.
    • Шум на контроллерах домена
    • На клиентских устройствах он создается только при входе с локальными учетными записями.
  • События аудита изменения реестра

    • Только при создании, изменении или удалении значения реестра.
  • Беспроводная проверка подлинности 802.1x

    • Обнаружение беспроводного подключения с одноранговым MAC-адресом
  • ведение журнала Windows PowerShell

    • Описывает Windows PowerShell 2.0 и более поздних версий, а также включает улучшения ведения журнала Windows PowerShell 5.0 для атак в памяти с помощью Windows PowerShell.
    • Включает Windows PowerShell ведение журнала удаленного взаимодействия
  • Событие "Драйвер загружен" платформы драйвера пользовательского режима

    • Может обнаружить, что USB-устройство загружает несколько драйверов устройств. Например, USB_STOR устройство загружает клавиатуру или сетевой драйвер.

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

Категория Подкатегория Параметры аудита
Вход в учетную запись Проверка учетных данных Успех и сбой
Управление учетными записями Управление группами безопасности Успешно
Управление учетными записями Управление учетными записями пользователей Успех и сбой
Управление учетными записями Управление учетными записями компьютера Успех и сбой
Управление учетными записями Другие события управления учетными записями Успех и сбой
Подробное отслеживание Создание процесса Успешно
Подробное отслеживание Завершение процесса Успешно
Вход и выход из системы Утверждения пользователей и устройств Не настроено
Вход и выход из системы Расширенный режим IPsec Не настроено
Вход и выход из системы Быстрый режим IPsec Не настроено
Вход и выход из системы Входа Успех и сбой
Вход и выход из системы Выход Успешно
Вход и выход из системы Другие события входа и выхода из системы Успех и сбой
Вход и выход из системы Специальный вход Успех и сбой
Вход и выход из системы Блокировка учетной записи Успешно
Доступ к объектам Созданное приложение Не настроено
Доступ к объектам Общая папка Успешно
Доступ к объектам Файловая система Не настроено
Доступ к объектам Другие события доступа к объектам Не настроено
Доступ к объектам Реестр Не настроено
Доступ к объектам Съемные носители Успешно
Изменение политики Изменение политики аудита Успех и сбой
Изменение политики Изменение политики Rule-Level MPSSVC Успех и сбой
Изменение политики Другие события изменения политики Успех и сбой
Изменение политики Изменение политики проверки подлинности Успех и сбой
Изменение политики Изменение политики авторизации Успех и сбой
Использование привилегий Использование конфиденциальных привилегий Не настроено
System Изменение состояния безопасности Успех и сбой
System Расширение системы безопасности Успех и сбой
System Целостность системы Успех и сбой

Ключи Run и RunOnce полезны для злоумышленников и сохраняемости вредоносных программ. Он позволяет выполнять код (или запускаться только один раз после удаления соответственно), когда пользователь входит в систему.

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

На следующих рисунках показано, как настроить эти разделы реестра.

список acl по умолчанию для ключа запуска.

acl по умолчанию для ключа runonce.

Приложение В. Параметры канала событий (включение и доступ к каналу) методы

Некоторые каналы отключены по умолчанию и должны быть включены. Для других пользователей, таких как Microsoft-Windows-CAPI2/Operational, доступ к каналу должен быть изменен, чтобы разрешить встроенной группе безопасности читателей журналов событий считывать данные из него.

Рекомендуемый и наиболее эффективный способ настройки — настройка базового объекта групповой политики для выполнения запланированной задачи для настройки каналов событий (включение, установка максимального размера и настройка доступа к каналу). Эта конфигурация вступит в силу при следующем цикле обновления объекта групповой политики и будет оказывать минимальное влияние на клиентское устройство.

Следующий фрагмент объекта групповой политики выполняет следующие задачи:

  • Включает канал событий Microsoft-Windows-Capi2/Operational .
  • Задает максимальный размер файла Для Microsoft-Windows-Capi2/Operational — 100 МБ.
  • Устанавливает максимальный размер файла Microsoft-Windows-AppLocker/EXE и DLL в 100 МБ.
  • Задает максимальный доступ к каналу для Microsoft-Windows-Capi2/Operational , чтобы включить встроенную группу безопасности читателей журнала событий.
  • Включает канал событий Microsoft-Windows-DriverFrameworks-UserMode/Operational .
  • Устанавливает максимальный размер файла Microsoft-Windows-DriverFrameworks-UserMode/Operational в 50 МБ.

настроить каналы событий.

В следующей таблице также содержатся шесть действий, которые необходимо настроить в объекте групповой политики:

Программа или скрипт Arguments
%SystemRoot%\System32\wevtutil.exe sl Microsoft-Windows-CAPI2/Operational /e:true
%SystemRoot%\System32\wevtutil.exe sl Microsoft-Windows-CAPI2/Operational /ms:102432768
%SystemRoot%\System32\wevtutil.exe sl "Microsoft-Windows-AppLocker/EXE и DLL" /ms:102432768
%SystemRoot%\System32\wevtutil.exe sl Microsoft-Windows-CAPI2/Operational /ca:"O:BAG:SYD:(A;; 0x7;; BA)(A;; 0x2;; AU)(A;; 0x1;; S-1-5-32-573)"
%SystemRoot%\System32\wevtutil.exe sl "Microsoft-Windows-DriverFrameworks-UserMode/Operational" /e:true
%SystemRoot%\System32\wevtutil.exe sl "Microsoft-Windows-DriverFrameworks-UserMode/Operational" /ms:52432896

Приложение D. Минимальный объект групповой политики для конфигурации клиента WEF

Ниже приведены минимальные шаги для работы WEF:

  1. Настройте универсальные коды ресурса (URI) сборщика.
  2. Запустите службу WinRM.
  3. Добавьте учетную запись сетевой службы во встроенную группу безопасности читателей журнала событий. Это добавление позволяет выполнять чтение из защищенного канала событий, например из канала событий безопасности.

настройте клиент wef.

Приложение E. Запрос на событие подписки с заметками

<QueryList>
  <Query Id="0" Path="System">
    <!-- Anti-malware *old* events, but only detect events (cuts down noise) -->
    <Select Path="System">*[System[Provider[@Name='Microsoft Antimalware'] and (EventID &gt;= 1116 and EventID &lt;= 1119)]]</Select>
  </Query>
  <!-- AppLocker EXE events or Script events -->
  <Query Id="1" Path="Microsoft-Windows-AppLocker/EXE and DLL">
    <Select Path="Microsoft-Windows-AppLocker/EXE and DLL">*[UserData[RuleAndFileData[PolicyName="EXE"]]]</Select>
    <Select Path="Microsoft-Windows-AppLocker/MSI and Script">*</Select>
  </Query>
  <Query Id="2" Path="Security">
    <!-- Wireless Lan 802.1x authentication events with Peer MAC address -->
    <Select Path="Security">*[System[(EventID=5632)]]</Select>
  </Query>
  <Query Id="3" Path="Microsoft-Windows-TaskScheduler/Operational">
    <!-- Task scheduler Task Registered (106),  Task Registration Deleted (141), Task Deleted (142) -->
    <Select Path="Microsoft-Windows-TaskScheduler/Operational">*[System[Provider[@Name='Microsoft-Windows-TaskScheduler'] and (EventID=106 or EventID=141 or EventID=142 )]]</Select>
    <Select Path="System">*[System[Provider[@Name='Microsoft-Windows-TaskScheduler'] and (EventID=106 or EventID=141 or EventID=142 )]]</Select>
  </Query>
  <Query Id="4" Path="System">
    <!-- System startup (12 - includes OS/SP/Version) and shutdown -->
    <Select Path="System">*[System[Provider[@Name='Microsoft-Windows-Kernel-General'] and (EventID=12 or EventID=13)]]</Select>
  </Query>
  <Query Id="5" Path="System">
    <!-- Service Install (7000), service start failure (7045), new service (4697) -->
    <Select Path="System">*[System[Provider[@Name='Service Control Manager'] and (EventID = 7000 or EventID=7045)]]</Select>
<Select Path="Security">*[System[(EventID=4697)]]</Select>
  </Query>
  <Query Id="6" Path="Security">
    <!-- TS Session reconnect (4778), TS Session disconnect (4779) -->
    <Select Path="Security">*[System[(EventID=4778 or EventID=4779)]]</Select>
  </Query>
  <Query Id="7" Path="Security">
    <!-- Network share object access without IPC$ and Netlogon shares -->
    <Select Path="Security">*[System[(EventID=5140)]] and (*[EventData[Data[@Name="ShareName"]!="\\*\IPC$"]]) and (*[EventData[Data[@Name="ShareName"]!="\\*\NetLogon"]])</Select>
  </Query>
  <Query Id="8" Path="Security">
    <!-- System Time Change (4616)  -->
    <Select Path="Security">*[System[(EventID=4616)]]</Select>
  </Query>
  <Query Id="9" Path="System">
    <!-- Shutdown initiate requests, with user, process and reason (if supplied) -->
    <Select Path="System">*[System[Provider[@Name='USER32'] and (EventID=1074)]]</Select>
  </Query>
  <!-- AppLocker packaged (Modern UI) app execution -->
  <Query Id="10" Path="Microsoft-Windows-AppLocker/Packaged app-Execution">
    <Select Path="Microsoft-Windows-AppLocker/Packaged app-Execution">*</Select>
  </Query>
  <!-- AppLocker packaged (Modern UI) app installation -->
  <Query Id="11" Path="Microsoft-Windows-AppLocker/Packaged app-Deployment">
    <Select Path="Microsoft-Windows-AppLocker/Packaged app-Deployment">*</Select>
  </Query>
  <Query Id="12" Path="Application">
    <!-- EMET events -->
    <Select Path="Application">*[System[Provider[@Name='EMET']]]</Select>
  </Query>
  <Query Id="13" Path="System">
    <!-- Event log service events -->
    <Select Path="System">*[System[Provider[@Name='Microsoft-Windows-Eventlog']]]</Select>
  </Query>
  <Query Id="14" Path="Security">
    <!-- Local logons without network or service events -->
    <Select Path="Security">*[System[(EventID=4624)]] and (*[EventData[Data[@Name="LogonType"]!="3"]]) and (*[EventData[Data[@Name="LogonType"]!="5"]])</Select>
  </Query>
  <Query Id="15" Path="Application">
    <!-- WER events for application crashes only -->
    <Select Path="Application">*[System[Provider[@Name='Windows Error Reporting']]] and (*[EventData[Data[3] ="APPCRASH"]])</Select>
  </Query>
  <Query Id="16" Path="Security">
    <!-- Security Log cleared events (1102), EventLog Service shutdown (1100)-->
    <Select Path="Security">*[System[(EventID=1102 or EventID = 1100)]]</Select>
  </Query>
  <Query Id="17" Path="System">
    <!-- Other Log cleared events (104)-->
    <Select Path="System">*[System[(EventID=104)]]</Select>
  </Query>
  <Query Id="18" Path="Security">
    <!--  user initiated logoff -->
    <Select Path="Security">*[System[(EventID=4647)]]</Select>
  </Query>
  <Query Id="19" Path="Security">
    <!-- user logoff for all non-network logon sessions-->
    <Select Path="Security">*[System[(EventID=4634)]] and (*[EventData[Data[@Name="LogonType"] != "3"]])</Select>
  </Query>
  <Query Id="20" Path="Security">
    <!-- Service logon events if the user account isn't LocalSystem, NetworkService, LocalService -->
    <Select Path="Security">*[System[(EventID=4624)]] and (*[EventData[Data[@Name="LogonType"]="5"]]) and (*[EventData[Data[@Name="TargetUserSid"] != "S-1-5-18"]]) and (*[EventData[Data[@Name="TargetUserSid"] != "S-1-5-19"]]) and (*[EventData[Data[@Name="TargetUserSid"] != "S-1-5-20"]])</Select>
  </Query>
  <Query Id="21" Path="Security">
    <!-- Network Share create (5142), Network Share Delete (5144)  -->
    <Select Path="Security">*[System[(EventID=5142 or EventID=5144)]]</Select>
  </Query>
  <Query Id="22" Path="Security">
    <!-- Process Create (4688) -->
    <Select Path="Security">*[System[EventID=4688]]</Select>
  </Query>
  <Query Id="23" Path="Security">
    <!-- Event log service events specific to Security channel -->
    <Select Path="Security">*[System[Provider[@Name='Microsoft-Windows-Eventlog']]]</Select>
  </Query>
  <Query Id="26" Path="Security">
    <!-- Special Privileges (Admin-equivalent Access) assigned to new logon, excluding LocalSystem-->
    <Select Path="Security">*[System[(EventID=4672)]]</Select>
    <Suppress Path="Security">*[EventData[Data[1]="S-1-5-18"]]</Suppress>
  </Query>
  <Query Id="27" Path="Security">
    <!-- New user added to local security group-->
    <Select Path="Security">*[System[(EventID=4732)]]</Select>
  </Query>
  <Query Id="28" Path="Security">
    <!-- New user added to global security group-->
    <Select Path="Security">*[System[(EventID=4728)]]</Select>
  </Query>
  <Query Id="29" Path="Security">
    <!-- New user added to universal security group-->
    <Select Path="Security">*[System[(EventID=4756)]]</Select>
  </Query>
  <Query Id="30" Path="Security">
    <!-- User removed from local Administrators group-->
    <Select Path="Security">*[System[(EventID=4733)]] and (*[EventData[Data[@Name="TargetUserName"]="Administrators"]])</Select>
  </Query>
  <Query Id="31" Path="Microsoft-Windows-TerminalServices-RDPClient/Operational">
    <!-- Log attempted TS connect to remote server -->
    <Select Path="Microsoft-Windows-TerminalServices-RDPClient/Operational">*[System[(EventID=1024)]]</Select>
  </Query>
  <Query Id="32" Path="Security">
    <!-- Certificate Services received certificate request (4886), Approved and Certificate issued (4887), Denied request (4888) -->
    <Select Path="Security">*[System[(EventID=4886 or EventID=4887 or EventID=4888)]]</Select>
  </Query>
  <Query Id="34" Path="Security">
    <!-- New User Account Created(4720), User Account Enabled (4722), User Account Disabled (4725), User Account Deleted (4726) -->
    <Select Path="Security">*[System[(EventID=4720 or EventID=4722 or EventID=4725 or EventID=4726)]]</Select>
  </Query>
  <Query Id="35" Path="Microsoft-Windows-SmartCard-Audit/Authentication">
    <!-- Gets all Smart-card Card-Holder Verification (CHV) events (success and failure) performed on the host. -->
    <Select Path="Microsoft-Windows-SmartCard-Audit/Authentication">*</Select>
  </Query>
  <Query Id="36" Path="Microsoft-Windows-SMBClient/Operational">
    <!-- get all UNC/mapped drive successful connection -->
    <Select Path="Microsoft-Windows-SMBClient/Operational">*[System[(EventID=30622 or EventID=30624)]]</Select>
  </Query>
  <Query Id="37" Path="Application">
    <!-- User logging on with Temporary profile (1511), cannot create profile, using temporary profile (1518)-->
    <Select Path="Application">*[System[Provider[@Name='Microsoft-Windows-User Profiles Service'] and (EventID=1511 or EventID=1518)]]</Select>
  </Query>
  <Query Id="39" Path="Microsoft-Windows-Sysmon/Operational">
    <!-- Modern SysMon event provider-->
    <Select Path="Microsoft-Windows-Sysmon/Operational">*</Select>
  </Query>
  <Query Id="40" Path="Application">
    <!-- Application crash/hang events, similar to WER/1001. These include full path to faulting EXE/Module.-->
    <Select Path="Application">*[System[Provider[@Name='Application Error'] and (EventID=1000)]]</Select>
    <Select Path="Application">*[System[Provider[@Name='Application Hang'] and (EventID=1002)]]</Select>
  </Query>
  <Query Id="41" Path="Microsoft-Windows-Windows Defender/Operational">
    <!-- Modern Windows Defender event provider Detection events (1006-1009) and (1116-1119) -->
    <Select Path="Microsoft-Windows-Windows Defender/Operational">*[System[( (EventID &gt;= 1006 and EventID &lt;= 1009) )]]</Select>
    <Select Path="Microsoft-Windows-Windows Defender/Operational">*[System[( (EventID &gt;= 1116 and EventID &lt;= 1119) )]]</Select>
  </Query>
  <Query Id="42" Path="Security">
    <!-- An account Failed to Log on events -->
    <Select Path="Security">*[System[(EventID=4625)]] and (*[EventData[Data[@Name="LogonType"]!="2"]]) </Select>
  </Query>

</QueryList>

Приложение F. Запрос на событие подозрительной подписки с заметками

<QueryList>
  <Query Id="0" Path="Security">
    <!-- Network logon events-->
    <Select Path="Security">*[System[(EventID=4624)]] and (*[EventData[Data[@Name="LogonType"]="3"]])</Select>
  </Query>
  <Query Id="1" Path="System">
    <!-- RADIUS authentication events User Assigned IP address (20274), User successfully authenticated (20250), User Disconnected (20275)  -->
    <Select Path="System">*[System[Provider[@Name='RemoteAccess'] and (EventID=20274 or EventID=20250 or EventID=20275)]]</Select>
  </Query>
  <Query Id="2" Path="Microsoft-Windows-CAPI2/Operational">
    <!-- CAPI events Build Chain (11), Private Key accessed (70), X509 object (90)-->
    <Select Path="Microsoft-Windows-CAPI2/Operational">*[System[(EventID=11 or EventID=70 or EventID=90)]]</Select>
  </Query>
  <Query Id="3" Path="Security">
    <!-- CA stop/Start events CA Service Stopped (4880), CA Service Started (4881), CA DB row(s) deleted (4896), CA Template loaded (4898) -->
    <Select Path="Security">*[System[(EventID=4880 or EventID = 4881 or EventID = 4896 or EventID = 4898)]]</Select>
  </Query>
  <Query Id="4" Path="Microsoft-Windows-LSA/Operational">
    <!-- Groups assigned to new login (except for well known, built-in accounts)-->
    <Select Path="Microsoft-Windows-LSA/Operational">*[System[(EventID=300)]] and (*[EventData[Data[@Name="TargetUserSid"] != "S-1-5-20"]]) and (*[EventData[Data[@Name="TargetUserSid"] != "S-1-5-18"]]) and (*[EventData[Data[@Name="TargetUserSid"] != "S-1-5-19"]])</Select>
  </Query>
  <Query Id="5" Path="Security">
    <!-- Logoff events - for Network Logon events-->
    <Select Path="Security">*[System[(EventID=4634)]] and (*[EventData[Data[@Name="LogonType"] = "3"]])</Select>
  </Query>
  <Query Id="6" Path="Security">
    <!-- RRAS events - only generated on Microsoft IAS server -->
    <Select Path="Security">*[System[( (EventID &gt;= 6272 and EventID &lt;= 6280) )]]</Select>
  </Query>
  <Query Id="7" Path="Microsoft-Windows-DNS-Client/Operational">
    <!-- DNS Client events Query Completed (3008) -->
    <Select Path="Microsoft-Windows-DNS-Client/Operational">*[System[(EventID=3008)]]</Select>
<!-- suppresses local machine name resolution events -->
<Suppress Path="Microsoft-Windows-DNS-Client/Operational">*[EventData[Data[@Name="QueryOptions"]="140737488355328"]]</Suppress>
<!-- suppresses empty name resolution events -->
<Suppress Path="Microsoft-Windows-DNS-Client/Operational">*[EventData[Data[@Name="QueryResults"]=""]]</Suppress>
  </Query>
  <Query Id="8" Path="Security">
    <!-- Process Terminate (4689) -->
    <Select Path="Security">*[System[(EventID = 4689)]]</Select>
  </Query>
  <Query Id="9" Path="Security">
    <!-- Local credential authentication events (4776), Logon with explicit credentials (4648) -->
    <Select Path="Security">*[System[(EventID=4776 or EventID=4648)]]</Select>
  </Query>
  <Query Id="10" Path="Security">
    <!-- Registry modified events for Operations: New Registry Value created (%%1904), Existing Registry Value modified (%%1905), Registry Value Deleted (%%1906) -->
    <Select Path="Security">*[System[(EventID=4657)]] and ((*[EventData[Data[@Name="OperationType"] = "%%1904"]]) or (*[EventData[Data[@Name="OperationType"] = "%%1905"]]) or (*[EventData[Data[@Name="OperationType"] = "%%1906"]]))</Select>
  </Query>
  <Query Id="11" Path="Security">
    <!-- Request made to authenticate to Wireless network (including Peer MAC (5632) -->
    <Select Path="Security">*[System[(EventID=5632)]]</Select>
  </Query>
  <Query Id="12" Path="Microsoft-Windows-PowerShell/Operational">
    <!-- PowerShell execute block activity (4103), Remote Command(4104), Start Command(4105), Stop Command(4106) -->
    <Select Path="Microsoft-Windows-PowerShell/Operational">*[System[(EventID=4103 or EventID=4104 or EventID=4105 or EventID=4106)]]</Select>
  </Query>
  <Query Id="13" Path="Microsoft-Windows-DriverFrameworks-UserMode/Operational">
    <!-- Detect User-Mode drivers loaded - for potential BadUSB detection. -->
    <Select Path="Microsoft-Windows-DriverFrameworks-UserMode/Operational">*[System[(EventID=2004)]]</Select>
  </Query>
<Query Id="14" Path="Windows PowerShell">
    <!-- Legacy PowerShell pipeline execution details (800) -->
    <Select Path="Windows PowerShell">*[System[(EventID=800)]]</Select>
  </Query>
</QueryList>

Приложение G. Сетевые ресурсы

Дополнительные сведения можно получить по следующим ссылкам: