Поделиться через


Потоковая передача и фильтрация данных с DNS-серверов Windows с помощью соединителя AMA

В этой статье описывается, как использовать соединитель агента Azure Monitor (AMA) для потоковой передачи и фильтрации событий из журналов DNS-сервера Windows. Затем можно анализировать данные для защиты DNS-серверов от угроз и атак.

AMA и его расширение DNS устанавливаются на сервере Windows Server для передачи данных из аналитических журналов DNS в рабочую область Microsoft Sentinel. Сведения о соединителе.

Обзор

Почему важно отслеживать действия DNS

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

Ниже перечислены некоторые известные угрозы, предназначенные для DNS-серверов:

  • Атаки DDoS, направленные на DNS-серверы
  • Атаки DDoS с DNS-усилением
  • Перехват DNS
  • Туннелирование DNS
  • подделка данных DNS;
  • Спуфинг DNS
  • Атака NXDOMAIN
  • Атаки на фантомный домен

Соединитель "Событий Windows DNS через AMA"

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

С помощью соединителя вы можете:

  • определить клиенты, которые пытаются разрешить вредоносные доменные имена;
  • просмотреть и отследить загрузки запросов на DNS-серверах;
  • просмотреть ошибки при регистрации динамических DNS.
  • определить часто запрашиваемые доменные имена и клиенты, отправляющие много запросов;
  • определить устаревшие записи ресурсов;
  • просмотреть все журналы, связанные с DNS, в одном месте.

Как коллекция работает с соединителем "События Windows DNS через AMA"

  1. Соединитель AMA использует установленное расширение DNS для сбора и анализа журналов.

    Примечание.

    Соединитель "События Windows DNS через AMA" в настоящее время поддерживают только действия событий аналитики.

  2. Соединитель передает события в рабочую область Microsoft Sentinel для дальнейшего анализа.

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

Нормализация с помощью ASIM

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

Для средства синтаксического анализа источника, который объединяет все DNS-данные и гарантирует, что анализ выполняется во всех настроенных источниках, используйте средство _Im_Dnsсинтаксического анализа ASIM DNS.

Средство синтаксического анализа ASIM дополняет собственную таблицу ASimDnsActivityLogs. Хотя собственная таблица совместима с ASIM, средство синтаксического анализа необходимо для добавления таких возможностей, как псевдонимы, доступные только во время запроса, и для объединения ASimDnsActivityLogs с другими источниками данных DNS.

Схема DNS ASIM представляет действие протокола DNS, зарегистрированное на DNS-сервере Windows в аналитических журналах. Схема регулируется официальными списками параметров и RFC, определяющими поля и значения.

См. список полей DNS-сервера Windows, преобразованных в нормализованные имена полей.

Настройка DNS Windows через соединитель AMA

Соединитель можно настроить двумя способами:

  • Портал Microsoft Sentinel. С помощью этого варианта можно создавать, администрировать и удалять одно правило сбора данных для каждой рабочей области. Даже если вы определяете несколько правил сбора данных с помощью API, на портале отображается только одно правило.
  • API. С помощью этого варианта можно создавать, администрировать и удалять несколько правил сбора данных.

Необходимые компоненты

Прежде чем начать, убедитесь в том, что у вас есть:

  • Включенное решение Microsoft Sentinel.
  • Определенная рабочая область Microsoft Sentinel.
  • Windows Server 2012 R2 с исправлением для аудита и более поздние версии.
  • DNS-сервер Windows.
  • Чтобы собирать события из любой системы, которая не является виртуальной машиной Azure, убедитесь, что установлен Azure Arc. Установите и включите Azure Arc перед включением соединителя на основе агента Azure Monitor. Это требование включает:
    • Серверы Windows, установленные на физических компьютерах
    • Серверы Windows, установленные на локальных виртуальных машинах
    • Серверы Windows, установленные на виртуальных машинах в облаках, отличных от Azure

Настройка соединителя на портале Microsoft Sentinel (пользовательский интерфейс)

