Recolha registos do Tanium Threat Response

Compatível com:

Este documento explica como carregar registos do Tanium Threat Response para o Google Security Operations através da funcionalidade de exportação nativa do AWS S3 do Tanium Connect. O Tanium Threat Response produz alertas de deteção de ameaças, resultados de investigações e dados de resposta a incidentes no formato JSON, que podem ser exportados diretamente para o S3 através do Tanium Connect sem necessitar de funções Lambda personalizadas. O analisador transforma dados JSON não processados do Tanium Threat Response num modelo de dados unificado (UDM). Primeiro, tenta analisar a mensagem recebida como JSON, processa potenciais erros e, em seguida, extrai e mapeia os campos relevantes para a estrutura UDM, incluindo detalhes sobre o anfitrião, o utilizador, o processo, a atividade de rede e as conclusões de segurança afetados.

Antes de começar

Certifique-se de que tem os seguintes pré-requisitos:

  • Uma instância do Google SecOps
  • Tanium Core Platform 7.0 ou posterior
  • Módulo Tanium Threat Response instalado e configurado
  • Módulo Tanium Connect instalado com uma licença válida
  • Tanium Direct Connect 1.9.30 ou posterior para capacidades de investigação
  • Acesso privilegiado à consola do Tanium com direitos administrativos
  • Acesso privilegiado à AWS (S3, IAM)

Configure a conta de serviço do Tanium Threat Response

  1. Inicie sessão na Tanium Console.
  2. Aceda a Módulos > Resposta a ameaças.
  3. Clique em Definições na parte superior direita.
  4. Na secção Conta de serviço, configure o seguinte:
    • Utilizador da conta de serviço: selecione um utilizador com as autorizações de resposta a ameaças adequadas.
    • Verifique se a conta tem o privilégio da função de utilizador de ligação.
    • Confirme o acesso aos alertas de resposta a ameaças e aos dados de investigação.
  5. Clique em Guardar para aplicar a configuração da conta de serviço.

Recolha os pré-requisitos do Tanium Threat Response

  1. Inicie sessão na consola do Tanium como administrador.
  2. Aceda a Administração > Autorizações > Utilizadores.
  3. Crie ou identifique um utilizador da conta de serviço com as seguintes funções:
    • Função Administrador de resposta a ameaças ou Utilizador de resposta a ameaças apenas de leitura.
    • Privilégio da função Utilizador associado.
    • Acesso a grupos de computadores monitorizados (recomendado: grupo Todos os computadores).
    • Autorização Read Saved Question para conjuntos de conteúdo de resposta a ameaças.

Configure o contentor do AWS S3 e o IAM para o Google SecOps

  1. Crie um contentor do Amazon S3 seguindo este manual do utilizador: Criar um contentor
  2. Guarde o nome e a região do contentor para referência futura (por exemplo, tanium-threat-response-logs).
  3. Crie um utilizador seguindo este guia do utilizador: Criar um utilizador do IAM.
  4. Selecione o utilizador criado.
  5. Selecione o separador Credenciais de segurança.
  6. Clique em Criar chave de acesso na secção Chaves de acesso.
  7. Selecione Serviço de terceiros como o Exemplo de utilização.
  8. Clicar em Seguinte.
  9. Opcional: adicione uma etiqueta de descrição.
  10. Clique em Criar chave de acesso.
  11. Clique em Transferir ficheiro CSV para guardar a chave de acesso e a chave de acesso secreta para utilização posterior.
  12. Clique em Concluído.
  13. Selecione o separador Autorizações.
  14. Clique em Adicionar autorizações na secção Políticas de autorizações.
  15. Selecione Adicionar autorizações.
  16. Selecione Anexar políticas diretamente
  17. Pesquise e selecione a política AmazonS3FullAccess.
  18. Clicar em Seguinte.
  19. Clique em Adicionar autorizações.

Configure o destino do AWS S3 do Tanium Connect

  1. Inicie sessão na Tanium Console.
  2. Aceda a Módulos > Ligar.
  3. Clique em Criar associação.
  4. Indique os seguintes detalhes de configuração:
    • Nome: introduza um nome descritivo (por exemplo, Threat Response Alerts to S3 for SecOps).
    • Descrição: descrição opcional (por exemplo, Export threat detection alerts and investigation findings to AWS S3 for Google SecOps ingestion).
    • Ativar: selecione esta opção para ativar a execução da associação de acordo com um horário.
  5. Clicar em Seguinte.

