Coletar registros do AWS Route 53

Compatível com:

Este documento explica como configurar o AWS CloudTrail para armazenar registros de DNS do AWS Route 53 em um bucket do S3 e transferir os registros do S3 para as operações de segurança do Google. O Amazon Route 53 oferece geração de registros de consulta DNS e a capacidade de monitorar seus recursos usando verificações de integridade. O Route 53 está integrado ao AWS CloudTrail, um serviço que fornece um registro das ações realizadas por um usuário, papel ou serviço da AWS no Route 53.

Antes de começar

  • Verifique se você tem uma instância do Google SecOps.
  • Verifique se você tem acesso privilegiado à AWS.

Configurar o AWS CloudTrail e o Route 53

  1. Faça login no console da AWS.
  2. Pesquise Cloudtrail.
  3. Se você ainda não tiver um percurso, clique em Criar percurso.
  1. Informe o nome do percurso .
  2. Selecione Criar bucket do S3. Você também pode usar um bucket do S3 existente.
  3. Informe um nome para o alias do AWS KMS ou escolha uma chave do AWS KMS.
  4. Deixe as outras configurações como padrão e clique em Próxima.
  5. Selecione Tipo de evento e verifique se Eventos de gerenciamento está selecionado. Esses são os eventos que vão incluir chamadas da API Route 53.
  6. Clique em Próxima.
  7. Revise as configurações em Revisar e criar.
  8. Clique em Criar trilha.
  9. No console da AWS, pesquise S3.
  10. Clique no bucket de registros recém-criado e selecione a pasta AWSLogs .
  11. Clique em Copiar URI do S3 e salve.

Configurar o usuário do AWS IAM

  1. No console da AWS, pesquise IAM.
  2. Clique em Usuários.
  3. Clique em Adicionar usuários.
  4. Informe um nome para o usuário (por exemplo, chronicle-feed-user).
  5. Selecione Chave de acesso: acesso programático como o tipo de credencial da AWS.
  6. Clique em Next: Permissions.
  7. Selecione Anexar políticas atuais diretamente.
  8. Selecione AmazonS3ReadOnlyAccess ou AmazonS3FullAccess.
  1. Clique em Avançar: tags.
  2. Opcional: adicione tags, se necessário.
  3. Clique em PRÓXIMO: REVISAR.
  4. Revise a configuração e clique em Criar usuário.
  5. Copie o ID da chave de acesso e a chave de acesso secreta do usuário criado.

Configurar um feed no Google SecOps para processar os logs do AWS Route 53

  1. Acesse Configurações do SIEM > Feeds.
  2. Clique em Adicionar novo.
  3. No campo Nome do feed, insira um nome para o feed (por exemplo, AWS Route 53 Logs).
  4. Selecione Amazon S3 como o Tipo de origem.
  5. Selecione AWS Route 53 como o Tipo de registro.
  6. Clique em Próxima.
  7. Especifique valores para os seguintes parâmetros de entrada:

    • Região: a região em que o bucket do Amazon S3 está localizado.
    • URI do S3: o URI do bucket.
      • s3:/BUCKET_NAME
        • Substitua BUCKET_NAME pelo nome real do bucket.
    • O URI é um: selecione Diretório que inclui subdiretórios.
    • Opções de exclusão da origem: selecione a opção de exclusão de acordo com sua preferência.
    • ID da chave de acesso: a chave de acesso do usuário com acesso ao bucket do S3.
    • Chave de acesso secreta: a chave secreta do usuário com acesso ao bucket do S3.
    • Namespace de recursos: o namespace de recursos.
    • Rótulos de ingestão: o rótulo a ser aplicado aos eventos desse feed.
  8. Clique em Próxima.

  9. Revise a configuração do novo feed na tela Finalizar e clique em Enviar.

Tabela de mapeamento do UDM

Campo de registro Mapeamento de UDM Lógica
account_id read_only_udm.principal.resource.product_object_id O ID da conta da AWS associado à consulta.
firewall_domain_list_id read_only_udm.security_result.rule_labels.value O ID da lista de domínios à qual o domínio consultado pertence.
firewall_rule_action read_only_udm.security_result.action A ação realizada pela regra de firewall que correspondeu à consulta. Os valores possíveis são "ALLOW", "BLOCK" ou "UNKNOWN_ACTION" se a ação não for reconhecida.
firewall_rule_group_id read_only_udm.security_result.rule_id O ID do grupo de regras de firewall que correspondeu à consulta.
logEvents{}.id read_only_udm.principal.resource.product_object_id O ID exclusivo do evento de registro. Usado como substituto se "account_id" não estiver presente.
logEvents{}.message Esse campo é analisado em outros campos do UDM com base no formato.
logEvents{}.timestamp read_only_udm.metadata.event_timestamp.seconds A hora em que a consulta DNS foi registrada.
messageType Esse campo é usado para determinar a estrutura da mensagem de registro.
proprietário read_only_udm.principal.user.userid O ID da conta da AWS do proprietário do registro.
query_class read_only_udm.network.dns.questions.class A classe da consulta DNS.
query_name read_only_udm.network.dns.questions.name O nome de domínio consultado.
query_timestamp read_only_udm.metadata.event_timestamp.seconds A hora em que a consulta DNS foi feita.
query_type read_only_udm.metadata.product_event_type O tipo de consulta DNS.
rcode read_only_udm.metadata.description O código de resposta da consulta DNS.
região read_only_udm.principal.location.name A região da AWS em que a consulta foi originada.
srcaddr read_only_udm.principal.ip O endereço IP do cliente que fez a consulta DNS.
srcids.instance read_only_udm.principal.hostname O ID da instância do cliente que fez a consulta DNS.
srcids.resolver_endpoint read_only_udm.security_result.rule_labels.value O ID do endpoint do resolvedor que processou a consulta.
srcids.resolver_network_interface read_only_udm.security_result.rule_labels.value O ID da interface de rede do resolvedor que processou a consulta.
srcport read_only_udm.principal.port O número da porta do cliente que fez a consulta DNS.
transport read_only_udm.network.ip_protocol O protocolo de transporte usado para a consulta DNS.
version read_only_udm.metadata.product_version A versão do formato dos registros de consulta do resolvedor do Route 53.
N/A read_only_udm.metadata.event_type Fixado em "NETWORK_DNS".
N/A read_only_udm.metadata.product_name Fixado em "AWS Route 53".
N/A read_only_udm.metadata.vendor_name Fixado em "AMAZON".
N/A read_only_udm.principal.cloud.environment Fixado em "AMAZON_WEB_SERVICES".
N/A read_only_udm.network.application_protocol Fixado em "DNS".
N/A read_only_udm.network.dns.response_code Mapeado do campo "rcode" usando uma tabela de pesquisa.
N/A read_only_udm.network.dns.questions.type Mapeado do campo "query_type" usando uma tabela de pesquisa.
N/A read_only_udm.metadata.product_deployment_id Extraídos do campo "logevent.message_data" usando o padrão grok.
N/A read_only_udm.network.dns.authority.name Extraídos do campo "logevent.message_data" usando o padrão grok.
N/A read_only_udm.security_result.rule_labels.key Defina como "firewall_domain_list_id", "resolver_endpoint" ou "resolver_network_interface", dependendo dos campos disponíveis.
N/A read_only_udm.security_result.action_details É definido como o valor de "firewall_rule_action" se não for "ALLOW" ou "BLOCK".

Alterações

2024-10-22

  • Melhoria: o campo "respostas" foi mapeado para "network.dns.answers".

2024-10-17

  • Melhoria: adicionei "on_error" a todos os campos antes do mapeamento para o UDM.

2023-12-20

  • Correção de bugs:
  • Adição de gsub para substituir "\" por "#" e converter SYSLOG em JSON.
  • A função gsub foi adicionada para substituir "#" por "\".

2023-05-08

  • Melhoria:
  • O padrão Grok modificado para os registros DNS de consulta oferece suporte a um novo formato de registro.
  • Processar registros JSON com vários eventos.

2022-08-10

  • Os blocos de mutação em maiúsculas extras foram removidos.

2022-07-22

  • Parser recém-criado.

Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.