Откройте страницу соединителя и создайте DCR.

  1. Войдите на портал Azure и перейдите к службе Microsoft Sentinel.
  2. В колонке Соединители данных в строке поиска введите DNS.
  3. Выберите события Windows DNS через соединитель AMA.
  4. Под описанием соединителя выберите Открыть страницу соединителя.
  5. В области Конфигурации выберите Создать правило сбора данных. Вы можете создать одно правило сбора данных для каждой рабочей области. Если необходимо создать несколько правил сбора данных, используйте API.

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

Снимок экрана: создание нового правила сбора данных для соединителя

Определение ресурсов (виртуальные машины)

  1. Перейдите на вкладку Ресурсы и выберите Добавить ресурсы.

  2. Выберите виртуальные машины, на которых нужно установить соединитель для сбора журналов.

    Снимок экрана: выбор ресурсов для соединителя

  3. Просмотрите изменения и нажмите кнопку Сохранить>Применить.

Фильтрация нежелательных событий

При использовании фильтров вы исключаете событие, указанное фильтром. Другими словами, Microsoft Sentinel не собирает данные для указанного события. Хотя этот шаг не является обязательным, он может помочь снизить затраты и упростить рассмотрение событий.

Создание фильтров:

  1. На странице соединителя в области Конфигурация выберите Добавить фильтры сбора данных.

  2. Введите имя фильтра и выберите тип фильтра. Тип фильтра — это параметр, который уменьшает количество собранных событий. Параметры нормализуются в соответствии с нормализованной схемой DNS. См. список доступных полей для фильтрации.

    Снимок экрана: создание фильтра для соединителя

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

    Снимок экрана: добавление полей в фильтр для соединителя

  4. Чтобы добавить сложные фильтры, выберите " Добавить поле исключения" для фильтрации и добавьте соответствующее поле. См. примеры в разделе "Использование расширенных фильтров" ниже.

  5. Чтобы добавить новые фильтры, нажмите кнопку "Добавить новый фильтр исключения".

  6. После завершения добавления фильтров нажмите кнопку "Добавить".

  7. Вернитесь на главную страницу соединителя, выберите "Применить изменения ", чтобы сохранить и развернуть фильтры в соединителях. Чтобы изменить или удалить существующие фильтры или поля, выберите значки редактирования или удаления в таблице в области конфигурации .

  8. Чтобы добавить поля или фильтры после первоначального развертывания, снова выберите " Добавить фильтры сбора данных".

Настройка соединителя с помощью API

Вы можете создавать правила сбора данных с помощью API. Используйте этот вариант, если необходимо создать несколько правил сбора данных.

Используйте этот пример в качестве шаблона для создания или обновления DCR:

URL-адрес запроса и заголовок


PUT 

    https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dataCollectionRuleName}?api-version=2019-11-01-preview 

Текст запроса


{
    "properties": {
        "dataSources": {
            "windowsEventLogs": [],
            "extensions": [
                {
                    "streams": [
                        "Microsoft-ASimDnsActivityLogs"
                    ],
                    "extensionName": "MicrosoftDnsAgent",
                    "extensionSettings": {
                        "Filters": [
                            {
                                "FilterName": "SampleFilter",
                                "Rules": [
                                    {
                                        "Field": "EventOriginalType",
                                        "FieldValues": [
                                            "260"
                                        ]
                                    }
                                ]
                            }
                        ]
                    },
                    "name": "SampleDns"
                }
            ]
        },
        "destinations": {
            "logAnalytics": [
                {
                    "workspaceResourceId": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.OperationalInsights/workspaces/{sentinelWorkspaceName}",
                    "workspaceId": {WorkspaceGuid}",
                    "name": "WorkspaceDestination"
                }
            ]
        },
        "dataFlows": [
            {
                "streams": [
                    "Microsoft-ASimDnsActivityLogs"
                ],
                "destinations": [
                    " WorkspaceDestination "
                ]
            }
        ],
    },
    "location": "eastus2",
    "tags": {},
    "kind": "Windows",
    "id":"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Insights/dataCollectionRules/{workspaceName}-microsoft-sentinel-asimdnsactivitylogs ",
    "name": " {workspaceName}-microsoft-sentinel-asimdnsactivitylogs ",
    "type": "Microsoft.Insights/dataCollectionRules",
}