Configure a origem da associação

  1. Na secção Origem, faculte os seguintes detalhes de configuração:
    • Tipo de origem: selecione Pergunta guardada.
    • Pergunta guardada: selecione uma das seguintes perguntas guardadas relacionadas com a Resposta a ameaças:
      • Resposta a ameaças – Alertas para alertas de deteção de ameaças.
      • Resposta a ameaças – Resultados da investigação para as conclusões da investigação.
      • Resposta a ameaças – Correspondências de informações para correspondências de informações sobre ameaças.
      • Resposta a ameaças – Atividade do ponto final para atividade suspeita do ponto final.
      • Resposta a ameaças – Ligações de rede para ameaças baseadas na rede.
    • Grupo de computadores: selecione Todos os computadores ou grupos de computadores específicos para monitorizar.
    • Intervalo de atualização: defina o intervalo adequado para a recolha de dados (por exemplo, 10 minutos para alertas de ameaças).
  2. Clicar em Seguinte.

Configure o destino do AWS S3

  1. Na secção Destino, faculte os seguintes detalhes de configuração:
    • Tipo de destino: selecione AWS S3.
    • Nome do destino: introduza um nome exclusivo (por exemplo, Google SecOps ThreatResponse S3 Destination).
    • Chave de acesso da AWS: introduza a chave de acesso da AWS a partir do ficheiro CSV transferido no passo de configuração do AWS S3.
    • Chave de acesso secreta da AWS: introduza a chave de acesso secreta da AWS a partir do ficheiro CSV transferido no passo de configuração do AWS S3.
    • Nome do contentor: introduza o nome do contentor do S3 (por exemplo, tanium-threat-response-logs).
    • Região: selecione a região da AWS onde o seu contentor do S3 está localizado.
    • Prefixo da chave: introduza um prefixo para os objetos S3 (por exemplo, tanium/threat-response/).
  2. Clicar em Seguinte.

Configure filtros

  1. Na secção Filtros, configure as opções de filtragem de dados:
    • Enviar apenas novos itens: selecione esta opção para enviar apenas novos alertas de ameaças desde a última exportação.
    • Filtros de colunas: adicione filtros com base em atributos de alertas específicos, se necessário (por exemplo, filtre por gravidade do alerta, tipo de ameaça ou estado da investigação).
  2. Clicar em Seguinte.

Formate os dados para o AWS S3

  1. Na secção Formato, configure o formato de dados:
    • Formato: selecione JSON.
    • Opções:
      • Incluir cabeçalhos: desmarque esta opção para evitar cabeçalhos no resultado JSON.
      • Incluir células vazias: selecione com base na sua preferência.
    • Opções avançadas:
      • Nomenclatura de ficheiros: use a nomenclatura predefinida baseada na data/hora.
      • Compressão: selecione Gzip para reduzir os custos de armazenamento e o tempo de transferência.
  2. Clicar em Seguinte.

Agende a associação

  1. Na secção Programação, configure a programação de exportação:
    • Ativar agendamento: selecione esta opção para ativar as exportações agendadas automáticas.
    • Tipo de programação: selecione Recorrente.
    • Frequência: selecione A cada 10 minutos para receber alertas de resposta a ameaças atempados.
    • Hora de início: defina a hora de início adequada para a primeira exportação.
  2. Clicar em Seguinte.

Guarde e valide a associação

  1. Reveja a configuração da associação no ecrã de resumo.
  2. Clique em Guardar para criar a associação.
  3. Clique em Testar associação para validar a configuração.
  4. Se o teste for bem-sucedido, clique em Executar agora para fazer uma exportação inicial.
  5. Monitorize o estado da ligação na página Vista geral do Connect.

Configure um feed no Google SecOps para carregar registos do Tanium Threat Response

  1. Aceda a Definições do SIEM > Feeds.
  2. Clique em + Adicionar novo feed.
  3. No campo Nome do feed, introduza um nome para o feed (por exemplo, Tanium Threat Response logs).
  4. Selecione Amazon S3 V2 como o Tipo de origem.
  5. Selecione Tanium Threat Response como o Tipo de registo.
  6. Clicar em Seguinte.
  7. Especifique valores para os seguintes parâmetros de entrada:
    • URI do S3: s3://tanium-threat-response-logs/tanium/threat-response/
    • Opções de eliminação de origens: selecione a opção de eliminação de acordo com a sua preferência.
    • Idade máxima do ficheiro: inclua ficheiros modificados no último número de dias. A predefinição é 180 dias.
    • ID da chave de acesso: chave de acesso do utilizador com acesso ao contentor do S3.
    • Chave de acesso secreta: chave secreta do utilizador com acesso ao contentor do S3.
    • Espaço de nomes do recurso: o espaço de nomes do recurso.
    • Etiquetas de carregamento: a etiqueta aplicada aos eventos deste feed.
  8. Clicar em Seguinte.
  9. Reveja a nova configuração do feed no ecrã Finalizar e, de seguida, clique em Enviar.

