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

Основой Azure Sentinel является хранилище данных. Он сочетает высокопроизводительные запросы, динамическую схему и масштабируется до больших объемов данных. Портал Azure и все средства Azure Sentinel используют общий интерфейс API для доступа к этому хранилищу данных. Этот же интерфейс API доступен для внешних средств, таких как записные книжки Jupyter и Python. Хотя многие распространенные задачи можно выполнять на портале, среда Jupyter расширяет возможности работы с данными. Она сочетает в себе полную программируемость с огромной коллекцией библиотек для машинного обучения, визуализации и анализа данных. Эти особенности делают Jupyter привлекательным инструментом для анализа безопасности и охоты на угрозы.

пример записной книжки

Мы включили интерфейс Jupyter в портал Azure, чтобы упростить создание и запуск записных книжек для анализа данных. Библиотека Kqlmagic служит посредником, позволяющим брать запросы из Azure Sentinel и выполнять их непосредственно внутри записной книжки. В запросах используется язык запросов Kusto. В состав Azure Sentinel включено несколько записных книжек, разработанных аналитиками корпорации Майкрософт по безопасности. Некоторые из этих записных книжек созданы для конкретного сценария и могут использоваться "как есть". Другие служат примерами для демонстрации методов и возможностей, которые можно использовать "как есть" или адаптировать для использования в собственных записных книжках. Другие записные книжки также могут быть импортированы из сообщества Azure Sentinel Community.

Интегрированный интерфейс Jupyter использует Записные книжки Azure для хранения записных книжек, общего доступа к ним и выполнения. Эти записные книжки также можно запускать локально, если на компьютере есть среда Python и Jupyter, или в других средах JupterHub, таких как Azure Databricks.

Записные книжки состоят из двух компонентов:

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

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

В записных книжках Azure Sentinel используются многие популярные библиотеки Python, такие как pandas, matplotlib, bokeh и другие. Кроме того, существует множество других пакетов Python, охватывающих следующие области:

  • визуализация и графика;
  • обработка и анализ данных;
  • статистика и числовые вычисления;
  • машинное и глубокое обучение.

Мы также выпустили ряд средств защиты Jupyter с открытым кодом в пакете msticpy. Этот пакет используется во многих включенных записных книжках. Средства msticpy предназначены специально для создания записных книжек для охоты и исследования угроз. Мы активно работаем над новыми функциями и улучшениями.

Репозиторий GitHub сообщества Azure Sentinel — это место, где будут публиковаться все будущие записные книжки Azure Sentinel, созданные корпорацией Майкрософт или предоставленные сообществом.

Чтобы использовать записные книжки, необходимо сначала создать рабочую область Машинное обучение Azure (МАШИНное обучение).

Создание рабочей области машинного обучения Azure

  1. В портал Azure перейдите к > > записным книжкам Azure Sentinel Threat Management и выберите запустить записную книжку.

    Запуск записной книжки для запуска рабочей области машинного обучения Azure

  2. В разделе Рабочая область AzureML выберите создать.

    Создание рабочей области

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

    Поле Описание
    Подписка Выберите подписку Azure, которую нужно использовать.
    Группа ресурсов Используйте группу ресурсов, которая уже есть в подписке, или введите имя, чтобы создать группу ресурсов. Группа ресурсов содержит связанные ресурсы для решения Azure. В этом примере мы используем азуремлрг.
    имя рабочей области. Введите уникальное имя для идентификации рабочей области. В этом примере мы используем testworkspace1. Имена должны быть уникальными в группе ресурсов. Используйте имя, которое позволит легко запомнить рабочую область и отличить ее от областей, созданных другими пользователями.
    Регион Выберите ближайшее к пользователям и ресурсам данных расположение, чтобы создать рабочую область.
    Выпуск рабочей области В этом примере выберите базовый в качестве типа рабочей области. Тип рабочей области (базовый & Enterprise) определяет функции, к которым у вас есть доступ и цены.

    Укажите сведения о рабочей области

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

    сведения о рабочей области проверки

    Создание рабочей области в облаке может занять несколько минут, в то время как на странице " Обзор " отображается текущее состояние развертывания.

    Развертывание рабочей области

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

Развертывание рабочей области прошло

Запуск записной книжки с помощью рабочей области машинного обучения Azure

  1. На портале Azure перейдите в раздел Azure Sentinel > Управление угрозами > Записные книжки, где можно просмотреть записные книжки, предоставляемые Azure Sentinel.

    Совет

    Выберите направляющие & отзыв , чтобы открыть панель с дополнительной справкой и рекомендациями по записным книжкам. Просмотреть направляющие записной книжки

  2. Выберите отдельные записные книжки, чтобы просмотреть их описания, необходимые типы данных и источники данных.

    Просмотреть сведения о записной книжке

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

    выбрать записную книжку

  4. В разделе Рабочая область AzureML выберите рабочую область машинного обучения Azure и нажмите кнопку запустить.

    запуск записной книжки

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

    1. Щелкните знак плюса (+), чтобы запустить мастер создания экземпляра вычислений .

      Мастер запуска вычислительного экземпляра

    2. На странице новый вычислительный экземпляр укажите необходимые сведения и нажмите кнопку создать.

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

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

    запустить записную книжку

Рекомендации

  • Краткое введение в запрос данных в Azure Sentinel см. в Начало работы с помощью записных книжек машинного обучения Azure и Azure Sentinel Guide.

  • Дополнительные примеры записных книжек можно найти в подпапке GitHub Sample-Notebooks . Эти примеры записных книжек были сохранены вместе с данными, чтобы упростить просмотр выходных данных. Мы рекомендуем просматривать эти записные книжки в nbviewer.

  • Вложенная Папка с инструкциями GitHub содержит записные книжки, описывающие, например, настройку версии Python по умолчанию, настройку DSVM, создание закладок Azure Sentinel из записной книжки и другие темы.

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

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

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

В этой статье вы узнали, как приступить к работе с Jupyter Notebook в Azure Sentinel. Ознакомьтесь с дополнительными сведениями об Azure Sentinel в соответствующих статьях.