Recolha registos do Tanium Stream

Compatível com:

Este documento explica como carregar registos do Tanium Stream para o Google Security Operations através da funcionalidade de exportação nativa do AWS S3 do Tanium Connect. O Tanium Stream fornece telemetria de pontos finais em tempo real, dados de deteção de ameaças e estatísticas comportamentais 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 os registos JSON não processados do Tanium Stream num modelo de dados unificado (UDM). Primeiro, normaliza os campos comuns e, em seguida, aplica uma lógica específica com base no "logType" ou "eventType" para mapear informações relevantes nos campos da UDM adequados, processando vários tipos de eventos, como ligações de rede, inícios de sessão de utilizadores, lançamentos de processos e modificações de ficheiros.

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 Stream instalado e configurado
  • Módulo Tanium Connect instalado com uma licença válida
  • Tanium Threat Response 3.4.346 ou posterior (se usar a integração TR)
  • Acesso privilegiado à consola do Tanium com direitos administrativos
  • Acesso privilegiado à AWS (S3, IAM)

Configure a conta de serviço do Tanium Stream

  1. Inicie sessão na Tanium Console.
  2. Aceda a Módulos > Stream.
  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 do Stream adequadas.
    • Verifique se a conta tem o privilégio da função de utilizador de ligação.
    • Confirme o acesso às origens de dados e aos pontos finais de streams.
  5. Clique em Guardar para aplicar a configuração da conta de serviço.

Recolha os pré-requisitos do Tanium Stream

  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 de administrador de streams ou utilizador só de leitura de streams.
    • Privilégio da função Utilizador associado.
    • Acesso a grupos de computadores monitorizados (recomendado: grupo Todos os computadores).
    • Autorização Ler pergunta guardada para conjuntos de conteúdo de stream.

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-stream-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, Stream Telemetry to S3 for SecOps).
    • Descrição: descrição opcional (por exemplo, Export endpoint telemetry and threat hunting data 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 o stream:
      • Stream - Endpoint Events para telemetria de pontos finais em tempo real.
      • Stream - Eventos de rede para monitorização da atividade de rede.
      • Stream - Process Events para o acompanhamento da execução de processos.
      • Stream - File Events para atividade do sistema de ficheiros.
      • Stream - Threat Hunting Data para análise comportamental.
    • 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, 5 minutos para telemetria em tempo real).
  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 Stream 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-stream-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/stream/).
  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 dados de telemetria desde a última exportação.
    • Filtros de colunas: adicione filtros com base em atributos de eventos específicos, se necessário (por exemplo, filtre por tipo de evento, nome do processo ou indicadores de ameaças).
  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 5 minutos para dados de telemetria quase em tempo real.
    • 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 Stream

  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 Stream logs).
  4. Selecione Amazon S3 V2 como o Tipo de origem.
  5. Selecione Tanium Stream como o Tipo de registo.
  6. Clicar em Seguinte.
  7. Especifique valores para os seguintes parâmetros de entrada:
    • URI do S3: s3://tanium-stream-logs/tanium/stream/
    • 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
additional.event__AlgorithmName additional.fields.key: eventAlgorithmName
additional.fields.value.string_value: %{additional.event
AlgorithmName}
Valor retirado diretamente do campo de registo não processado additional.event__AlgorithmName.
additional.event__AuthenticationPackageName target.resource.name: %{additional.event__AuthenticationPackageName} Valor retirado diretamente do campo de registo não processado additional.event__AuthenticationPackageName.
additional.event__CallerProcessId principal.process.pid: %{additional.event__CallerProcessId} Valor retirado diretamente do campo de registo não processado additional.event__CallerProcessId.
additional.event__CallerProcessName principal.process.file.fullpath: %{additional.event_CallerProcessName} Valor retirado diretamente do campo de registo não processado additional.event__CallerProcessName.
additional.event__ClientProcessId principal.process.pid: %{additional.event__ClientProcessId} Valor retirado diretamente do campo de registo não processado additional.event__ClientProcessId.
additional.event__ClientProcessStartKey additional.fields.key: eventClientProcessStartKey
additional.fields.value.string_value: %{additional.event
ClientProcessStartKey}
Valor retirado diretamente do campo de registo não processado additional.event__ClientProcessStartKey.
additional.event__CommandLine target.process.commandline: %{additional.event_CommandLine} Valor retirado diretamente do campo de registo não processado additional.event__CommandLine.
additional.event__ElevatedToken additional.fields.key: event__ElevatedToken
additional.fields.value.string_value: Yes/No
Valor retirado diretamente do campo de registo não processado additional.event__ElevatedToken.
Se o valor for "%%1842", é substituído por "Sim".
Se o valor for "%%1843", é substituído por "Não".
additional.event__FQDN principal.hostname: %{additional.event__FQDN} Valor retirado diretamente do campo de registo não processado additional.event__FQDN.
additional.event__FailureReason additional.fields.key: eventFailureReason
additional.fields.value.string_value: %{additional.event
FailureReason}
Valor retirado diretamente do campo de registo não processado additional.event__FailureReason.
additional.event__ImpersonationLevel additional.fields.key: eventImpersonationLevel
additional.fields.value.string_value: %{additional.event
ImpersonationLevel}
Valor retirado diretamente do campo de registo não processado additional.event__ImpersonationLevel.
additional.event__IpAddress target.ip: %{additional.event__IpAddress} Valor retirado diretamente do campo de registo não processado additional.event__IpAddress.
additional.event__IpPort target.port: %{additional.event__IpPort} Valor retirado diretamente do campo de registo não processado additional.event__IpPort e convertido num número inteiro.
additional.event__KeyLength additional.fields.key: eventKeyLength
additional.fields.value.string_value: %{additional.event
KeyLength}
Valor retirado diretamente do campo de registo não processado additional.event__KeyLength.
additional.event__KeyName additional.fields.key: eventKeyName
additional.fields.value.string_value: %{additional.event
KeyName}
Valor retirado diretamente do campo de registo não processado additional.event__KeyName.
additional.event__KeyType additional.fields.key: eventKeyType
additional.fields.value.string_value: %{additional.event
KeyType}
Valor retirado diretamente do campo de registo não processado additional.event__KeyType.
additional.event__LmPackageName additional.fields.key: eventLmPackageName
additional.fields.value.string_value: %{additional.event
LmPackageName}
Valor retirado diretamente do campo de registo não processado additional.event__LmPackageName.
additional.event__LogonGuid target.resource.product_objectid: %{additional.event_LogonGuid} Valor retirado diretamente do campo de registo não processado additional.event__LogonGuid com as chavetas removidas.
additional.event__LogonProcessName target.process.file.fullpath: %{additional.event_LogonProcessName} Valor retirado diretamente do campo de registo não processado additional.event__LogonProcessName.
additional.event__LogonType extensions.auth.authdetails: Logon Type: %{additional.event_LogonType} Valor retirado diretamente do campo de registo não processado additional.event__LogonType.
additional.event__MandatoryLabel additional.fields.key: eventMandatoryLabel
additional.fields.value.string_value: %{additional.event
MandatoryLabel}
Valor retirado diretamente do campo de registo não processado additional.event__MandatoryLabel.
additional.event__NewProcessId target.process.pid: %{additional.event__NewProcessId} Valor retirado diretamente do campo de registo não processado additional.event__NewProcessId.
additional.event__NewProcessName target.process.file.fullpath: %{additional.event_NewProcessName} Valor retirado diretamente do campo de registo não processado additional.event__NewProcessName.
additional.event__ObjectServer security_result.categorydetails: %{additional.event_ObjectServer} Valor retirado diretamente do campo de registo não processado additional.event__ObjectServer.
additional.event__Operation additional.fields.key: eventOperation
additional.fields.value.string_value: %{additional.event
Operation}
Valor retirado diretamente do campo de registo não processado additional.event__Operation.
additional.event__ParentProcessId principal.process.parentprocess.pid: %{additional.event_ParentProcessId} Valor retirado diretamente do campo de registo não processado additional.event__ParentProcessId.
additional.event__ParentProcessName principal.process.parent_process.file.fullpath: %{additional.event_ParentProcessName} Valor retirado diretamente do campo de registo não processado additional.event__ParentProcessName.
additional.event__ProcessId principal.process.pid: %{additional.event__ProcessId} Valor retirado diretamente do campo de registo não processado additional.event__ProcessId.
additional.event__ProcessName principal.process.file.fullpath: %{additional.event_ProcessName} Valor retirado diretamente do campo de registo não processado additional.event__ProcessName.
additional.event__PrivilegeList principal.user.attribute.permissions.name: %{additional.event__PrivilegeList} Valor retirado diretamente do campo de registo não processado additional.event__PrivilegeList.
additional.event__ProviderName additional.fields.key: eventProviderName
additional.fields.value.string_value: %{additional.event
ProviderName}
Valor retirado diretamente do campo de registo não processado additional.event__ProviderName.
additional.event__RestrictedAdminMode additional.fields.key: eventRestrictedAdminMode
additional.fields.value.string_value: %{additional.event
RestrictedAdminMode}
Valor retirado diretamente do campo de registo não processado additional.event__RestrictedAdminMode.
additional.event__ReturnCode additional.fields.key: eventReturnCode
additional.fields.value.string_value: %{additional.event
ReturnCode}
Valor retirado diretamente do campo de registo não processado additional.event__ReturnCode.
additional.event__RpcCallClientLocality additional.fields.key: eventRpcCallClientLocality
additional.fields.value.string_value: %{additional.event
RpcCallClientLocality}
Valor retirado diretamente do campo de registo não processado additional.event__RpcCallClientLocality.
additional.event__Service securityresult.description: %{additional.event_Service} Valor retirado diretamente do campo de registo não processado additional.event__Service.
additional.event__Status additional.fields.key: eventStatus
additional.fields.value.string_value: %{additional.event
Status}
Valor retirado diretamente do campo de registo não processado additional.event__Status.
additional.event__SubStatus additional.fields.key: eventSubStatus
additional.fields.value.string_value: %{additional.event
SubStatus}
Valor retirado diretamente do campo de registo não processado additional.event__SubStatus.
additional.event__SubjectDomainName principal.administrativedomain: %{additional.event_SubjectDomainName} Valor retirado diretamente do campo de registo não processado additional.event__SubjectDomainName.
additional.event__SubjectLogonId additional.fields.key: eventSubjectLogonId
additional.fields.value.string_value: %{additional.event
SubjectLogonId}
Valor retirado diretamente do campo de registo não processado additional.event__SubjectLogonId.
additional.event__SubjectUserName principal.user.user_displayname: %{additional.event_SubjectUserName} Valor retirado diretamente do campo de registo não processado additional.event__SubjectUserName.
additional.event__SubjectUserSid principal.user.windowssid: %{additional.event_SubjectUserSid} Valor retirado diretamente do campo de registo não processado additional.event__SubjectUserSid.
additional.event__TaskContentNew additional.fields.key: eventTaskContentNew
additional.fields.value.string_value: %{additional.event
TaskContentNew}
Valor retirado diretamente do campo de registo não processado additional.event__TaskContentNew.
additional.event__TaskName additional.fields.key: eventTaskName
additional.fields.value.string_value: %{additional.event
TaskName}
Valor retirado diretamente do campo de registo não processado additional.event__TaskName.
additional.event__TargetDomainName target.administrativedomain: %{additional.event_TargetDomainName} Valor retirado diretamente do campo de registo não processado additional.event__TargetDomainName.
additional.event__TargetLinkedLogonId additional.fields.key: eventTargetLinkedLogonId
additional.fields.value.string_value: %{additional.event
TargetLinkedLogonId}
Valor retirado diretamente do campo de registo não processado additional.event__TargetLinkedLogonId.
additional.event__TargetLogonId additional.fields.key: eventTargetLogonId
additional.fields.value.string_value: %{additional.event
TargetLogonId}
Valor retirado diretamente do campo de registo não processado additional.event__TargetLogonId.
additional.event__TargetOutboundDomainName additional.fields.key: eventTargetOutboundDomainName
additional.fields.value.string_value: %{additional.event
TargetOutboundDomainName}
Valor retirado diretamente do campo de registo não processado additional.event__TargetOutboundDomainName.
additional.event__TargetOutboundUserName additional.fields.key: eventTargetOutboundUserName
additional.fields.value.string_value: %{additional.event
TargetOutboundUserName}
Valor retirado diretamente do campo de registo não processado additional.event__TargetOutboundUserName.
additional.event__TargetSid target.user.windowssid: %{additional.event_TargetSid} Valor retirado diretamente do campo de registo não processado additional.event__TargetSid.
additional.event__TargetUserName target.user.userid: %{additional.event__TargetUserName} Valor retirado diretamente do campo de registo não processado additional.event__TargetUserName.
additional.event__TargetUserSid target.user.windowssid: %{additional.event_TargetUserSid} Valor retirado diretamente do campo de registo não processado additional.event__TargetUserSid.
additional.event__TokenElevationType additional.fields.key: eventTokenElevationType
additional.fields.value.string_value: %{additional.event
TokenElevationType}
Valor retirado diretamente do campo de registo não processado additional.event__TokenElevationType.
additional.event__TransmittedServices additional.fields.key: eventTransmittedServices
additional.fields.value.string_value: %{additional.event
TransmittedServices}
Valor retirado diretamente do campo de registo não processado additional.event__TransmittedServices.
additional.event__VirtualAccount additional.fields.key: eventVirtualAccount
additional.fields.value.string_value: %{additional.event
VirtualAccount}
Valor retirado diretamente do campo de registo não processado additional.event__VirtualAccount.
additional.event__WorkstationName target.hostname: %{additional.event__WorkstationName} Valor retirado diretamente do campo de registo não processado additional.event__WorkstationName.
additional.event_id security_result.rule_name: EventID: %{additional.event_id} Valor retirado diretamente do campo de registo não processado additional.event_id e convertido numa string.
additional.query network.dns.questions.name: %{additional.query} Valor retirado diretamente do campo de registo não processado additional.query.
additional.response network.dns.answers.name: %{additional.response} Valor retirado diretamente do campo de registo não processado additional.response.
metadata.description metadata.description: %{metadata.description} Valor retirado diretamente do campo de registo não processado metadata.description.
metadata.eventTimestamp metadata.event_timestamp.seconds: Extracted from %{metadata.eventTimestamp}
metadata.event_timestamp.nanos: Extracted from %{metadata.eventTimestamp}
Os segundos e os nanosegundos são extraídos do campo de registo não processado metadata.eventTimestamp através da análise de datas.
metadata.eventType metadata.product_event_type: %{metadata.eventType}
metadata.event_type: %{metadata.eventType}
Valor retirado diretamente do campo de registo não processado metadata.eventType.
metadata.logType metadata.product_event_type: %{metadata.logType}
metadata.event_type: %{metadata.logType}
Valor retirado diretamente do campo de registo não processado metadata.logType.
network.applicationProtocol network.application_protocol: %{network.applicationProtocol} Valor retirado diretamente do campo de registo não processado network.applicationProtocol.
network.direction network.direction: %{network.direction} Valor retirado diretamente do campo de registo não processado network.direction.
network.ipProtocol network.ip_protocol: %{network.ipProtocol} Valor retirado diretamente do campo de registo não processado network.ipProtocol.
principal.assetId principal.asset_id: TANIUM:%{principal.assetId} Valor retirado diretamente do campo de registo não processado principal.assetId e com o prefixo "TANIUM:".
principal.hostname principal.hostname: %{principal.hostname} Valor retirado diretamente do campo de registo não processado principal.hostname.
principal.process.companySpecificParentProcessId principal.process.product_specific_process_id: TANIUM:%{principal.assetId}:%{principal.process.companySpecificParentProcessId} Valor retirado diretamente do campo de registo não processado principal.process.companySpecificParentProcessId e formatado como "TANIUM:%{principal.assetId}:%{principal.process.companySpecificParentProcessId}".
principal.process.companySpecificProcessId principal.process.product_specific_process_id: TANIUM:%{principal.assetId}:%{principal.process.companySpecificProcessId} Valor retirado diretamente do campo de registo não processado principal.process.companySpecificProcessId e formatado como "TANIUM:%{principal.assetId}:%{principal.process.companySpecificProcessId}".
principal.process.commandLine target.process.command_line: %{principal.process.commandLine} Valor retirado diretamente do campo de registo não processado principal.process.commandLine com as aspas duplas removidas e os hífens substituídos por E comerciais.
principal.process.file.fullPath target.process.file.full_path: %{principal.process.file.fullPath} Valor retirado diretamente do campo de registo não processado principal.process.file.fullPath.
principal.process.file.md5 target.process.file.md5: %{principal.process.file.md5} Valor retirado diretamente do campo de registo não processado principal.process.file.md5 e convertido em letras minúsculas.
principal.process.parentPid principal.process.pid: %{principal.process.parentPid} Valor retirado diretamente do campo de registo não processado principal.process.parentPid apenas para eventos PROCESS_LAUNCH.
principal.process.pid target.process.pid: %{principal.process.pid} Valor retirado diretamente do campo de registo não processado principal.process.pid apenas para eventos PROCESS_LAUNCH.
principal.process.productSpecificProcessId principal.process.product_specific_process_id: TANIUM:%{principal.assetId}:%{principal.process.productSpecificProcessId} Valor retirado diretamente do campo de registo não processado principal.process.productSpecificProcessId e formatado como "TANIUM:%{principal.assetId}:%{principal.process.productSpecificProcessId}".
principal.user.groupid principal.user.group_identifiers: %{principal.user.groupid} Valor retirado diretamente do campo de registo não processado principal.user.groupid.
principal.user.userid principal.user.userid: %{principal.user.userid} Valor retirado diretamente do campo de registo não processado principal.user.userid.
src.ip principal.ip: %{src.ip} Valor retirado diretamente do campo de registo não processado src.ip.
src.port principal.port: %{src.port} Valor retirado diretamente do campo de registo não processado src.port e convertido num número inteiro.
target.file.fullPath target.file.full_path: %{target.file.fullPath} Valor retirado diretamente do campo de registo não processado target.file.fullPath.
target.file.md5 target.file.md5: %{target.file.md5} Valor retirado diretamente do campo de registo não processado target.file.md5.
target.port target.port: %{target.port} Valor retirado diretamente do campo de registo não processado target.port e convertido num número inteiro.
target.registry.registryKey target.registry.registry_key: %{target.registry.registryKey} Valor retirado diretamente do campo de registo não processado target.registry.registryKey.
target.registry.registryValue target.registry.registry_value_data: %{target.registry.registryValue} Valor retirado diretamente do campo de registo não processado target.registry.registryValue.
target.user.userDisplayName target.user.user_display_name: %{target.user.userDisplayName} Valor retirado diretamente do campo de registo não processado target.user.userDisplayName.
target.user.windowsSid target.user.windows_sid: %{target.user.windowsSid} Valor retirado diretamente do campo de registo não processado target.user.windowsSid.
agente do utilizador network.http.user_agent: %{user-agent} Valor retirado diretamente do campo de registo não processado user-agent com as aspas duplas removidas.
N/A extensions.auth.auth_mechanism: LOCAL/NETWORK/BATCH/SERVICE/UNLOCK/NETWORK_CLEAR_TEXT/NEW_CREDENTIALS/REMOTE_INTERACTIVE/CACHED_INTERACTIVE/MECHANISM_UNSPECIFIED Determinado pelo código do analisador com base no valor de additional.event__LogonType.
N/A extensions.auth.type: MACHINE Adicionado pelo código do analisador para eventos USER_LOGIN e USER_LOGOUT.
N/A metadata.event_type: PROCESS_LAUNCH/NETWORK_CONNECTION/FILE_OPEN/FILE_DELETION/REGISTRY_MODIFICATION/USER_LOGIN/STATUS_UPDATE/USER_LOGOUT/PROCESS_MODULE_LOAD/PROCESS_TERMINATION/USER_CHANGE_PERMISSIONS/SCHEDULED_TASK_MODIFICATION/SCHEDULED_TASK_DISABLE/SCHEDULED_TASK_ENABLE/SCHEDULED_TASK_DELETION/SCHEDULED_TASK_CREATION/PROCESS_UNCATEGORIZED Determinado pelo código do analisador com base no valor de metadata.logType e additional.event_id.
N/A metadata.log_type: TANIUM_TH Valor codificado adicionado pelo código do analisador.
N/A metadata.product_name: Stream Valor codificado adicionado pelo código do analisador.
N/A metadata.vendor_name: Tanium Valor codificado adicionado pelo código do analisador.
N/A principal.hostname: %{principal_hostname} Valor retirado de principal.hostname ou additional.event__FQDN.
N/A principal.ip: %{srcIp} Extraído da mensagem de registo não processada através do grok se src.ip estiver presente.
N/A securityresult.about.resource.name: %{additional.event_AuthenticationPackageName} Valor retirado diretamente do campo de registo não processado additional.event__AuthenticationPackageName para valores additional.event_id específicos.
N/A security_result.category: AUTH_VIOLATION Adicionado pelo código do analisador para valores additional.event_id específicos.
N/A security_result.rule_name: EventID: %{additional.event_id} Valor retirado diretamente do campo de registo não processado additional.event_id e convertido numa string.
N/A target.hostname: %{query_host} Extraído do campo de registo não processado additional.query se contiver um nome de anfitrião.
N/A target.ip: %{dstIp} Extraído da mensagem de registo não processada através do grok se src.ip estiver presente.
N/A target.ip: %{query_ip} Extraído do campo de registo não processado additional.query se contiver um endereço IP.
N/A target.process.command_line: %{principal_process_commandLine} Valor retirado de principal.process.commandLine se não estiver vazio.
N/A target.process.file.full_path: %{principal_process_file_fullPath} Valor retirado de principal.process.file.fullPath se não estiver vazio.
N/A target.process.file.md5: %{principal_process_file_md5} Valor retirado de principal.process.file.md5 se não estiver vazio.
N/A target.process.product_specific_process_id: TANIUM:%{principal.assetId}:%{principal.process.productSpecificProcessId} Valor retirado de principal.process.productSpecificProcessId e formatado como "TANIUM:%{principal.assetId}:%{principal.process.productSpecificProcessId}".
N/A target.resource.resource_type: TASK Adicionado pelo código do analisador para valores additional.event_id específicos.
N/A timestamp.seconds: Extracted from %{metadata.eventTimestamp}
timestamp.nanos: Extracted from %{metadata.eventTimestamp}
Os segundos e os nanosegundos são extraídos do campo de registo não processado metadata.eventTimestamp através da análise de datas.

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