Tabela de mapeamento da UDM

Campo de registo Mapeamento do UDM Lógica
ID do alerta security_result.rule_instance O valor deste campo é retirado do campo "ID do alerta" no registo não processado.
IP do computador principal.ip O valor deste campo é retirado do campo "IP do computador" no registo não processado.
IP do computador target.ip O valor deste campo é retirado do campo "IP do computador" no registo não processado.
Nome do computador principal.hostname O valor deste campo é retirado do campo "Nome do computador" no registo não processado.
Nome do computador target.hostname O valor deste campo é retirado do campo "Nome do computador" no registo não processado.
id target.resource.attribute.labels O valor deste campo é retirado do campo "id" no registo não processado. A chave está codificada como "id".
ID da Intel security_result.rule_id O valor deste campo é retirado do campo "Intel Id" no registo não processado.
Etiquetas Intel security_result.description O valor deste campo é retirado do campo "Intel Labels" no registo não processado.
Nome da Intel security_result.summary O valor deste campo é retirado do campo "Intel Name" no registo não processado.
Nome da Intel security_result.threat_name O valor deste campo é retirado do campo "Intel Name" no registo não processado.
Tipo de Intel security_result.rule_type O valor deste campo é retirado do campo "Tipo de Intel" no registo não processado.
MatchDetails.finding.system_info.bits principal.asset.platform_software.bits O valor deste campo é retirado do campo "MatchDetails.finding.system_info.bits" no registo não processado.
MatchDetails.finding.system_info.os principal.asset.platform_software.platform_version O valor deste campo é retirado do campo "MatchDetails.finding.system_info.os" no registo não processado.
MatchDetails.finding.system_info.patch_level principal.asset.platform_software.platform_patch_level O valor deste campo é retirado do campo "MatchDetails.finding.system_info.patch_level" no registo não processado.
MatchDetails.finding.system_info.platform principal.asset.platform_software.platform O valor deste campo é retirado do campo "MatchDetails.finding.system_info.platform" no registo não processado.
MatchDetails.match.contexts.0.event.registrySet.keyPath target.registry.registry_key O valor deste campo é retirado do campo "MatchDetails.match.contexts.0.event.registrySet.keyPath" no registo não processado.
MatchDetails.match.contexts.0.event.registrySet.valueName target.registry.registry_value_name O valor deste campo é retirado do campo "MatchDetails.match.contexts.0.event.registrySet.valueName" no registo não processado.
MatchDetails.match.properties.args security_result.about.process.command_line O valor deste campo é retirado do campo "MatchDetails.match.properties.args" no registo não processado.
MatchDetails.match.properties.file.fullpath target.process.file.full_path O valor deste campo é retirado do campo "MatchDetails.match.properties.file.fullpath" no registo não processado.
MatchDetails.match.properties.file.md5 target.process.file.md5 O valor deste campo é retirado do campo "MatchDetails.match.properties.file.md5" no registo não processado.
MatchDetails.match.properties.file.sha1 target.process.file.sha1 O valor deste campo é retirado do campo "MatchDetails.match.properties.file.sha1" no registo não processado.
MatchDetails.match.properties.file.sha256 target.process.file.sha256 O valor deste campo é retirado do campo "MatchDetails.match.properties.file.sha256" no registo não processado.
MatchDetails.match.properties.fullpath target.process.file.full_path O valor deste campo é retirado do campo "MatchDetails.match.properties.fullpath" no registo não processado.
MatchDetails.match.properties.local_port principal.port O valor deste campo é retirado do campo "MatchDetails.match.properties.local_port" no registo não processado.
MatchDetails.match.properties.md5 target.process.file.md5 O valor deste campo é retirado do campo "MatchDetails.match.properties.md5" no registo não processado.
MatchDetails.match.properties.parent.args security_result.about.process.command_line O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.args" no registo não processado.
MatchDetails.match.properties.parent.file.fullpath target.process.parent_process.file.full_path O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.file.fullpath" no registo não processado.
MatchDetails.match.properties.parent.file.md5 target.process.parent_process.file.md5 O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.file.md5" no registo não processado.
MatchDetails.match.properties.parent.parent.file.fullpath target.process.parent_process.parent_process.file.full_path O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.parent.file.fullpath" no registo não processado.
MatchDetails.match.properties.parent.parent.file.md5 target.process.parent_process.parent_process.file.md5 O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.parent.file.md5" no registo não processado.
MatchDetails.match.properties.parent.parent.parent.file.fullpath target.process.parent_process.parent_process.parent_process.file.full_path O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.parent.parent.file.fullpath" no registo não processado.
MatchDetails.match.properties.parent.parent.parent.file.md5 target.process.parent_process.parent_process.parent_process.file.md5 O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.parent.parent.file.md5" no registo não processado.
MatchDetails.match.properties.parent.parent.parent.parent.file.fullpath target.process.parent_process.parent_process.parent_process.parent_process.file.full_path O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.parent.parent.parent.file.fullpath" no registo não processado.
MatchDetails.match.properties.parent.parent.parent.parent.file.md5 target.process.parent_process.parent_process.parent_process.parent_process.file.md5 O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.parent.parent.parent.file.md5" no registo não processado.
MatchDetails.match.properties.parent.parent.parent.parent.parent.file.fullpath target.process.parent_process.parent_process.parent_process.parent_process.parent_process.file.full_path O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.parent.parent.parent.parent.file.fullpath" no registo não processado.
MatchDetails.match.properties.parent.parent.parent.parent.parent.file.md5 target.process.parent_process.parent_process.parent_process.parent_process.parent_process.file.md5 O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.parent.parent.parent.parent.file.md5" no registo não processado.
MatchDetails.match.properties.parent.pid target.process.parent_process.pid O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.pid" no registo não processado.
MatchDetails.match.properties.parent.parent.pid target.process.parent_process.parent_process.pid O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.parent.pid" no registo não processado.
MatchDetails.match.properties.parent.parent.parent.pid target.process.parent_process.parent_process.parent_process.pid O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.parent.parent.pid" no registo não processado.
MatchDetails.match.properties.parent.parent.parent.parent.pid target.process.parent_process.parent_process.parent_process.parent_process.pid O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.parent.parent.parent.pid" no registo não processado.
MatchDetails.match.properties.parent.parent.parent.parent.parent.pid target.process.parent_process.parent_process.parent_process.parent_process.parent_process.pid O valor deste campo é retirado do campo "MatchDetails.match.properties.parent.parent.parent.parent.parent.pid" no registo não processado.
MatchDetails.match.properties.pid target.process.pid O valor deste campo é retirado do campo "MatchDetails.match.properties.pid" no registo não processado.
MatchDetails.match.properties.protocol network.ip_protocol O valor deste campo é retirado do campo "MatchDetails.match.properties.protocol" no registo não processado.
MatchDetails.match.properties.remote_ip target.ip O valor deste campo é retirado do campo "MatchDetails.match.properties.remote_ip" no registo não processado.
MatchDetails.match.properties.remote_port target.port O valor deste campo é retirado do campo "MatchDetails.match.properties.remote_port" no registo não processado.
MatchDetails.match.properties.sha1 target.process.file.sha1 O valor deste campo é retirado do campo "MatchDetails.match.properties.sha1" no registo não processado.
MatchDetails.match.properties.sha256 target.process.file.sha256 O valor deste campo é retirado do campo "MatchDetails.match.properties.sha256" no registo não processado.
MatchDetails.match.properties.user target.administrative_domain O nome de domínio é extraído do campo "MatchDetails.match.properties.user" no registo não processado procurando um caráter de barra invertida (""). Os carateres antes da barra invertida são considerados o nome de domínio.
MatchDetails.match.properties.user target.user.userid O nome de utilizador é extraído do campo "MatchDetails.match.properties.user" no registo não processado procurando um caráter de barra invertida (""). Os carateres após a barra invertida são considerados o nome de utilizador.
Técnicas da MITRE security_result.threat_id O valor deste campo é retirado do campo "MITRE Techniques" no registo não processado.
params security_result.detection_fields O valor deste campo é retirado do campo "params" no registo não processado. A chave está codificada como "params_" concatenada com o índice do parâmetro.
Indicação de tempo metadata.event_timestamp O valor deste campo é retirado do campo "Data/hora" no registo não processado.
N/A is_alert Este campo está codificado como "true" se o campo "IP do computador" no registo não processado não estiver vazio.
N/A metadata.log_type Este campo está codificado como "TANIUM_THREAT_RESPONSE".
N/A metadata.product_event_type Este campo está codificado como "Tanium Signal".
N/A metadata.product_name Este campo está codificado como "Resposta a ameaças".
N/A metadata.vendor_name Este campo está codificado como "Tanium".
N/A network.http.method Este campo está codificado de forma rígida como "POST" se o valor do campo "method" no registo não processado for "submit".

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