Использование собственного машинного обучения (ML) в Microsoft Sentinel

Примечание.

Сведения о доступности функций в облаках для государственных организаций США см. в Microsoft Sentinel таблицах доступности облачных функций для клиентов из государственных организаций США.

Машинное обучение (ML) является одной из основных основ Microsoft Sentinel и одним из основных атрибутов, которые отличают его друг от друга. Microsoft Sentinel предоставляет ML в нескольких возможностях: он встроен в подсистему корреляции Fusion и записные книжки Jupyter, а также доступен в недавно появившейся платформе Build-Your-Own ML (BYO ML).

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

платформа машинного обучения

Что такое платформа "Использование собственного машинного обучения" (BYO-ML)?

Для организаций, которые имеют ресурсы машинного обучения и хотели бы создавать настраиваемые модели машинного обучения для своих уникальных бизнес-потребностей, мы предлагаем платформу BYO-ML. Платформа использует среду Apache Spark Azure Databricks/ и Jupyter Notebooks для создания среды машинного обучения. Он предоставляет следующие компоненты:

  • пакет BYO-ML, который включает библиотеки, которые помогают получать доступ к данным и отправлять результаты обратно в Log Analytics (LA), что позволяет интегрировать результаты с обнаружением, исследованием и охотой.

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

  • примеры записных книжек для обучения модели и планирования оценки модели.

Кроме того, вы можете использовать собственные модели машинного обучения и (или) собственную среду Spark для интеграции с Microsoft Sentinel.

С помощью платформы BYO-ML вы можете приступить к созданию собственных моделей машинного обучения:

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

  • Пакет, интегрированный со средой Spark, уменьшает сложности и препятствия при управлении инфраструктурой.

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

Варианты использования

Платформа и пакет BYO-ML значительно сокращают время и усилия, необходимые для создания собственных средств обнаружения машинного обучения, и они позволяют решать конкретные проблемы безопасности в Microsoft Sentinel. Платформа поддерживает следующие варианты использования:

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

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

Создайте собственную модель: Создайте собственную модель с нуля с помощью платформы и служебных программ BYO-ML Microsoft Sentinel.

Интеграция среды Databricks/Spark: Интегрируйте существующую среду Databricks/Spark в Microsoft Sentinel и используйте библиотеки и шаблоны BYO-ML для создания моделей машинного обучения для уникальных ситуаций.

Импортируйте собственную модель машинного обучения: Вы можете импортировать собственные модели машинного обучения и использовать платформу BYO-ML и служебные программы для их интеграции с Microsoft Sentinel.

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

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

В этой статье описаны компоненты платформы BYO-ML и способы использования платформы и алгоритма доступа к аномальным ресурсам для предоставления настраиваемого обнаружения машинного обучения с помощью Microsoft Sentinel.

среда Azure Databricks/Spark

Apache Spark сделал шаг вперед в упрощении больших данных, предоставив единую платформу для создания конвейеров данных. Azure Databricks делает это еще дальше, предоставляя облачную платформу с нулевым управлением, созданную на основе Spark. Мы рекомендуем использовать Databricks для платформы BYO-ML, чтобы вы могли сосредоточиться на поиске ответов, которые оказывают непосредственное влияние на ваш бизнес, а не на решении проблем с конвейерами данных и платформой.

Если у вас уже есть Databricks или любая другая среда Spark и вы предпочитаете использовать существующую настройку, пакет BYO-ML также будет работать с ними.

Пакет BYO-ML

Пакет BYO ML включает в себя рекомендации и исследования корпорации Майкрософт в интерфейсной части ML для обеспечения безопасности. В этом пакете мы предоставляем следующий список служебных программ, записных книжек и шаблонов алгоритмов для проблем безопасности.

Имя файла Описание
azure_sentinel_utilities.whl Содержит утилиты для чтения BLOB-объектов из Azure и записи данных в Log Analytics.
AnomalousRASampleData Блокнот демонстрирует использование модели Anomalous Resource Access в Microsoft Sentinel на сгенерированных примерах данных для обучения и тестирования.
AnomalousRATraining.ipynb Записная книжка для обучения алгоритма, сборки и сохранения моделей.
AnomalousRAScoring.ipynb Записная книжка для планирования запуска модели, визуализации результата и записи оценки обратно в Microsoft Sentinel.

Первый предлагаемый шаблон алгоритма МАШИНного обучения предназначен для обнаружения аномального доступа к ресурсам. Он основан на алгоритме совместной фильтрации и обучается с помощью журналов доступа к общей папке Windows (события безопасности с идентификатором события 5140). Ключевая информация, необходимая для этой модели в журнале, — это связывание пользователей и ресурсов, к которые осуществляется доступ.

