Подключение Microsoft Sentinel к Amazon Web Services для приема данных журнала службы AWS

Используйте соединители Amazon Web Services (AWS) для извлечения журналов служб AWS в Microsoft Sentinel. Эти соединители предоставляют Microsoft Sentinel доступ к журналам ресурсов AWS. При настройке соединителя устанавливается отношение доверия между Amazon Web Services и Microsoft Sentinel. Для этого в AWS создается роль, которая предоставляет Microsoft Sentinel разрешение на доступ к журналам AWS.

Этот соединитель доступен в двух версиях: устаревший соединитель для управления CloudTrail и журналов данных, а также новая версия, которая может получать журналы из следующих служб AWS, извлекая их из контейнера S3 (ссылки приведены в документации AWS):

На этой вкладке объясняется, как настроить соединитель AWS S3. Процесс настройки состоит из двух частей: на стороне AWS и на стороне Microsoft Sentinel. Процесс на каждой стороне создает сведения, используемые другой стороной. Эта двусторонняя проверка подлинности создает безопасный обмен данными.

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

  • Убедитесь, что журналы из выбранной службы AWS используют формат, принятый Microsoft Sentinel:

    • Amazon VPC: .csv файл в формате GZIP с заголовками; разделитель: пробел.
    • Amazon GuardDuty: форматы json-line и GZIP.
    • AWS CloudTrail: .json файл в формате GZIP.
    • CloudWatch: .csv файл в формате GZIP без заголовка. Если вам нужно преобразовать журналы в этот формат, можно использовать эту лямбда-функцию CloudWatch.
  • У вас должны быть разрешения на запись в рабочую область Microsoft Sentinel.

  • Установите решение Amazon Web Services из Центра содержимого в Microsoft Sentinel. Дополнительные сведения см. в статье "Обнаружение и управление содержимым Microsoft Sentinel вне поля".

Обзор архитектуры

На этом рисунке и следующем тексте показано, как взаимодействуют части этого решения соединителя.

Снимок экрана: архитектура соединителя AWS S3.

  • В службах AWS настроена отправка журналов в контейнеры хранилища S3 (Simple Storage Service).

  • При получении новых журналов контейнер S3 отправляет уведомления в очередь сообщений SQS (Simple Queue Service).

  • Соединитель Microsoft Sentinel и AWS S3 опрашивает очередь SQS через равные небольшие промежутки времени. Если в очереди есть сообщение, оно будет содержать путь к файлам журналов.

  • Соединитель считывает сообщение с путем, а затем извлекает файлы из контейнера S3.

  • Чтобы подключиться к очереди SQS и контейнеру S3, Microsoft Sentinel использует федеративный поставщик веб-удостоверений (Идентификатор Microsoft Entra) для проверки подлинности с помощью AWS через OpenID Подключение (OIDC) и предполагает роль AWS IAM. Роль настраивается с политикой разрешений, предоставляющей ему доступ к этим ресурсам.

Подключение соединителя S3

  • В среде AWS:

    • Настройте в службах AWS отправку журналов в контейнер S3.

    • Создайте очередь Simple Queue Service (SQS) для предоставления уведомлений.

    • Создайте поставщика веб-удостоверений для проверки подлинности пользователей в AWS с помощью OpenID Подключение (OIDC).

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

    • Подключите соответствующие политики разрешений IAM для предоставления предполагаемой роли доступа к соответствующим ресурсам (сегмент S3, SQS).

    В нашем репозитории GitHub доступен скрипт, который автоматизирует процесс на стороне AWS. См. инструкции по автоматической настройке далее в этом документе.

  • В Microsoft Sentinel:

Автоматическая настройка

Чтобы упростить процесс подключения, Microsoft Sentinel предоставляет скрипт PowerShell для автоматизации настройки соединителя на стороне AWS — необходимых ресурсов, учетных данных и разрешений AWS.

Скрипт выполняет следующие действия:

  • Создает поставщик веб-удостоверений OIDC для проверки подлинности пользователей идентификатора Microsoft Entra в AWS.

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

  • настраивает указанные службы AWS для отправки журналов в этот контейнер S3 и уведомлений в эту очередь SQS;

  • при необходимости создает контейнер S3 и очередь SQS в этих целях;

  • настраивает все необходимые политики разрешений IAM и применяет их к созданной ранее роли IAM.

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

Предварительные требования для автоматической настройки

Instructions

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

  1. В меню навигации Microsoft Sentinel выберите Соединители данных.

  2. Выберите Amazon Web Services S3 из коллекции соединителей данных.

    Если соединитель не отображается, установите решение Amazon Web Services из Центра содержимого в Microsoft Sentinel.

  3. В области сведений для соединителя выберите страницу "Открыть соединитель".

  4. В разделе Конфигурация в подразделе 1. Настройка среды AWS разверните узел Настройка с помощью сценария PowerShell (рекомендуется).

  5. Следуйте инструкциям на экране, чтобы скачать скрипт настройки AWS S3 со страницы соединителя и извлечь его (по ссылке скачивается ZIP-файл, содержащий основной скрипт настройки и вспомогательные скрипты).

    Примечание.

    Для приема журналов AWS в облако Azure для государственных организаций скачайте и извлеките этот специализированный скрипт установки AWS S3 Gov.

  6. Перед запуском скрипта выполните команду aws configure из командной строки PowerShell и введите нужные сведения по запросу. См. интерфейс командной строки AWS | Основы конфигурации (из документации ПО AWS) для получения дополнительных сведений.

  7. Затем запустите скрипт. Скопируйте команду со страницы соединителя (в разделе "Запуск скрипта для настройки среды") и вставьте его в командную строку.

  8. Скрипт предложит ввести идентификатор рабочей области. Этот идентификатор приводится на странице соединителя. Скопируйте его и вставьте в строке запроса скрипта.

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

  9. По завершении выполнения скрипта скопируйте значения Role ARN (ARN роли) и SQS URL (URL-адрес SQS) из его выходных данных (см. пример на первом снимке экрана ниже) и вставьте их в соответствующих полях на странице соединителя в разделе 2. Добавление подключения (см. второй снимок экрана ниже).

    Снимок экрана: выходные данные скрипта настройки соединителя AWS.

    Снимок экрана: вставка сведений о роли AWS из скрипта в соединитель S3.

  10. Выберите тип данных из раскрывающегося списка Таблица назначения. Таким образом вы сообщаете соединителю, журналы какой службы AWS должны собираться через это подключение и в какой таблице Log Analytics будут сохраняться принятые данные. Затем выберите Добавить подключение.

Примечание.

Выполнение скрипта может занять до 30 минут.

Ручная настройка

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

Подготовка ресурсов AWS

  1. Создайте контейнер S3, в который будут отправляться журналы из служб AWS — VPC, GuardDuty, CloudTrail или CloudWatch.

  2. Создайте стандартную очередь сообщений простой службы очередей (SQS), в которой контейнер S3 будет публиковать уведомления.

  3. Настройте контейнер S3 для отправки сообщений уведомлений в очередь SQS.

Установка соединителя данных AWS и подготовка среды

  1. В меню навигации Microsoft Sentinel выберите Соединители данных.

  2. Выберите Amazon Web Services S3 из коллекции соединителей данных.

    Если соединитель не отображается, установите решение Amazon Web Services из Центра содержимого в Microsoft Sentinel. Дополнительные сведения см. в статье "Обнаружение и управление содержимым Microsoft Sentinel вне поля".

  3. В области сведений для соединителя выберите страницу "Открыть соединитель".

  4. В разделе "Конфигурация" разверните раздел "Настройка" с помощью скрипта PowerShell (рекомендуется), а затем скопируйте внешний идентификатор (идентификатор рабочей области) в буфер обмена.