Использование дополнительных фильтров

Журналы событий DNS-сервера могут содержать огромное количество событий. Вы можете использовать расширенную фильтрацию, чтобы отфильтровывать ненужные события перед отправкой данных, экономя ценное время и затраты. Фильтры удаляют ненужные данные из потока событий, отправленных в рабочую область.

Фильтры основаны на сочетании множества полей.

  • Для каждого поля можно указать несколько значений, используя список с разделителями-запятыми.
  • Чтобы создать составные фильтры, используйте различные поля со связью AND.
  • Чтобы объединить различные фильтры, используйте связь OR между ними.

Просмотрите доступные поля для фильтрации.

Использование подстановочных знаков

В расширенных фильтрах можно использовать подстановочные знаки. При использовании подстановочных знаков ознакомьтесь со следующими рекомендациями:

  • Ставьте точку после каждой звездочки (*.).
  • Не ставьте пробелы между списками доменов.
  • Подстановочные знаки применяются только к поддоменам домена, в том числе www.domain.com, независимо от протокола. Например, если вы используете *.domain.com в расширенном фильтре:
    • Фильтр применяется к www.domain.com и subdomain.domain.com независимо от протокола (HTTPS, FTP и т. д.).
    • Фильтр не применяется к domain.com. Чтобы применить фильтр domain.com, укажите домен напрямую без использования подстановочного знака.

Примеры расширенных фильтров

Не собирать идентификаторы определенных событий

Этот фильтр указывает соединителю не собирать EventID 256, EventID 257 или EventID 260 с IPv6-адресами.

Использование портала Microsoft Sentinel:

  1. Создайте фильтр с полем EventOriginalType с помощью оператора Equals со значениями 256, 257 и 260.

    Снимок экрана: фильтрация идентификаторов событий для соединителя

  2. Создайте фильтр с заданным выше полем EventOriginalType с использованием оператора And, включая поле DnsQueryTypeName, для которого задано значение AAAA.

    Снимок экрана: фильтрация идентификаторов событий и IPv6-адресов для соединителя

Использование API:

"Filters": [
    {
        "FilterName": "SampleFilter",
        "Rules": [
            {
                "Field": "EventOriginalType",
                "FieldValues": [
                    "256", "257", "260"                                                                              
                ]
            },
            {
                "Field": "DnsQueryTypeName",
                "FieldValues": [
                    "AAAA"                                        
                ]
            }
        ]
    },
    {
        "FilterName": "EventResultDetails",
        "Rules": [
            {
                "Field": "EventOriginalType",
                "FieldValues": [
                    "230"                                        
                ]
            },
            {
                "Field": "EventResultDetails",
                "FieldValues": [
                    "BADKEY","NOTZONE"                                        
                ]
            }
        ]
    }
]

Не собирать события с определенными доменами

Этот фильтр указывает соединителю не собирать события из каких-либо поддоменов microsoft.com, google.com, amazon.com или событий из facebook.com или center.local.

Использование портала Microsoft Sentinel:

Задайте поле DnsQuery с помощью оператора Equals с списком *.microsoft.com,*.google.com,facebook.com,*.amazon.com,center.local.

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

Снимок экрана: фильтрация доменов для соединителя

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

Использование API:

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

"Filters": [ 

    { 

        "FilterName": "SampleFilter", 

        "Rules": [ 

            { 

                "Field": "DnsQuery", 

                "FieldValues": [ 

                    "*.microsoft.com", "*.google.com", "facebook.com", "*.amazon.com","center.local"                                                                               

                ] 

            }, 

         } 

    } 

] 

Следующие шаги

Из этой статьи вы узнали, как настроить соединитель "События Windows DNS через AMA" для отправки данных и фильтрации журналов Windows DNS. Ознакомьтесь с дополнительными сведениями о Microsoft Sentinel в следующих статьях: