Coletar registros de fluxo da AWS VPC

Compatível com:

Este documento descreve como coletar registros de fluxo da VPC da AWS usando um forwarder de operações de segurança do Google.

Para mais informações, consulte Ingestão de dados para as operações de segurança do Google.

Um rótulo de transferência identifica o analisador que normaliza os dados de registro brutos para o formato estruturado do UDM. As informações neste documento se aplicam ao analisador com o rótulo de transferência AWS_VPC_FLOW.

Antes de começar

Configurar o AWS VPC Flow

Configure o fluxo da AWS VPC com base no encaminhamento dos registros para o Amazon S3 ou o Amazon CloudWatch.

Configurar os registros de fluxo para encaminhar para o Amazon S3

Depois de criar e configurar o bucket do Amazon S3, você pode criar registros de fluxo para interfaces de rede, sub-redes e redes VPC.

Criar um registro de fluxo para uma interface de rede

  1. Faça login no console do Amazon EC2.
  2. No painel de navegação, selecione Interfaces de rede.
  3. Selecione uma ou mais interfaces de rede.
  4. Selecione Ações > Criar registro de fluxo.
  5. Configure as configurações de registro de fluxo. Para mais informações, consulte a seção Configurar as configurações do registro de fluxo deste documento.

Criar um registro de fluxo para uma sub-rede

  1. Faça login no console da Amazon VPC.
  2. No painel de navegação, selecione Sub-redes.
  3. Selecione uma ou mais subredes.
  4. Selecione Ações > Criar registro de fluxo.
  5. Configure as configurações de registro de fluxo. Para mais informações, consulte a seção Configurar as configurações do registro de fluxo deste documento.

Criar um registro de fluxo para uma VPC

  1. Faça login no console da Amazon VPC.
  2. No painel de navegação, selecione VPCs.
  3. Selecione uma ou mais VPCs.
  4. Selecione Ações > Criar registro de fluxo.
  5. Configure as configurações de registro de fluxo. Para mais informações, consulte a seção Configurar as configurações do registro de fluxo deste documento.

Configurar as configurações de registro de fluxo

  1. Na seção Filtro, especifique o tráfego de IP a ser registrado:

    • Aceitar: registre apenas o tráfego aceito.

    • Rejeitar: registre apenas o tráfego rejeitado.

    • Todos: registra o tráfego aceito e rejeitado.

  2. Na seção Intervalo máximo de agregação, selecione 1 minuto.

  3. Na seção Destino, selecione Enviar para um bucket do Amazon S3.

  4. Na seção ARN do bucket do S3, especifique o ARN de um bucket do Amazon S3.

  5. Na seção Formato do registro de log, especifique os seguintes formatos para o registro de log de fluxo:

    1. Para usar o formato padrão de registro de fluxo, selecione Formato padrão da AWS.
    2. Para criar um formato personalizado, selecione Formato personalizado.
  6. Configure o fluxo de registro da VPC com o formato de registro personalizado da AWS para usar os recursos de IP verdadeiro do MSS.

  7. Na lista Formato de registro, selecione todos os atributos.

  8. Na seção Visualização do formato, revise o formato personalizado.

  9. Na seção Formato do arquivo de registro, selecione Texto (padrão).

  10. Na seção Prefixo do S3 compatível com o Hive, mantenha a caixa de seleção Ativar desmarcada.

  11. Na seção Registros de partição por tempo, selecione A cada 1 hora (60 minutos).

  12. Para adicionar uma tag ao registro de fluxo, selecione Adicionar nova tag e especifique a chave e o valor da tag.

  13. Selecione Criar registro de fluxo. Para mais informações, consulte Publicar registros de fluxo no Amazon S3.

Configurar registros de fluxo para o Amazon CloudWatch

É possível configurar o registro de fluxo em VPCs, sub-redes ou interfaces de rede.

  1. Na seção Filtro, especifique o tipo de tráfego de IP a ser registrado:

    • Aceitar: registre apenas o tráfego aceito.

    • Rejeitar: registre apenas o tráfego rejeitado.

    • Todos: registra o tráfego aceito e rejeitado.

  2. Na seção Intervalo máximo de agregação, selecione 1 minuto.

  3. Na seção Destino, selecione Enviar para os logs do CloudWatch.

  4. Na seção Grupo de registro de destino, informe o nome do grupo de registro de destino que você criou.

  5. Na lista Função do IAM, selecione o nome da função. O nome da função selecionada tem permissões para publicar registros nos logs do CloudWatch.

    O papel do IAM precisa incluir as seguintes permissões:

       {
         "Version": "2012-10-17",
         "Statement": [
           {
             "Effect": "Allow",
             "Action": [
               "logs:CreateLogGroup",
               "logs:CreateLogStream",
               "logs:PutLogEvents",
               "logs:DescribeLogGroups",
               "logs:DescribeLogStreams"
           ],
           "Resource": "*"
         }
        ]
       }
    
  6. Na seção Formato do registro de log, selecione Formato personalizado para o registro de log de fluxo.

  7. Para adicionar uma tag ao registro de fluxo, selecione Adicionar nova tag e especifique a chave e o valor da tag.

  8. Selecione Criar registro de fluxo. Para mais informações, consulte Publicar registros de fluxo no Amazon S3.

O Amazon S3 pode ser configurado para enviar as notificações de eventos ao Amazon SQS. Para mais informações, consulte Como configurar um bucket para notificações (assunto do SNS ou fila do SQS).

As políticas de usuário do IAM são necessárias para o Amazon S3 e o Amazon SQS se você usar o Amazon SQS (Amazon S3 usando o Amazon SQS) como um método de coleta de registros. Para mais informações, consulte Como usar políticas do IAM com o AWS KMS.

Com base no serviço e na região, identifique os endpoints de conectividade consultando a seguinte documentação da AWS:

Configurar o forwarder de operações de segurança do Google e o syslog para processar os registros de fluxo da VPC da AWS

  1. Selecione Configurações do SIEM > Encaminhadores.
  2. Clique em Adicionar novo encaminhador.
  3. Insira um nome exclusivo para o Nome do encaminhador.
  4. Clique em Enviar e em Confirmar. O encaminhador é adicionado, e a janela Add collector configuration aparece.
  5. No campo Nome do coletor, digite um nome.
  6. No campo Tipo de registro, selecione Fluxo de VPC da AWS.
  7. No campo Tipo de coletor, selecione Syslog.
  8. Configure os seguintes parâmetros de entrada obrigatórios:
    • Protocolo: especifique o protocolo de conexão que o coletor vai usar para detectar dados do syslog.
    • Endereço: especifique o endereço IP ou o nome do host de destino em que o coletor está localizado e os endereços dos dados do syslog.
    • Porta: especifica a porta de destino em que o coletor reside e detecta dados do syslog.
  9. Clique em Enviar e em Confirmar.

Para mais informações sobre os encaminhadores do Google Security Operations, consulte a documentação sobre encaminhadores do Google Security Operations. Para informações sobre os requisitos de cada tipo de encaminhador, consulte Configuração do encaminhador por tipo.

Se você tiver problemas ao criar encaminhadores, entre em contato com o suporte da Google Security Operations.

Referência do mapeamento de campo

Esse código de analisador usa registros brutos do AWS CloudTrail no formato JSON que descrevem eventos da VPC do EC2 e os transforma em um formato estruturado de UDM. Ele extrai campos relevantes, renomeia-os para corresponder ao esquema do UDM e enriquece os dados com mais contexto, como tipo de recurso, ambiente de nuvem e rótulos, para facilitar a análise.

Tabela de mapeamento de UDM para o AWS EC2 VPC Parser

Campo de registro (em ordem crescente) Mapeamento do UDM Lógica
CidrBlock event.idm.entity.entity.resource.attribute.labels.cidr_block Mapeado diretamente do campo "CidrBlock" no registro bruto.
CidrBlock event.idm.entity.entity.network.ip_subnet_range Mapeado diretamente do campo "CidrBlock" no registro bruto.
CidrBlockAssociation.AssociationID event.idm.entity.entity.resource.attribute.labels.cidr_block_association_association_id Mapeado diretamente do campo "AssociationID" no array "CidrBlockAssociation" no registro bruto.
CidrBlockAssociation.CidrBlockState.State event.idm.entity.entity.resource.attribute.labels.cidr_block_association_cidr_block_state_state Mapeado diretamente do campo "Estado" no objeto "CidrBlockState" da matriz "CidrBlockAssociation" no registro bruto.
CidrBlockAssociation.CidrBlockState.StatusMessage event.idm.entity.entity.resource.attribute.labels.cidr_block_association_cidr_block_state_status_message Mapeado diretamente do campo "StatusMessage" no objeto "CidrBlockState" da matriz "CidrBlockAssociation" no registro bruto.
DhcpOptionsID event.idm.entity.entity.resource.attribute.labels.dhcp_options_id Mapeado diretamente do campo "DhcpOptionsID" no registro bruto.
ID event.idm.entity.entity.resource.product_object_id Mapeado diretamente do campo "ID" no registro bruto, que é renomeado para "VpcID" no analisador.
ID event.idm.entity.metadata.product_entity_id Mapeado diretamente do campo "ID" no registro bruto, que é renomeado para "VpcID" no analisador.
InstanceTenancy event.idm.entity.entity.resource.attribute.labels.instance_tenancy Mapeado diretamente do campo "InstanceTenancy" no registro bruto.
IsDefault event.idm.entity.entity.resource.attribute.labels.is_default Mapeado diretamente do campo "IsDefault" no registro bruto.
Ipv6CidrBlockAssociationSet.AssociationID event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_association_id Mapeado diretamente do campo "AssociationID" no array "Ipv6CidrBlockAssociationSet" no registro bruto.
Ipv6CidrBlockAssociationSet.Ipv6CidrBlock event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_ipv6_cidr_block Mapeado diretamente do campo "Ipv6CidrBlock" no conjunto "Ipv6CidrBlockAssociationSet" no registro bruto.
Ipv6CidrBlockAssociationSet.Ipv6CidrBlockState.State event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_ipv6_cidr_block_state_state Mapeado diretamente do campo "Estado" no objeto "Ipv6CidrBlockState" da matriz "Ipv6CidrBlockAssociationSet" no registro bruto.
Ipv6CidrBlockAssociationSet.Ipv6CidrBlockState.StatusMessage event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_ipv6_cidr_block_state_status_message Mapeado diretamente do campo "StatusMessage" no objeto "Ipv6CidrBlockState" da matriz "Ipv6CidrBlockAssociationSet" no registro bruto.
Ipv6CidrBlockAssociationSet.Ipv6Pool event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_ipv6_pool Mapeado diretamente do campo "Ipv6Pool" no array "Ipv6CidrBlockAssociationSet" no registro bruto.
Ipv6CidrBlockAssociationSet.NetworkBorderGroup event.idm.entity.entity.resource.attribute.labels.ipv6_cidr_block_association_set_network_border_group Mapeado diretamente do campo "NetworkBorderGroup" no conjunto "Ipv6CidrBlockAssociationSet" no registro bruto.
OwnerID event.idm.entity.entity.resource.attribute.labels.owner_id Mapeado diretamente do campo "OwnerID" no registro bruto.
Estado event.idm.entity.entity.resource.attribute.labels.state Mapeado diretamente do campo "Estado" no registro bruto.
TagSet.Key event.idm.entity.entity.resource.attribute.labels.key Mapeado diretamente do campo "Key" no array "TagSet" no registro bruto. Isso cria um novo rótulo para cada tag no "conjunto de tags".
TagSet.Value event.idm.entity.entity.resource.attribute.labels.value Mapeado diretamente do campo "Value" na matriz "TagSet" no registro bruto. Isso preenche o valor de cada rótulo correspondente criado no campo "Chave".
N/A event.idm.entity.entity.resource.attribute.cloud.environment Fixado em "AMAZON_WEB_SERVICES" no código do analisador.
N/A event.idm.entity.entity.resource.resource_type Fixado em "VPC_NETWORK" no código do analisador.
N/A event.idm.entity.metadata.collected_timestamp É preenchida com o carimbo de data/hora do evento, que é derivado do campo "collection_time" no registro bruto.
N/A event.idm.entity.metadata.entity_type Fixado em "RESOURCE" no código do analisador.
N/A event.idm.entity.metadata.product_name Fixado em "Amazon VPC" no código do analisador.
N/A event.idm.entity.metadata.vendor_name Fixado em "AWS" no código do analisador.
N/A events.timestamp É preenchida com o carimbo de data/hora do evento, que é derivado do campo "collection_time" no registro bruto.