Создание поставщика веб-удостоверений с открытым идентификатором Подключение (OIDC) и предполагаемой ролью AWS

  1. Откройте консоль AWS в другом окне браузера или на вкладке.

  2. Создайте поставщика веб-удостоверений. Выполните следующие инструкции в документации AWS:
    Создание поставщиков удостоверений OpenID Подключение (OIDC).

    Параметр Выбор и значение Комментарии
    Идентификатор клиента - Игнорировать это, у вас уже есть. См. следующую строку аудитории .
    Тип поставщика OpenID Connect Вместо SAML по умолчанию.
    URL-адрес поставщика Коммерческих:
    sts.windows.net/33e01921-4d64-4f8c-a055-5bdaffd5e33d/

    Правительство:
    sts.windows.net/cab8a31a-1906-4287-a0d8-4eef66b95f6e/
    Отпечаток 626d44e704d1ceabe3bf0d53397464ac8080142c Если вы создали в консоли IAM, выберите "Получить отпечаток ", который должен дать вам этот результат.
    Аудитория Коммерческих:
    api://1462b192-27f7-4cb9-8523-0f4ecb54b47e

    Правительство:
    api://d4230588-5f84-4281-a9c7-2c15194b28f7
  3. Создайте предполагаемую роль IAM. Выполните следующие инструкции в документации AWS:
    Создание роли для веб-удостоверений или OpenID Подключение федерации.

    Параметр Выбор и значение Комментарии
    Тип доверенной сущности Веб-удостоверение Вместо службы AWS по умолчанию.
    Поставщик удостоверений Коммерческих:
    sts.windows.net/33e01921-4d64-4f8c-a055-5bdaffd5e33d/

    Правительство:
    sts.windows.net/cab8a31a-1906-4287-a0d8-4eef66b95f6e/
    Поставщик, созданный на предыдущем шаге.
    Аудитория Коммерческих:
    api://1462b192-27f7-4cb9-8523-0f4ecb54b47e

    Правительство:
    api://d4230588-5f84-4281-a9c7-2c15194b28f7
    Аудитория, определенная для поставщика удостоверений на предыдущем шаге.
    Разрешения для назначения
    • AmazonSQSReadOnlyAccess
    • AWSLambdaSQSQueueExecutionRole
    • AmazonS3ReadOnlyAccess
    • ROSAKMSProviderPolicy
    • Дополнительные политики для приема различных типов журналов служб AWS
    Дополнительные сведения об этих политиках см. на странице политик разрешений соединителя AWS S3 в репозитории GitHub Microsoft Sentinel.
    Имя "OIDC_MicrosoftSentinelRole" Выберите понятное имя, которое содержит ссылку на Microsoft Sentinel.

    Имя должно содержать точный префикс OIDC_, в противном случае соединитель не будет работать должным образом.
  4. Измените политику доверия новой роли и добавьте другое условие:
    "sts:RoleSessionName": "MicrosoftSentinel_{WORKSPACE_ID)"

    Внимание

    Значение sts:RoleSessionName параметра должно иметь точный префикс MicrosoftSentinel_, в противном случае соединитель не будет работать должным образом.

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

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": {
            "Federated": "arn:aws:iam::XXXXXXXXXXXX:oidc-provider/sts.windows.net/cab8a31a-1906-4287-a0d8-4eef66b95f6e/"
          },
          "Action": "sts:AssumeRoleWithWebIdentity",
          "Condition": {
            "StringEquals": {
              "sts.windows.net/cab8a31a-1906-4287-a0d8-4eef66b95f6e/:aud": "api://d4230588-5f84-4281-a9c7-2c15194b28f7",
              "sts:RoleSessionName": "MicrosoftSentinel_XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
            }
          }
        }
      ]
    }
    
    • XXXXXXXXXXXX — это идентификатор учетной записи AWS.
    • XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX — это идентификатор рабочей области Microsoft Sentinel.

    Обновите (сохраните) политику при завершении редактирования.

Добавление сведений о роли и очереди AWS в соединитель данных S3

  1. На вкладке браузера откройте консоль AWS, введите службу управления удостоверениями и доступом (IAM) и перейдите к списку ролей. Выберите созданную выше роль.

  2. Скопируйте ARN в буфер обмена.

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

  4. Вернитесь на вкладку браузера Microsoft Sentinel, которая должна быть открыта на странице соединителя данных Amazon Web Services S3 (предварительная версия). До 2. Добавление подключения:

    1. Вставьте роль IAM ARN, скопированную двумя шагами назад, в роль, чтобы добавить поле.
    2. Вставьте URL-адрес очереди SQS, скопированный на последнем шаге, в поле URL-адрес SQS.
    3. Выберите тип данных из раскрывающегося списка Таблица назначения. Таким образом вы сообщаете соединителю, журналы какой службы AWS должны собираться через это подключение и в какой таблице Log Analytics будут сохраняться принятые данные.
    4. Выберите Добавить подключение.

    Снимок экрана: добавление подключения роли AWS в соединитель S3.

Настройка службы AWS для экспорта журналов в контейнер S3

Инструкции по отправке каждого типа журнала в контейнер S3 см. в документации по Amazon Web Services (см. ниже):

Известные проблемы и устранение неполадок

Известные проблемы

  • Различные типы журналов можно хранить в одном контейнере S3, но не по одному и тому же пути.

  • Каждая очередь SQS должна быть связана с одним типом сообщений, поэтому если необходимо принимать результаты обнаружения GuardDuty и журналы потоков VPC, следует настроить отдельные очереди для каждого типа.

  • Аналогичным образом, одна очередь SQS может обслуживать только один путь в контейнере S3, поэтому если по какой-либо причине вы храните журналы по нескольким путям, каждому пути следует выделить собственную очередь SQS.

Устранение неполадок

Узнайте, как устранять неполадки с соединителем Amazon Web Services S3.

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

В этом документе вы узнали, как подключиться к ресурсам AWS для передачи их журналов в Microsoft Sentinel. Ознакомьтесь с дополнительными сведениями о Microsoft Sentinel в следующих статьях: