Ligar o Microsoft Sentinel ao Amazon Web Services para ingerir dados de registo do serviço AWS
Use os conectores da Amazon Web Services (AWS) para extrair logs de serviço da AWS para o Microsoft Sentinel. Esses conectores funcionam concedendo ao Microsoft Sentinel acesso aos logs de recursos da AWS. A configuração do conector estabelece uma relação de confiança entre a Amazon Web Services e o Microsoft Sentinel. Isso é feito na AWS criando uma função que dá permissão ao Microsoft Sentinel para acessar seus logs da AWS.
Esse conector está disponível em duas versões: o conector legado para gerenciamento e logs de dados do CloudTrail e a nova versão que pode ingerir logs dos seguintes serviços da AWS extraindo-os de um bucket do S3 (os links são para a documentação da AWS):
- Logs de fluxo da Amazon Virtual Private Cloud (VPC) - VPC
- Descobertas do Amazon GuardDuty -
- Gerenciamento do AWS CloudTrail - e eventos de dados
- Logs do AWS CloudWatch - CloudWatch
Esta guia explica como configurar o conector do AWS S3. O processo de configuração tem duas partes: o lado da AWS e o lado do Microsoft Sentinel. O processo de cada lado produz informações usadas pelo outro lado. Essa autenticação bidirecional cria uma comunicação segura.
Pré-requisitos
Certifique-se de que os logs do serviço da AWS selecionado usem o formato aceito pelo Microsoft Sentinel:
- Amazon VPC: arquivo .csv em formato GZIP com cabeçalhos; delimitador: espaço.
- Amazon GuardDuty: formatos json-line e GZIP.
- AWS CloudTrail: .json arquivo em formato GZIP.
- CloudWatch: .csv arquivo em um formato GZIP sem cabeçalho. Se precisar converter seus logs para esse formato, você pode usar essa função lambda do CloudWatch.
Você deve ter permissão de gravação no espaço de trabalho do Microsoft Sentinel.
Instale a solução Amazon Web Services a partir do Content Hub no Microsoft Sentinel. Para obter mais informações, consulte Descobrir e gerenciar conteúdo pronto para uso do Microsoft Sentinel.
Descrição geral da arquitetura
Este gráfico e o texto a seguir mostram como as partes dessa solução de conector interagem.
Os serviços da AWS são configurados para enviar seus logs para buckets de armazenamento do S3 (Simple Storage Service).
O bucket do S3 envia mensagens de notificação para a fila de mensagens SQS (Simple Queue Service) sempre que recebe novos logs.
O conector do Microsoft Sentinel AWS S3 sonda a fila do SQS em intervalos regulares e frequentes. Se houver uma mensagem na fila, ela conterá o caminho para os arquivos de log.
O conector lê a mensagem com o caminho e, em seguida, busca os arquivos do bucket do S3.
Para se conectar à fila do SQS e ao bucket do S3, o Microsoft Sentinel usa um provedor de identidade da web federado (Microsoft Entra ID) para autenticar com a AWS por meio do OpenID Connect (OIDC) e assumir uma função do AWS IAM. A função é configurada com uma política de permissões que lhe dá acesso a esses recursos.
Conecte o conector S3
Em seu ambiente da AWS:
Configure o(s) seu(s) serviço(s) da AWS para enviar logs para um bucket do S3.
Crie uma fila SQS (Simple Queue Service) para fornecer notificação.
Crie um provedor de identidade da web para autenticar usuários na AWS por meio do OpenID Connect (OIDC).
Crie uma função assumida para conceder permissões aos usuários autenticados pelo provedor de identidade da web OIDC para acessar seus recursos da AWS.
Anexe as políticas de permissões apropriadas do IAM para conceder à função assumida acesso aos recursos apropriados (bucket do S3, SQS).
Disponibilizamos, em nosso repositório GitHub, um script que automatiza o lado da AWS desse processo. Consulte as instruções para a configuração automática mais adiante neste documento.
No Microsoft Sentinel:
- Habilite e configure o AWS S3 Connector no portal do Microsoft Sentinel. Consulte as instruções abaixo.
Configuração automática
Para simplificar o processo de integração, o Microsoft Sentinel forneceu um script do PowerShell para automatizar a configuração do lado da AWS do conector - os recursos, credenciais e permissões necessários da AWS.
O script executa as seguintes ações:
Cria um provedor de identidade da web OIDC para autenticar usuários do Microsoft Entra ID na AWS.
Cria uma função assumida pelo IAM com as permissões mínimas necessárias para conceder aos usuários autenticados pelo OIDC acesso aos seus logs em um determinado bucket do S3 e fila do SQS.
Permite que os serviços especificados da AWS enviem logs para esse bucket do S3 e mensagens de notificação para essa fila do SQS.
Se necessário, cria esse bucket do S3 e essa fila SQS para essa finalidade.
Configura todas as políticas de permissões do IAM necessárias e as aplica à função do IAM criada acima.
Para nuvens do Azure Government, um script especializado cria um provedor de identidade Web OIDC diferente, ao qual atribui a função assumida pelo IAM.
Pré-requisitos para configuração automática
- Você deve ter o PowerShell e a AWS CLI em sua máquina.
- Instruções de instalação do PowerShell
- Instruções de instalação para a AWS CLI (da documentação da AWS)
Instruções
Para executar o script para configurar o conector, use as seguintes etapas:
No menu de navegação do Microsoft Sentinel, selecione Conectores de dados.
Selecione Amazon Web Services S3 na galeria de conectores de dados.
Se você não vir o conector, instale a solução Amazon Web Services a partir do Content Hub no Microsoft Sentinel.
No painel de detalhes do conector, selecione Abrir página do conector.
Na seção Configuração, em 1. Configure seu ambiente da AWS, expanda Setup with PowerShell script (recomendado).
Siga as instruções na tela para baixar e extrair o script de configuração do AWS S3 (o link faz download de um arquivo zip contendo o script de configuração principal e os scripts auxiliares) na página do conector.
Nota
Para ingerir logs da AWS em uma nuvem do Azure Government, baixe e extraia este script de configuração especializado do AWS S3 Gov.
Antes de executar o script, execute o
aws configure
comando a partir da linha de comando do PowerShell e insira as informações relevantes conforme solicitado. Consulte a interface de linha de comando da AWS | Noções básicas de configuração (da documentação da AWS) para obter detalhes.Agora execute o script. Copie o comando da página do conector (em "Executar script para configurar o ambiente") e cole-o na linha de comando.
O script solicitará que você insira sua ID do espaço de trabalho. Esse ID aparece na página do conector. Copie-o e cole-o no prompt do script.
Quando o script terminar de ser executado, copie o ARN da função e o URL do SQS da saída do script (veja o exemplo na primeira captura de tela abaixo) e cole-os em seus respetivos campos na página do conector em 2. Adicione conexão (veja a segunda captura de tela abaixo).
Selecione um tipo de dados na lista suspensa Tabela de destino . Isso informa ao conector quais logs do serviço da AWS essa conexão está sendo estabelecida para coletar e em qual tabela do Log Analytics ele armazenará os dados ingeridos. Em seguida, selecione Adicionar conexão.
Nota
O script pode levar até 30 minutos para terminar de ser executado.
Configuração manual
A Microsoft recomenda o uso do script de instalação automática para implantar esse conector. Se, por qualquer motivo, você não quiser aproveitar essa conveniência, siga as etapas abaixo para configurar o conector manualmente.
- Prepare seus recursos da AWS
- Crie uma função assumida pela AWS e conceda acesso à conta do AWS Sentinel
- Adicione as informações de função e fila da AWS ao conector de dados do S3
- Configurar um serviço da AWS para exportar logs para um bucket do S3
Prepare seus recursos da AWS
Crie um bucket do S3 para o qual você enviará os logs de seus serviços da AWS - VPC, GuardDuty, CloudTrail ou CloudWatch.
- Consulte as instruções para criar um bucket de armazenamento do S3 na documentação da AWS.
Crie uma fila de mensagens padrão do Simple Queue Service (SQS) na qual o bucket do S3 publicará notificações.
- Consulte as instruções para criar uma fila padrão do Simple Queue Service (SQS) na documentação da AWS.
Configure o bucket do S3 para enviar mensagens de notificação para a fila do SQS.
- Consulte as instruções para publicar notificações na fila do SQS na documentação da AWS.
Instale o conector de dados da AWS e prepare o ambiente
No Microsoft Sentinel, selecione Conectores de dados no menu de navegação.
Selecione Amazon Web Services S3 na galeria de conectores de dados.
Se você não vir o conector, instale a solução Amazon Web Services a partir do Content Hub no Microsoft Sentinel. Para obter mais informações, consulte Descobrir e gerenciar conteúdo pronto para uso do Microsoft Sentinel.
No painel de detalhes do conector, selecione Abrir página do conector.
Em Configuração, expanda Configuração com script do PowerShell (recomendado) e copie a ID Externa (ID do Espaço de Trabalho) para a área de transferência.
Crie um provedor de identidade da web Open ID Connect (OIDC) e uma função assumida pela AWS
Em outra janela ou guia do navegador, abra o console da AWS.
Crie um provedor de identidade da Web. Siga estas instruções na documentação da AWS:
Criação de provedores de identidade OpenID Connect (OIDC).Parâmetro Seleção/Valor Comentários ID de Cliente - Ignore isso, você já tem. Veja a linha Audiência abaixo. Tipo de provedor OpenID Connect Em vez do SAML padrão. URL do provedor Comercial: sts.windows.net/33e01921-4d64-4f8c-a055-5bdaffd5e33d/
Governo:sts.windows.net/cab8a31a-1906-4287-a0d8-4eef66b95f6e/
Thumbprint 626d44e704d1ceabe3bf0d53397464ac8080142c
Se criado no console do IAM, selecionar Obter impressão digital deve fornecer esse resultado. Público-alvo Comercial: api://1462b192-27f7-4cb9-8523-0f4ecb54b47e
Governo:api://d4230588-5f84-4281-a9c7-2c15194b28f7
Crie uma função assumida pelo IAM. Siga estas instruções na documentação da AWS:
Criação de uma função para identidade web ou Federação OpenID Connect.Parâmetro Seleção/Valor Comentários Tipo de entidade confiável Identidade Web Em vez do serviço padrão da AWS. Fornecedor de identidade Comercial: sts.windows.net/33e01921-4d64-4f8c-a055-5bdaffd5e33d/
Governo:sts.windows.net/cab8a31a-1906-4287-a0d8-4eef66b95f6e/
O provedor que você criou na etapa anterior. Público-alvo Comercial: api://1462b192-27f7-4cb9-8523-0f4ecb54b47e
Governo:api://d4230588-5f84-4281-a9c7-2c15194b28f7
O público que você definiu para o provedor de identidade na etapa anterior. Permissões para atribuir AmazonSQSReadOnlyAccess
AWSLambdaSQSQueueExecutionRole
AmazonS3ReadOnlyAccess
ROSAKMSProviderPolicy
- Políticas adicionais para a ingestão dos diferentes tipos de logs de serviço da AWS
Para obter informações sobre essas políticas, consulte a página relevante de políticas de permissões do conector do AWS S3, no repositório GitHub do Microsoft Sentinel. Nome "OIDC_MicrosoftSentinelRole" Escolha um nome significativo que inclua uma referência ao Microsoft Sentinel.
O nome deve incluir o prefixoOIDC_
exato, caso contrário, o conector não funcionará corretamente.Edite a política de confiança da nova função e adicione outra condição:
"sts:RoleSessionName": "MicrosoftSentinel_{WORKSPACE_ID)"
Importante
O valor do
sts:RoleSessionName
parâmetro deve ter o prefixoMicrosoftSentinel_
exato, caso contrário, o conector não funcionará corretamente.A política de confiança concluída deve ter esta aparência:
{ "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
é o ID da sua conta da AWS.XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
é a ID do espaço de trabalho do Microsoft Sentinel.
Atualize (salve) a política quando terminar de editar.
Adicione as informações de função e fila da AWS ao conector de dados do S3
Na guia do navegador aberta ao console da AWS, insira o serviço Identity and Access Management (IAM) e navegue até a lista de funções. Selecione a função que você criou acima.
Copie o ARN para a área de transferência.
Entre no Serviço de Fila Simples, selecione a fila SQS criada e copie a URL da fila para a área de transferência.
Retorne à guia do navegador Microsoft Sentinel, que deve estar aberta na página do conector de dados do Amazon Web Services S3 (Preview ). Menos de 2. Adicionar conexão:
- Cole o ARN da função do IAM copiado duas etapas atrás no campo Função a ser adicionada .
- Cole a URL da fila SQS copiada na última etapa no campo URL SQS.
- Selecione um tipo de dados na lista suspensa Tabela de destino . Isso informa ao conector quais logs do serviço da AWS essa conexão está sendo estabelecida para coletar e em qual tabela do Log Analytics ele armazenará os dados ingeridos.
- Selecione Adicionar ligação.
Configurar um serviço da AWS para exportar logs para um bucket do S3
Consulte a documentação da Amazon Web Services (vinculada abaixo) para obter instruções sobre como enviar cada tipo de log para seu bucket do S3:
Publique um log de fluxo da VPC em um bucket do S3.
Nota
Se você optar por personalizar o formato do log, deverá incluir o atributo start , pois ele mapeia para o campo TimeGenerated no espaço de trabalho do Log Analytics. Caso contrário, o campo TimeGenerated será preenchido com o tempo ingerido do evento, que não descreve com precisão o evento de log.
Exporte suas descobertas do GuardDuty para um bucket do S3.
Nota
Na AWS, as descobertas são exportadas por padrão a cada 6 horas. Ajuste a frequência de exportação para descobertas ativas atualizadas com base nos requisitos do seu ambiente. Para agilizar o processo, você pode modificar a configuração padrão para exportar descobertas a cada 15 minutos. Consulte Definindo a frequência para exportar descobertas ativas atualizadas.
O campo TimeGenerated é preenchido com o valor Update da localização.
As trilhas do AWS CloudTrail são armazenadas em buckets do S3 por padrão.
Exporte seus dados de log do CloudWatch para um bucket do S3.
Problemas conhecidos e resolução de problemas
Problemas conhecidos
Diferentes tipos de logs podem ser armazenados no mesmo bucket do S3, mas não devem ser armazenados no mesmo caminho.
Cada fila SQS deve apontar para um tipo de mensagem, portanto, se você quiser ingerir as descobertas do GuardDuty e os logs de fluxo da VPC, configure filas separadas para cada tipo.
Da mesma forma, uma única fila SQS pode servir apenas um caminho em um bucket do S3, portanto, se por qualquer motivo você estiver armazenando logs em vários caminhos, cada caminho exigirá sua própria fila SQS dedicada.
Resolução de Problemas
Saiba como solucionar problemas do conector do Amazon Web Services S3.
Próximos passos
Neste documento, você aprendeu como se conectar aos recursos da AWS para ingerir seus logs no Microsoft Sentinel. Para saber mais sobre o Microsoft Sentinel, consulte os seguintes artigos:
- Saiba como obter visibilidade dos seus dados e potenciais ameaças.
- Comece a detetar ameaças com o Microsoft Sentinel.
- Use pastas de trabalho para monitorar seus dados.