Пример: пошаговое руководство по обнаружению аномального доступа к общему файловому ресурсу

Теперь, когда вы ознакомились с ключевыми компонентами платформы BYO-ML, ниже приведен пример использования платформы и компонентов для предоставления настраиваемого обнаружения машинного обучения.

Настройка среды Databricks/Spark

Если у вас еще нет среды Databricks, вам потребуется настроить собственную среду Databricks. См. документ Databricks quickstart для получения инструкций.

Инструкция по автоматическому экспорту

Чтобы создать пользовательские модели машинного обучения на основе собственных данных в Microsoft Sentinel, необходимо экспортировать данные из Log Analytics в хранилище BLOB-объектов или ресурс концентратора событий, чтобы модель машинного обучения могла получить к ним доступ из Databricks. Узнайте, как принимать данные в Microsoft Sentinel.

Для этого примера необходимо, чтобы ваши обучающие данные для журнала File Share Access находились в хранилище BLOB-объектов Azure. Формат данных описан в записной книжке и библиотеках.

Вы можете автоматически экспортировать данные из Log Analytics с помощью интерфейса командной строки Azure.

Для выполнения команд вам должна быть назначена роль участника в рабочей области Log Analytics, учетной записи хранения и ресурсе EventHub.

Ниже приведен пример набора команд для настройки автоматического экспорта:


az –version

# Login with Azure CLI
az login

# List all Log Analytics clusters
az monitor log-analytics cluster list

# Set to specific subscription
az account set --subscription "SUBSCRIPTION_NAME"
 
# Export to Storage - all tables
az monitor log-analytics workspace data-export create --resource-group "RG_NAME" --workspace-name "WS_NAME" -n LAExportCLIStr --destination "DESTINATION_NAME" --enable "true" --tables SecurityEvent
 
# Export to EventHub - all tables
az monitor log-analytics workspace data-export create --resource-group "RG_NAME" --workspace-name "WS_NAME" -n LAExportCLIEH --destination "DESTINATION_NAME" --enable "true" --tables ["SecurityEvent","Heartbeat"]

# List export settings
az monitor log-analytics workspace data-export list --resource-group "RG_NAME" --workspace-name "WS_NAME"

# Delete export setting
az monitor log-analytics workspace data-export delete --resource-group "RG_NAME" --workspace-name "WS_NAME" --name "NAME"

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

Для пользовательских данных, которые не поддерживаются автоэкспортом Log Analytics, можно использовать Logic App или другие решения для переноса данных. Вы можете ознакомиться с блогом «Экспорт данных Log Analytics в хранилище BLOB-объектов» и скриптом.

Корреляция с данными за пределами Microsoft Sentinel

Вы также можете перенести данные из внешних источников вне Microsoft Sentinel в хранилище BLOB-объектов или в Центр событий и сопоставить эти данные с данными Microsoft Sentinel, чтобы строить свои модели машинного обучения.

Скопируйте пакет BYO-ML из репозитория Microsoft Sentinel GitHub, упомянутого ранее, в среду Databricks. Затем откройте записные книжки и следуйте инструкциям в записной книжке, чтобы установить необходимые библиотеки в кластерах.

Обучение модели и оценка

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

Запись результатов в Log Analytics

Получив запланированную оценку, вы можете использовать модуль в записной книжке оценки, чтобы записать результаты оценки в рабочую область Log Analytics, связанную с экземпляром Microsoft Sentinel.

Проверка результатов в Microsoft Sentinel

Чтобы просмотреть результаты оценки вместе со связанными данными журнала, вернитесь на портал Microsoft Sentinel. В разделе Журналы> пользовательских журналов вы увидите результаты в таблице AnomalousResourceAccessResult_CL (или собственном имени настраиваемой таблицы). Вы можете использовать эти результаты, чтобы улучшить свои исследования и охоту.

журналы аномального доступа к ресурсам

Создание настраиваемого правила аналитики с результатами машинного обучения

Убедившись, что результаты машинного обучения находятся в таблице пользовательских журналов и вы удовлетворены точностью оценок, вы можете создать обнаружение на основе результатов. Перейдите в раздел Аналитика на портале Microsoft Sentinel и создайте новое правило обнаружения. Ниже приведен пример запроса, используемого для создания обнаружения.

создание настраиваемого правила аналитики для обнаружения B Y O M L

Просмотр инцидентов и реагирование на них

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

Дальнейшие действия

В этом документе вы узнали, как использовать платформу BYO-ML Microsoft Sentinel для создания или импорта собственных алгоритмов машинного обучения для анализа данных и обнаружения угроз.

  • Ознакомьтесь с публикациями о машинном обучении и многими другими актуальными темами в блоге Microsoft Sentinel.