Coletar registros do Tanium Discover

Compatível com:

Este documento explica como ingerir registros do Tanium Discover no Google Security Operations usando o Amazon S3 com a capacidade nativa de exportação do S3 do Tanium Connect. O Tanium Discover descobre automaticamente interfaces de rede e recursos em todo o ambiente, oferecendo visibilidade de endpoints gerenciados e não gerenciados, dispositivos de rede e outros sistemas conectados. O analisador extrai campos dos registros JSON, transforma campos específicos, como endereços MAC e informações do SO, e os mapeia para a UDM. Ele processa vários tipos de dados, adiciona metadados, como detalhes do fornecedor e do produto, e mescla os campos extraídos na estrutura final de eventos do UDM.

Antes de começar

Verifique se você tem os pré-requisitos a seguir:

  • Uma instância do Google SecOps
  • Acesso privilegiado ao Tanium Connect e ao Tanium Console
  • Tanium Discover 2.11 ou mais recente instalado e configurado
  • Acesso privilegiado à AWS (S3, IAM)

Configurar o bucket do AWS S3 e o IAM para o Google SecOps

  1. Crie um bucket do Amazon S3 seguindo este guia do usuário: Como criar um bucket
  2. Salve o Nome e a Região do bucket para referência futura (por exemplo, tanium-discover-logs).
  3. Crie um usuário seguindo este guia: Como criar um usuário do IAM.
  4. Selecione o usuário criado.
  5. Selecione a guia Credenciais de segurança.
  6. Clique em Criar chave de acesso na seção Chaves de acesso.
  7. Selecione Serviço de terceiros como o Caso de uso.
  8. Clique em Próxima.
  9. Opcional: adicione uma tag de descrição.
  10. Clique em Criar chave de acesso.
  11. Clique em Fazer o download do arquivo CSV para salvar a chave de acesso e a chave de acesso secreta para uso posterior.
  12. Clique em Concluído.
  13. Selecione a guia Permissões.
  14. Clique em Adicionar permissões na seção Políticas de permissões.
  15. Selecione Adicionar permissões.
  16. Selecione Anexar políticas diretamente.
  17. Pesquise e selecione a política AmazonS3FullAccess.
  18. Clique em Próxima.
  19. Clique em Adicionar permissões

Configurar permissões no bucket do Amazon S3

  1. No console do Amazon S3, escolha o bucket que você criou anteriormente.
  2. Clique em Permissões > Política do bucket.
  3. No Editor de políticas do bucket, adicione a seguinte política:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": {
            "AWS": "arn:aws:iam::YOUR_ACCOUNT_ID:user/tanium-connect-s3-user"
          },
          "Action": [
            "s3:PutObject",
            "s3:PutObjectAcl",
            "s3:GetObject",
            "s3:ListBucket"
          ],
          "Resource": [
            "arn:aws:s3:::tanium-discover-logs",
            "arn:aws:s3:::tanium-discover-logs/*"
          ]
        }
      ]
    }
    
  4. Substitua as seguintes variáveis:

    • Mude YOUR_ACCOUNT_ID para o ID da sua conta da AWS.
    • Mude tanium-discover-logs para o nome real do bucket, se for diferente.
    • Mude tanium-connect-s3-user para seu nome de usuário real do IAM, se for diferente.
  5. Clique em Salvar.

Configurar o Tanium Connect para exportação do S3

  1. Faça login no Tanium Console como administrador.
  2. Acesse Tanium Connect > Conexões.
  3. Clique em Criar conexão.
  4. Na seção Informações gerais, forneça os seguintes detalhes de configuração:
    • Nome: insira um nome descritivo. Por exemplo, Tanium Discover to S3.
    • Descrição: insira uma descrição significativa (por exemplo, Export Tanium Discover interface data to S3 for Google SecOps ingestion).
    • Ativar: selecione para ativar a conexão.
    • Nível de registro: selecione Informações (padrão) ou ajuste conforme necessário.
  5. Na seção Configuração, em Origem, selecione Tanium Discover.
  6. Configure as configurações de origem do Discover:
    • Tipo de relatório: selecione o tipo de interfaces a serem exportadas:
      • Todas: exporta todas as interfaces do Discover.
      • Gerenciadas: exporta interfaces que têm o cliente Tanium instalado.
      • Não gerenciado: exporta interfaces que não têm o cliente Tanium instalado.
      • Marcados: exporta todas as interfaces que têm um rótulo aplicado.
      • Sem rótulo: exporta interfaces que não têm rótulos aplicados.
      • Ignorado: exporta interfaces marcadas como ignoradas.
      • Não gerenciáveis: exporta interfaces marcadas como não gerenciáveis.
  7. Em Destino, selecione AWS S3.
  8. Informe os seguintes detalhes de configuração:
    • Nome do destino: insira um nome, por exemplo, Google SecOps S3 Bucket.
    • Chave de acesso da AWS: insira o ID da chave de acesso do usuário do IAM criado anteriormente.
    • Chave secreta da AWS: insira a chave de acesso secreta do usuário do IAM criado anteriormente.
    • Nome do bucket: insira o nome do bucket do S3 (por exemplo, tanium-discover-logs).
    • Caminho do bucket: opcional. Insira um prefixo de caminho (por exemplo, tanium/discover/).
    • Região: selecione a região da AWS em que o bucket está localizado (por exemplo, us-east-1).
  9. Na seção Formato, configure o formato de saída:
    • Tipo de formato: selecione JSON.
    • Incluir cabeçalhos de coluna: selecione se você quer incluir cabeçalhos de coluna.
    • Gerar documento: desmarque essa opção para enviar dados JSON brutos.
  10. Opcional: na seção Configurar saída, configure filtros:
    • Filtro: use filtros para exportar rótulos específicos. Por exemplo, se você quiser exportar todas as interfaces marcadas com "Lost Interface", aplique um filtro de expressão regular e digite "Lost Interface" como o texto a ser correspondido na coluna de destino "Rótulos".
    • Colunas personalizadas: adicione as colunas personalizadas relevantes para seu caso de uso.
  11. Na seção Programação, configure quando a conexão será executada:
    • Tipo de programação: selecione Cron.
    • Expressão cron: insira uma expressão cron para exportações regulares (por exemplo, 0 */6 * * * para cada 6 horas).
    • Data de início: defina a data de início da programação.
  12. Clique em Salvar alterações.
  13. Na página Visão geral do Connect, acesse Conexões.
  14. Clique na conexão que você criou (Tanium Discover para S3).
  15. Clique em Executar agora para testar a conexão.
  16. Confirme que você quer executar a conexão.
  17. Monitore o status da conexão e verifique se os dados da interface de descoberta estão sendo exportados para o bucket do S3.

Opcional: criar um usuário e chaves do IAM somente leitura para o Google SecOps

  1. Acesse Console da AWS > IAM > Usuários > Adicionar usuários.
  2. Clique em Add users.
  3. Informe os seguintes detalhes de configuração:
    • Usuário: insira secops-reader.
    • Tipo de acesso: selecione Chave de acesso – Acesso programático.
  4. Clique em Criar usuário.
  5. Anexe a política de leitura mínima (personalizada): Usuários > secops-reader > Permissões > Adicionar permissões > Anexar políticas diretamente > Criar política.
  6. No editor JSON, insira a seguinte política:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": ["s3:GetObject"],
          "Resource": "arn:aws:s3:::tanium-discover-logs/*"
        },
        {
          "Effect": "Allow",
          "Action": ["s3:ListBucket"],
          "Resource": "arn:aws:s3:::tanium-discover-logs"
        }
      ]
    }
    
  7. Defina o nome como secops-reader-policy.

  8. Acesse Criar política > pesquise/selecione > Próxima > Adicionar permissões.

  9. Acesse Credenciais de segurança > Chaves de acesso > Criar chave de acesso.

  10. Faça o download do CSV (esses valores são inseridos no feed).

Configurar um feed no Google SecOps para ingerir registros do Tanium Discover

  1. Acesse Configurações do SIEM > Feeds.
  2. Clique em + Adicionar novo feed.
  3. No campo Nome do feed, insira um nome para o feed (por exemplo, Tanium Discover logs).
  4. Selecione Amazon S3 V2 como o Tipo de origem.
  5. Selecione Tanium Discover como o Tipo de registro.
  6. Clique em Próxima.
  7. Especifique valores para os seguintes parâmetros de entrada:
    • URI do S3: s3://tanium-discover-logs/tanium/discover/ (ajuste o caminho se você usou um nome ou caminho de bucket diferente).
    • Opções de exclusão de fontes: selecione a opção de exclusão de acordo com sua preferência.
    • Idade máxima do arquivo: inclui arquivos modificados no último número de dias. O padrão é de 180 dias.
    • ID da chave de acesso: chave de acesso do usuário com acesso ao bucket do S3 (do usuário somente leitura criado acima).
    • Chave de acesso secreta: chave secreta do usuário com acesso ao bucket do S3 (do usuário somente leitura criado acima).
    • Namespace do recurso: o namespace do recurso.
    • Rótulos de ingestão: o rótulo a ser aplicado aos eventos deste feed.
  8. Clique em Próxima.
  9. Revise a nova configuração do feed na tela Finalizar e clique em Enviar.

Tabela de mapeamento do UDM

Campo de registro Mapeamento do UDM Lógica
CentralizedNmap principal.asset.attribute.labels.key O valor "CentralizedNmap" é atribuído pelo analisador.
CentralizedNmap principal.asset.attribute.labels.value Extraído diretamente do campo CentralizedNmap no registro bruto e convertido em string.
IpAddress principal.asset.ip Extraído diretamente do campo IpAddress no registro bruto.
IpAddress principal.ip Extraído diretamente do campo IpAddress no registro bruto.
Labels principal.asset.attribute.labels.key O valor "Labels" é atribuído pelo analisador.
Labels principal.asset.attribute.labels.value Extraído diretamente do campo Labels no registro bruto.
MacAddress principal.asset.mac Extraído diretamente do campo MacAddress no registro bruto, os hífens são substituídos por dois-pontos, e o valor é convertido em minúsculas.
MacAddress principal.asset.product_object_id Concatena "TANIUM:" com o campo MacAddress (depois de convertê-lo para minúsculas e substituir os hífens por dois-pontos).
MacAddress principal.mac Extraído diretamente do campo MacAddress no registro bruto, os hífens são substituídos por dois-pontos, e o valor é convertido em minúsculas.
MacOrganization principal.asset.attribute.labels.key O valor "MacOrganization" é atribuído pelo analisador.
MacOrganization principal.asset.attribute.labels.value Extraído diretamente do campo MacOrganization no registro bruto e convertido em string.
Managed principal.asset.attribute.labels.key O valor "Managed" é atribuído pelo analisador.
Managed principal.asset.attribute.labels.value Extraído diretamente do campo Managed no registro bruto e convertido em string.
Os principal.asset.platform_software.platform Se Os for "Windows", o valor será definido como "WINDOWS". Se Os for "Linux", o valor será definido como "LINUX". Caso contrário, o valor será definido como "UNKNOWN_PLATFORM".
Os principal.platform Se Os for "Windows", o valor será definido como "WINDOWS". Se Os for "Linux", o valor será definido como "LINUX". Caso contrário, o valor será definido como "UNKNOWN_PLATFORM".
OsGeneration principal.asset.platform_software.platform_version Extraído diretamente do campo OsGeneration no registro bruto e convertido em string.
OsGeneration principal.platform_version Extraído diretamente do campo OsGeneration no registro bruto e convertido em string.
Ports principal.asset.attribute.labels.key O valor "Ports" é atribuído pelo analisador.
Ports principal.asset.attribute.labels.value Extraído diretamente do campo Ports no registro bruto.
Profile principal.asset.attribute.labels.key O valor "Profile" é atribuído pelo analisador.
Profile principal.asset.attribute.labels.value Extraído diretamente do campo Profile no registro bruto.
TaniumComputerId principal.asset.attribute.labels.key O valor "TaniumComputerId" é atribuído pelo analisador.
TaniumComputerId principal.asset.attribute.labels.value Extraído diretamente do campo TaniumComputerId no registro bruto e convertido em string.
Unmanageable principal.asset.attribute.labels.key O valor "Não gerenciável" é atribuído pelo analisador.
Unmanageable principal.asset.attribute.labels.value Extraído diretamente do campo Unmanageable no registro bruto e convertido em string. Extraído do campo time no registro bruto, analisado e convertido em segundos de época. O valor "SCAN_NETWORK" é atribuído pelo analisador. O valor "TANIUM_DISCOVER" é atribuído pelo analisador. O valor "Discover" é atribuído pelo analisador. O valor "Tanium" é atribuído pelo analisador. Extraído diretamente do campo HostName no registro bruto. Extraído do campo time no registro bruto, analisado e convertido em segundos de época.

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