Como o Chronicle aprimora os dados de eventos e entidades

Neste documento, descrevemos como o Chronicle aprimora os dados e os campos do modelo de dados unificado (UDM, na sigla em inglês) em que os dados são armazenados.

Para permitir uma investigação de segurança, o Chronicle ingere dados contextuais de diferentes fontes, realiza análises nos dados e fornece mais contexto sobre artefatos em um ambiente de cliente. Os analistas podem usar dados contextualmente enriquecidos em regras, pesquisas investigativas ou relatórios do mecanismo de detecção.

O Chronicle realiza os seguintes tipos de aprimoramento:

  • Enriquece entidades usando a mesclagem e o gráfico de entidades.
  • Calcula e enriquece cada entidade com uma estatística de prevalência que indica a popularidade dela no ambiente.
  • Calcula a primeira vez que determinados tipos de entidade foram vistos no ambiente ou o horário mais recente.
  • Enriquece as entidades com informações das listas de ameaças da Navegação segura.
  • Enriquece eventos com dados de geolocalização.
  • Enriquece entidades com dados WHOIS.
  • Aprimora os eventos com metadados de arquivos do VirusTotal.
  • Enriquece entidades com dados de relacionamento do VirusTotal.
  • Ingerir e armazenar dados do Google Cloud Threat Intelligence.

Os dados aprimorados do WHOIS, Navegação segura, inteligência contra ameaças do GCTI, metadados do VirusTotal e relação do VirusTotal são identificados por event_type, product_name e vendor_name. Ao criar uma regra que usa esses dados enriquecidos, recomendamos que você inclua um filtro na regra que identifique o tipo de enriquecimento específico a ser incluído. Este filtro ajuda a melhorar o desempenho da regra. Por exemplo, inclua os seguintes campos de filtro na seção events da regra que mescla os dados WHOIS.

$enrichment.graph.metadata.entity_type = "DOMAIN_NAME"
$enrichment.graph.metadata.product_name = "WHOISXMLAPI Simple Whois"
$enrichment.graph.metadata.vendor_name = "WHOIS"

Aprimorar entidades usando o gráfico de entidades e mesclando

O gráfico de entidades identifica as relações entre entidades e recursos no ambiente. Quando entidades de diferentes fontes são ingeridas no Chronicle, o gráfico de entidades mantém uma lista de continuidade com base na relação entre as entidades. O grafo de entidade realiza o enriquecimento de contexto com eliminação de duplicação e mesclagem.

Durante a eliminação de duplicação, os dados redundantes são eliminados e os intervalos são formados para criar uma entidade comum. Por exemplo, considere duas entidades e1 e e2 com carimbos de data/hora t1 e t2, respectivamente. A duplicação das entidades e1 e e2 será eliminada, e os carimbos de data/hora diferentes não serão usados durante esse processo. Os campos a seguir não são usados durante a eliminação de duplicação:

  • collected_timestamp
  • creation_timestamp
  • interval

Durante a mesclagem, as relações entre entidades são formadas por um intervalo de um dia. Por exemplo, considere um registro de entidade de user A que tem acesso a um bucket do Cloud Storage. Há outro registro de entidade de user A que tem um dispositivo. Após a mesclagem, essas duas entidades resultam em uma única entidade user A com duas relações. Uma relação é que user A tem acesso ao bucket do Cloud Storage e a outra relação é que user A é proprietário do dispositivo. O Chronicle executa um lookback de cinco dias ao criar dados de contexto de entidade. Isso processa dados que chegam tardios e cria um tempo implícito para ficar ativo nos dados de contexto da entidade.

O Chronicle usa a atribuição de alias para enriquecer os dados de telemetria e os gráficos de entidade para enriquecer as entidades. As regras do mecanismo de detecção mesclam as entidades mescladas aos dados de telemetria aprimorados para fornecer análises baseadas no contexto.

Um evento que contém um substantivo de entidade é considerado uma entidade. Veja a seguir alguns tipos de evento e os tipos de entidade correspondentes:

  • ASSET_CONTEXT corresponde a ASSET.
  • RESOURCE_CONTEXT corresponde a RESOURCE.
  • USER_CONTEXT corresponde a USER.
  • GROUP_CONTEXT corresponde a GROUP.

O gráfico de entidades distingue entre dados contextuais e indicadores de comprometimento (IOC, na sigla em inglês) usando as informações de ameaça.

Ao usar dados contextualmente enriquecidos, considere o seguinte comportamento do gráfico de entidades:

  • Não adicione intervalos na entidade. Em vez disso, deixe o gráfico criar intervalos. Isso ocorre porque os intervalos são gerados durante a eliminação de duplicação, a menos que seja especificado de outra forma.
  • Se os intervalos forem especificados, apenas os mesmos eventos serão removidos e a entidade mais recente será retida.
  • Para garantir que as regras ativas e as retrohunts funcionem conforme o esperado, as entidades precisam ser ingeridas pelo menos uma vez por dia.
  • Se as entidades não forem ingeridas diariamente e ingeridas apenas uma vez em dois ou mais dias, as regras ativas poderão funcionar conforme esperado. No entanto, as retrohunts poderão perder o contexto do evento.
  • Se as entidades forem ingeridas mais de uma vez por dia, a duplicação da entidade será eliminada para uma única entidade.
  • Se os dados do evento estiverem ausentes por um dia, os dados do dia anterior serão usados temporariamente para garantir que as regras ativas funcionem bem.

O gráfico de entidades também mescla eventos com identificadores semelhantes para ter uma visualização consolidada dos dados. Essa mesclagem acontece com base na seguinte lista de identificadores:

  • Asset
    • entity.asset.product_object_id
    • entity.asset.hostname
    • entity.asset.asset_id
    • entity.asset.mac
  • User
    • entity.user.product_object_id
    • entity.user.userid
    • entity.user.windows_sid
    • entity.user.email_addresses
    • entity.user.employee_id
  • Resource
    • entity.resource.product_object_id
    • entity.resource.name
  • Group
    • entity.group.product_object_id
    • entity.group.email_addresses
    • entity.group.windows_sid

Calcular estatísticas de prevalência

O Chronicle realiza análises estatísticas sobre dados atuais e recebidos e aprimora os registros de contexto de entidade com métricas relacionadas à prevalência.

A prevalência é um valor numérico que indica a popularidade de uma entidade. A popularidade é definida pelo número de recursos que acessam um artefato, como um domínio, hash de arquivo ou endereço IP. Quanto maior o número, mais popular a entidade. Por exemplo, google.com tem valores de prevalência altos porque é acessado com frequência. Se um domínio for acessado com pouca frequência, ele terá valores de prevalência menores. Entidades mais conhecidas geralmente têm menor probabilidade de serem maliciosas.

Esses valores aprimorados são compatíveis com domínio, IP e arquivo (hash). Os valores são calculados e armazenados nos campos a seguir.

As estatísticas de prevalência de cada entidade são atualizadas todos os dias. Os valores são armazenados em um contexto de entidade separado que pode ser usado pelo mecanismo de detecção, mas não são mostrados nas visualizações investigativas do Chronicle e na pesquisa do UDM.

Os campos a seguir podem ser usados ao criar regras do Detection Engine.

Tipo de entidade Campos UDM
Domínio entity.domain.prevalence.day_count
entity.domain.prevalence.day_max
entity.domain.prevalence.day_max_sub_domains
entity.domain.prevalence.rolling_max
entity.domain.prevalence.rolling_max_sub_domains
Arquivo (hash) entity.file.prevalence.day_count
entity.file.prevalence.day_max
entity.file.prevalence.rolling_max
Endereço IP entity.artifact.prevalence.day_count
entity.artifact.prevalence.day_max
entity.artifact.prevalence.rolling_max

Os valores de day_max e rolling_max são calculados de maneira diferente. Os campos são calculados da seguinte maneira:

  • day_max é calculado como a pontuação de prevalência máxima do artefato durante o dia, em que ele é definido como 0h – 23h59:59 UTC.
  • rolling_max é calculado como a pontuação de prevalência máxima por dia (ou seja, day_max) para o artefato nos últimos 10 dias.
  • day_count é usado para calcular rolling_max e é sempre o valor 10.

Quando calculada para um domínio, a diferença entre day_max versus day_max_sub_domains (e rolling_max versus rolling_max_sub_domains) é a seguinte:

  • rolling_max e day_max representam o número de endereços IP internos exclusivos diários que acessam um determinado domínio (excluindo subdomínios).
  • rolling_max_sub_domains e day_max_sub_domains representam o número de endereços IP internos exclusivos que acessam um determinado domínio (incluindo subdomínios).

As estatísticas de prevalência são calculadas com base nos dados de entidades recém-processados. Os cálculos não são realizados de maneira retroativa sobre dados ingeridos anteriormente. As estatísticas levam cerca de 36 horas para serem calculadas e armazenadas.

Calcular os horários da primeira e da última visualização das entidades

O Chronicle realiza análises estatísticas sobre os dados de entrada e aprimora os registros do contexto da entidade com os horários da primeira e da última visualização de uma entidade. O campo first_seen_time armazena a data e a hora em que a entidade foi vista pela primeira vez no ambiente do cliente. O campo last_seen_time armazena a data e a hora da observação mais recente.

Como vários indicadores (campos UDM) podem identificar um recurso ou um usuário, a primeira visualização é a primeira vez que qualquer um dos indicadores que identificam o usuário ou recurso foi visto no ambiente do cliente.

Todos os campos UDM que descrevem um recurso são os seguintes:

  • entity.asset.hostname
  • entity.asset.ip
  • entity.asset.mac
  • entity.asset.asset_id
  • entity.asset.product_object_id

Todos os campos UDM que descrevem um usuário são os seguintes:

  • entity.user.windows_sid
  • entity.user.product_object_id
  • entity.user.userid
  • entity.user.employee_id
  • entity.user.email_addresses

A hora da primeira e da última visualização permite que um analista correlacione determinadas atividades que ocorreram depois que um domínio, arquivo (hash), recurso, usuário ou endereço IP foi visto pela primeira vez ou que parou de ocorrer depois que o domínio, arquivo (hash) ou endereço IP foi visto pela última vez.

Os campos first_seen_time e last_seen_time são preenchidos com entidades que descrevem um domínio, um endereço IP e um arquivo (hash). No caso de entidades que descrevem um usuário ou recurso, apenas o campo first_seen_time é preenchido. Esses valores não são calculados para entidades que descrevem outros tipos, como um grupo ou um recurso.

As estatísticas são calculadas para cada entidade em todos os namespaces. O Chronicle não calcula as estatísticas para cada entidade nos namespaces individuais. No momento, essas estatísticas não são exportadas para o esquema do Chronicle events no BigQuery.

Os valores aprimorados são calculados e armazenados nos seguintes campos do UDM:

Tipo de entidade Campos UDM
Domínio entity.domain.first_seen_time
entity.domain.last_seen_time
Arquivo (hash) entity.file.first_seen_time
entity.file.last_seen_time
Endereço IP entity.artifact.first_seen_time
entity.artifact.last_seen_time
Recurso entity.asset.first_seen_time
Usuário entity.user.first_seen_time

Aprimorar eventos com dados de geolocalização

Os dados de registro recebidos podem incluir endereços IP externo sem informações de localização correspondentes. Isso é comum quando um evento está registrando informações sobre a atividade do dispositivo que não está em uma rede corporativa. Por exemplo, um evento de login em um serviço em nuvem conteria um endereço IP de origem ou de cliente com base no endereço IP externo de um dispositivo retornado pela NAT da operadora.

O Chronicle fornece dados aprimorados por geolocalização para endereços IP externo, permitindo detecções de regras mais eficientes e maior contexto para investigações. Por exemplo, o Chronicle pode usar um endereço IP externo para aprimorar o evento com informações sobre o país (como os Estados Unidos), um estado específico (como o Alasca) e a rede em que o endereço IP está (como o ASN e o nome da operadora).

O Chronicle usa os dados de local fornecidos pelo Google para fornecer informações de rede e localização geográfica aproximadas para um endereço IP. É possível escrever regras do Detection Engine nesses campos nos eventos. Os dados de eventos aprimorados também são exportados para o BigQuery, onde podem ser usados em painéis e relatórios do Chronicle.

Os seguintes endereços IP não foram aprimorados:

  • Espaços de endereço IP privados do RFC 1918 porque eles são internos à rede da empresa.
  • Espaço de endereços IP multicast RFC 5771 porque os endereços multicast não pertencem a um único local.
  • Endereços locais exclusivos IPv6.
  • Endereços IP do serviço do Google Cloud. As exceções são os endereços IP externo do Google Cloud Compute Engine, que são aprimorados.

O Chronicle aprimora os seguintes campos do UDM com dados de geolocalização:

  • principal
  • target
  • src
  • observer
Tipos de dados Campo "UDM"
Local (por exemplo, Estados Unidos) ( principal | target | src | observer ).ip_geo_artifact.location.country_or_region
Estado (por exemplo, Nova York) ( principal | target | src | observer ).ip_geo_artifact.location.state
Longitude ( principal | target | src | observer ).ip_geo_artifact.location.region_coordinates.longitude
Latitude ( principal | target | src | observer ).ip_geo_artifact.location.region_coordinates.latitude
ASN (número do sistema autônomo) ( principal | target | src | observer ).ip_geo_artifact.network.asn
Nome da operadora ( principal | target | src | observer ).ip_geo_artifact.network.carrier_name
Domínio DNS ( principal | target | src | observer ).ip_geo_artifact.network.dns_domain
Nome da organização ( principal | target | src | observer ).ip_geo_artifact.network.organization_name

O exemplo a seguir mostra o tipo de informação geográfica que seria adicionada a um evento do UDM com um endereço IP marcado para os Países Baixos:

Campo "UDM" Valor
principal.ip_geo_artifact.location.country_or_region Netherlands
principal.ip_geo_artifact.location.region_coordinates.latitude 52.132633
principal.ip_geo_artifact.location.region_coordinates.longitude 5.291266
principal.ip_geo_artifact.network.asn 8455
principal.ip_geo_artifact.network.carrier_name schuberg philis

Inconsistências

A tecnologia de geolocalização por IP do Google usa uma combinação de dados e outras entradas e métodos para fornecer a localização do endereço IP e a resolução da rede aos nossos usuários. Outras organizações podem usar indicadores ou métodos diferentes, que ocasionalmente podem levar a resultados diferentes.

Se surgirem casos em que você notar uma inconsistência nos resultados de geolocalização de IP fornecidos pelo Google, abra um caso de suporte ao cliente para que possamos investigar e, se apropriado, corrigir nossos registros.

Aprimore as entidades com informações de listas de ameaças da Navegação segura

O Chronicle ingere dados da Navegação segura relacionados a hashes de arquivos. Os dados de cada arquivo são armazenados como uma entidade e fornecem mais contexto sobre o arquivo. Os analistas podem criar regras do mecanismo de detecção que consultam os dados do contexto da entidade para criar análises baseadas no contexto.

As informações a seguir são armazenadas com o registro de contexto da entidade.

Campo "UDM" Descrição
entity.metadata.product_entity_id Identificador exclusivo da entidade.
entity.metadata.entity_type Esse valor é FILE, indicando que a entidade descreve um arquivo.
entity.metadata.collected_timestamp A data e a hora em que a entidade foi observada ou o evento ocorreu.
entity.metadata.interval Armazena a hora de início e a hora de término em que estes dados são válidos. Como o conteúdo da lista de ameaças muda ao longo do tempo, start_time e end_time refletem o intervalo de tempo em que os dados sobre a entidade são válidos. Por exemplo, foi observado um hash de arquivo malicioso ou suspeito entre start_time and end_time.
entity.metadata.threat.category Aqui é o SecurityCategory do Chronicle. Ele é definido como um ou mais dos seguintes valores:
  • SOFTWARE_MALICIOUS: indica que a ameaça está relacionada a malware.
  • SOFTWARE_PUA: indica que a ameaça está relacionada a um software indesejado.
entity.metadata.threat.severity Aqui é o ProductSeverity do Chronicle. Se o valor for CRITICAL, isso indica que o artefato parece malicioso. Se o valor não for especificado, não haverá confiança suficiente para indicar que o artefato é malicioso.
entity.metadata.product_name Armazena o valor Google Safe Browsing.
entity.file.sha256 O valor de hash SHA256 do arquivo.

Aprimore entidades com dados WHOIS

O Chronicle processa dados WHOIS diariamente. Durante a ingestão de dados de dispositivos do cliente recebidos, o Chronicle avalia domínios em dados de clientes em relação aos dados WHOIS. Quando há uma correspondência, o Chronicle armazena os dados WHOIS relacionados com o registro da entidade do domínio. Para cada entidade, em que entity.metadata.entity_type = DOMAIN_NAME, o Chronicle aprimora a entidade com informações do WHOIS.

O Chronicle preenche os dados WHOIS aprimorados nos seguintes campos do registro da entidade:

  • entity.domain.admin.attribute.labels
  • entity.domain.audit_update_time
  • entity.domain.billing.attribute.labels
  • entity.domain.billing.office_address.country_or_region
  • entity.domain.contact_email
  • entity.domain.creation_time
  • entity.domain.expiration_time
  • entity.domain.iana_registrar_id
  • entity.domain.name_server
  • entity.domain.private_registration
  • entity.domain.registrant.company_name
  • entity.domain.registrant.office_address.state
  • entity.domain.registrant.office_address.country_or_region
  • entity.domain.registrant.email_addresses
  • entity.domain.registrant.user_display_name
  • entity.domain.registrar
  • entity.domain.registry_data_raw_text
  • entity.domain.status
  • entity.domain.tech.attribute.labels
  • entity.domain.update_time
  • entity.domain.whois_record_raw_text
  • entity.domain.whois_server
  • entity.domain.zone

Para ver uma descrição desses campos, consulte o documento da lista de campos do modelo de dados unificado.

Ingerir e armazenar dados do Google Cloud Threat Intelligence

O Chronicle ingere dados de fontes de inteligência de ameaças do Google Cloud (GCTI, na sigla em inglês) que fornecem informações contextuais que podem ser usadas ao investigar a atividade no seu ambiente. É possível consultar as seguintes fontes de dados:

  • Nós de saída do Tor da GCTI: endereços IP que são nós de saída do Tor conhecidos.
  • Binários benignos de GCTI: arquivos que fazem parte da distribuição original do sistema operacional ou que foram atualizados por um patch de sistema operacional oficial. Alguns binários oficiais do sistema operacional que foram usados indevidamente por um adversário por meio de atividades comuns em ataques terrestres são excluídos dessa fonte de dados, como os que se concentram nos vetores de entrada iniciais.
  • Ferramentas de acesso remoto do GCTI: arquivos usados com frequência por agentes maliciosos. Em geral, essas ferramentas são aplicativos legítimos que às vezes são usados indevidamente para se conectar remotamente a sistemas comprometidos.

    Esses dados contextuais são armazenados globalmente como entidades. Consulte os dados usando as regras de detecção do mecanismo. Inclua os seguintes campos e valores UDM na regra para consultar essas entidades globais:

  • graph.metadata.vendor_name = Google Cloud Threat Intelligence

  • graph.metadata.product_name = GCTI Feed

Neste documento, o marcador de posição <variable_name> representa o nome da variável exclusiva usado em uma regra para identificar um registro UDM.

Fontes de dados de inteligência contra ameaças do Google Cloud com marcação de tempo x atemporal

As fontes de dados de inteligência contra ameaças do Google Cloud são cronometradas ou atemporais.

As fontes de dados com marcação de tempo têm um intervalo associado a cada entrada. Isso significa que, se uma detecção for gerada no dia 1, em qualquer dia no futuro, ela deverá ser gerada para o dia 1 durante uma busca retrospectiva.

As fontes de dados atemporais não têm um período associado a elas. Isso ocorre porque apenas o conjunto mais recente de dados é o que deve ser considerado. As fontes de dados atemporais são usadas com frequência para dados, como hashes de arquivos que não precisam mudar. Se nenhuma detecção for gerada no dia 1, no dia 2 uma detecção poderá ser gerada para o dia 1 durante uma busca retroativa porque uma nova entrada foi adicionada.

Dados sobre endereços IP do nó de saída do Tor

O Chronicle ingere e armazena endereços IP que são nós de saída conhecidos do Tor. Os nós de saída do Tor são pontos em que o tráfego sai da rede do Tor. As informações ingeridas dessa fonte de dados são armazenadas nos campos do UDM a seguir. Os dados nesta origem são cronometrados.

Campo "UDM" Descrição
<variable_name>.graph.metadata.vendor_name Armazena o valor Google Cloud Threat Intelligence.
<variable_name>.graph.metadata.product_name Armazena o valor GCTI Feed.
<variable_name>.graph.metadata.threat.threat_feed_name Armazena o valor Tor Exit Nodes.
<variable_name>.graph.entity.artifact.ip Armazena o endereço IP ingerido da fonte de dados do GCTI.

Dados sobre arquivos benignos do sistema operacional

O Chronicle ingere e armazena hashes de arquivo da fonte de dados GCTI Benign Binaries. As informações ingeridas dessa fonte de dados são armazenadas nos campos do UDM a seguir. Os dados nesta origem são atemporais.

Campo "UDM" Descrição
<variable_name>.graph.metadata.vendor_name Armazena o valor Google Cloud Threat Intelligence.
<variable_name>.graph.metadata.product_name Armazena o valor GCTI Feed.
<variable_name>.graph.metadata.threat.threat_feed_name Armazena o valor Benign Binaries.
<variable_name>.graph.entity.file.sha256 Armazena o valor de hash SHA256 do arquivo.
<variable_name>.graph.entity.file.sha1 Armazena o valor de hash SHA1 do arquivo.
<variable_name>.graph.entity.file.md5 Armazena o valor de hash MD5 do arquivo.

Dados sobre ferramentas de acesso remoto

As ferramentas de acesso remoto incluem hashes de arquivos para ferramentas de acesso remoto conhecidas, como clientes VNC usados com frequência por agentes maliciosos. Em geral, essas ferramentas são aplicativos legítimos que, às vezes, sofrem abuso para estabelecer uma conexão remota com sistemas comprometidos. As informações ingeridas dessa fonte de dados são armazenadas nos campos do UDM a seguir. Os dados nesta origem são atemporais.

Campo "UDM" Descrição
.graph.metadata.vendor_name Armazena o valor Google Cloud Threat Intelligence.
.graph.metadata.product_name Armazena o valor GCTI Feed.
.graph.metadata.threat.threat_feed_name Armazena o valor Remote Access Tools.
.graph.entity.file.sha256 Armazena o valor de hash SHA256 do arquivo.
.graph.entity.file.sha1 Armazena o valor de hash SHA1 do arquivo.
.graph.entity.file.md5 Armazena o valor de hash MD5 do arquivo.

Aprimorar eventos com metadados de arquivos do VirusTotal

O Chronicle aprimora os hashes de arquivos nos eventos do UDM e fornece mais contexto durante uma investigação. Os eventos do UDM são aprimorados com a atribuição de alias de hash em um ambiente do cliente. O alias de hash combina todos os tipos de hashes de arquivo e fornece informações sobre um hash de arquivo durante uma pesquisa.

A integração dos metadados de arquivo do VirusTotal e do aprimoramento do relacionamento com o Chronicle pode ser usada para identificar padrões de atividade maliciosa e rastrear os movimentos de malware em uma rede.

Um registro bruto oferece informações limitadas sobre o arquivo. O VirusTotal enriquece o evento com metadados de arquivos para gerar um despejo de hashes inválidos com metadados sobre o arquivo inválido. Os metadados incluem informações como nomes de arquivos, tipos, funções importadas e tags. É possível usar essas informações no mecanismo de pesquisa e detecção do UDM com o YARA-L para entender eventos de arquivo inválidos e, em geral, durante a busca por ameaças. Um exemplo de caso de uso é detectar modificações no arquivo original, o que, por sua vez, importaria os metadados do arquivo para detecção de ameaças.

As informações a seguir são armazenadas com o registro. Para ver uma lista de todos os campos do UDM, consulte a Lista de campos do modelo de dados unificado.

Tipos de dados Campo "UDM"
SHA-256 ( principal | target | src | observer ).file.sha256
MD5 ( principal | target | src | observer ).file.md5
SHA-1 ( principal | target | src | observer ).file.sha1
Tamanho ( principal | target | src | observer ).file.size
ssdeep ( principal | target | src | observer ).file.ssdeep
Vhash ( principal | target | src | observer ).file.vhash
Authentihash ( principal | target | src | observer ).file.authentihash
Tipo de arquivo ( principal | target | src | observer ).file.file_type
Tags ( principal | target | src | observer ).file.tags
Tags de recursos ( principal | target | src | observer ).file.capabilities_tags
Nomes ( principal | target | src | observer ).file.names
Horário da primeira visualização ( principal | target | src | observer ).file.first_seen_time
Horário da última visualização ( principal | target | src | observer ).file.last_seen_time
Horário da última modificação ( principal | target | src | observer ).file.last_modification_time
Horário da última análise ( principal | target | src | observer ).file.last_analysis_time
URLs incorporados ( principal | target | src | observer ).file.embedded_urls
IPs incorporados ( principal | target | src | observer ).file.embedded_ips
Domínios incorporados ( principal | target | src | observer ).file.embedded_domains
Informações da assinatura ( principal | target | src | observer ).file.signature_info
Informações da assinatura
  • Sigcheck
( principal | target | src | observer).file.signature_info.sigcheck
Informações da assinatura
  • Sigcheck
    • Mensagem de verificação
( principal | target | src | observer ).file.signature_info.sigcheck.verification_message
Informações da assinatura
  • Sigcheck
    • Verificado
( principal | target | src | observer ).file.signature_info.sigcheck.verified
Informações da assinatura
  • Sigcheck
    • Signatários
( principal | target | src | observer ).file.signature_info.sigcheck.signers
Informações da assinatura
  • Sigcheck
    • Signatários
      • Nome
( principal | target | src | observer ).file.signature_info.sigcheck.signers.name
Informações da assinatura
  • Sigcheck
    • Signatários
      • Status
( principal | target | src | observer ).file.signature_info.sigcheck.signers.status
Informações da assinatura
  • Sigcheck
    • Signatários
      • Uso válido para o certificado
( principal | target | src | observer ).file.signature_info.sigcheck.signers.valid_usage
Informações da assinatura
  • Sigcheck
    • Signatários
      • Emissor do certificado
( principal | target | src | observer ).file.signature_info.sigcheck.signers.cert_issuer
Informações da assinatura
  • Sigcheck
    • X509
( principal | target | src | observer ).file.signature_info.sigcheck.x509
Informações da assinatura
  • Sigcheck
    • X509
      • Nome
( principal | target | src | observer ).file.signature_info.sigcheck.x509.name
Informações da assinatura
  • Sigcheck
    • X509
      • Algoritmo
( principal | target | src | observer ).file.signature_info.sigcheck.x509.algorithm
Informações da assinatura
  • Sigcheck
    • X509
      • Impressão digital
( principal | target | src | observer ).file.signature_info.sigcheck.x509.thumprint
Informações da assinatura
  • Sigcheck
    • X509
      • Emissor do certificado
( principal | target | src | observer ).file.signature_info.sigcheck.x509.cert_issuer
Informações da assinatura
  • Sigcheck
    • X509
      • Número de série
( principal | target | src | observer ).file.signature_info.sigcheck.x509.serial_number
Informações da assinatura
  • Codinome
( principal | target | src | observer ).file.signature_info.codesign
Informações da assinatura
  • Codinome
    • ID
( principal | target | src | observer ).file.signature_info.codesign.id
Informações da assinatura
  • Codinome
    • Formato
( principal | target | src | observer ).file.signature_info.codesign.format
Informações da assinatura
  • Codinome
    • Tempo de compilação
( principal | target | src | observer ).file.signature_info.codesign.compilation_time
Informações do Exiftool ( principal | target | src | observer ).file.exif_info
Informações do Exiftool
  • Nome do arquivo original
( principal | target | src | observer ).file.exif_info.original_file
Informações do Exiftool
  • Nome do produto
( principal | target | src | observer ).file.exif_info.product
Informações do Exiftool
  • Nome da empresa
( principal | target | src | observer ).file.exif_info.company
Informações do Exiftool
  • Descrição do arquivo
( principal | target | src | observer ).file.exif_info.file_description
Informações do Exiftool
  • Ponto de entrada
( principal | target | src | observer ).file.exif_info.entry_point
Informações do Exiftool
  • Tempo de compilação
( principal | target | src | observer ).file.exif_info.compilation_time
Informações do PDF ( principal | target | src | observer ).file.pdf_info
Informações do PDF
  • Número de tags /JS
( principal | target | src | observer ).file.pdf_info.js
Informações do PDF
  • Número de tags /JavaScript
( principal | target | src | observer ).file.pdf_info.javascript
Informações do PDF
  • Número de tags de lançamento
( principal | target | src | observer ).file.pdf_info.launch_action_count
Informações do PDF
  • Número de fluxos do objeto
( principal | target | src | observer ).file.pdf_info.object_stream_count
Informações do PDF
  • Número de definições de objeto (palavra-chave endobj)
( principal | target | src | observer ).file.pdf_info.endobj_count
Informações do PDF
  • Versão do PDF
( principal | target | src | observer ).file.pdf_info.header
Informações do PDF
  • Número de tags /AcroForm
( principal | target | src | observer ).file.pdf_info.acroform
Informações do PDF
  • Número de tags /AA
( principal | target | src | observer ).file.pdf_info.autoaction
Informações do PDF
  • Número de tags /EmbeddedFile
( principal | target | src | observer ).file.pdf_info.embedded_file
Informações do PDF
  • /Criptografar tag
( principal | target | src | observer ).file.pdf_info.encrypted
Informações do PDF
  • Número de tags /rich media
( principal | target | src | observer ).file.pdf_info.flash
Informações do PDF
  • Número de tags /JBig2Decode
( principal | target | src | observer ).file.pdf_info.jbig2_compression
Informações do PDF
  • Número de definições de objeto (palavra-chave obj)
( principal | target | src | observer ).file.pdf_info.obj_count
Informações do PDF
  • Número de objetos de stream definidos (palavra-chave de stream)
( principal | target | src | observer ).file.pdf_info.endstream_count
Informações do PDF
  • Número de páginas no PDF
( principal | target | src | observer ).file.pdf_info.page_count
Informações do PDF
  • Número de objetos de stream definidos (palavra-chave de stream)
( principal | target | src | observer ).file.pdf_info.stream_count
Informações do PDF
  • Número de tags /OpenAction
( principal | target | src | observer ).file.pdf_info.openaction
Informações do PDF
  • Número de palavras-chave startxref
( principal | target | src | observer ).file.pdf_info.startxref
Informações do PDF
  • Número de cores expressos com mais de 3 bytes (CVE-2009-3459)
( principal | target | src | observer ).file.pdf_info.suspicious_colors
Informações do PDF
  • Número de palavras-chave de trailer
( principal | target | src | observer ).file.pdf_info.trailer
Informações do PDF
  • Número de tags /XFA encontradas
( principal | target | src | observer ).file.pdf_info.xfa
Informações do PDF
  • Número de palavras-chave xref
( principal | target | src | observer ).file.pdf_info.xref
Metadados do arquivo PE ( principal | target | src | observer ).file.pe_file
Metadados do arquivo PE
  • Imphash
( principal | target | src | observer ).file.pe_file.imphash
Metadados do arquivo PE
  • Ponto de entrada
( principal | target | src | observer ).file.pe_file.entry_point
Metadados do arquivo PE
  • Exiftool de ponto de entrada
( principal | target | src | observer ).file.pe_file.entry_point_exiftool
Metadados do arquivo PE
  • Tempo de compilação
( principal | target | src | observer ).file.pe_file.compilation_time
Metadados do arquivo PE
  • Tempo exiftool de compilação
( principal | target | src | observer ).file.pe_file.compilation_exiftool_time
Metadados do arquivo PE
  • Seções
( principal | target | src | observer ).file.pe_file.section
Metadados do arquivo PE
  • Seções
    • Nome
( principal | target | src | observer ).file.pe_file.section.name
Metadados do arquivo PE
  • Seções
    • Entropia
( principal | target | src | observer ).file.pe_file.section.entropy
Metadados do arquivo PE
  • Seções
    • Tamanho bruto em bytes
( principal | target | src | observer ).file.pe_file.section.raw_size_bytes
Metadados do arquivo PE
  • Seções
    • Tamanho virtual em bytes
( principal | target | src | observer ).file.pe_file.section.virtual_size_bytes
Metadados do arquivo PE
  • Seções
    • MD5 hexadecimal
( principal | target | src | observer ).file.pe_file.section.md5_hex
Metadados do arquivo PE
  • Importações
( principal | target | src | observer ).file.pe_file.imports
Metadados do arquivo PE
  • Importações
    • Biblioteca
( principal | target | src | observer ).file.pe_file.imports.library
Metadados do arquivo PE
  • Importações
    • Funções
( principal | target | src | observer ).file.pe_file.imports.functions
Metadados do arquivo PE
  • Informações sobre o recurso
( principal | target | src | observer ).file.pe_file.resource
Metadados do arquivo PE
  • Informações sobre o recurso
    • SHA-256 hexadecimal
( principal | target | src | observer ).file.pe_file.resource.sha256_hex
Metadados do arquivo PE
  • Informações sobre o recurso
    • Tipo de recurso identificado pelo módulo mágico do Python
( principal | target | src | observer ).file.pe_file.resource.filetype_magic
Metadados do arquivo PE
  • Informações sobre o recurso
    • Versão legível por humanos dos identificadores de idioma e subidioma, conforme definido na especificação do Windows PE.
( principal | target | src | observer ).file.pe_file.resource_language_code
Metadados do arquivo PE
  • Informações sobre o recurso
    • Entropia
( principal | target | src | observer ).file.pe_file.resource.entropy
Metadados do arquivo PE
  • Informações sobre o recurso
    • Tipo de arquivo
( principal | target | src | observer ).file.pe_file.resource.file_type
Metadados do arquivo PE
  • Número de recursos por tipo
( principal | target | src | observer ).file.pe_file.resources_type_count_str
Metadados do arquivo PE
  • Número de recursos por idioma
( principal | target | src | observer ).file.pe_file.resources_language_count_str

Aprimore entidades com dados de relacionamento do VirusTotal

O VirusTotal ajuda a analisar arquivos, domínios, endereços IP e URLs suspeitos para detectar malware e outras violações e compartilhar as descobertas com a comunidade de segurança. O Chronicle ingere dados de conexões relacionadas ao VirusTotal. Esses dados são armazenados como uma entidade e fornecem informações sobre a relação entre hashes e arquivos de arquivos, domínios, endereços IP e URLs.

Os analistas podem usar esses dados para determinar se um hash de arquivo está incorreto, com base em informações sobre o URL ou o domínio de outras fontes. Essas informações podem ser usadas para criar regras do mecanismo de detecção que consultam os dados de contexto da entidade para criar análises contextuais.

Esses dados só estão disponíveis para algumas licenças do VirusTotal e do Chronicle. Verifique seus direitos com o gerente de contas.

As informações a seguir são armazenadas com o registro de contexto da entidade:

Campo "UDM" Descrição
entity.metadata.product_entity_id Identificador exclusivo da entidade
entity.metadata.entity_type Armazena o valor FILE, indicando que a entidade descreve um arquivo
entity.metadata.interval start_time refere-se ao início do tempo, e end_time é o fim do período em que esses dados são válidos.
entity.metadata.source_labels Esse campo armazena uma lista de pares de chave-valor de source_id e target_id para essa entidade. source_id é o hash do arquivo, e target_id pode ser hash ou o valor do URL, nome de domínio ou endereço IP ao qual esse arquivo está relacionado. Pesquise URL, nome de domínio, endereço IP ou arquivo em virustotal.com.
entity.metadata.product_name Armazena o valor "VirusTotal Relationships"
entity.metadata.vendor_name Armazena o valor "VirusTotal"
entity.file.sha256 Armazena o valor de hash SHA-256 do arquivo
entity.file.relations Uma lista de entidades filhas a que a entidade do arquivo pai está relacionada
entity.relations.relationship Esse campo explica o tipo de relação entre entidades pai e filho. O valor pode ser EXECUTES, DOWNLOADED_FROM ou CONTACTS.
entity.relations.direction Armazena o valor "UNIDirectionAL" e indica a direção de relação com a entidade filha
entity.relations.entity.url O URL com que o arquivo na entidade pai entra em contato (se a relação entre a entidade pai e o URL for CONTACTS) ou o URL do qual foi feito o download do arquivo na entidade pai (se a relação entre a entidade pai e o URL for DOWNLOADED_FROM).
entity.relations.entity.ip Uma lista de endereços IP dos quais o arquivo na entidade pai entra em contato ou foi transferido por download Contém apenas um endereço IP.
entity.relations.entity.domain.name O nome de domínio do qual o arquivo na entidade pai entra em contato ou do qual foi feito o download
entity.relations.entity.file.sha256 Armazena o valor de hash SHA-256 para o arquivo na relação
entity.relations.entity_type Este campo contém o tipo de entidade na relação. O valor pode ser URL, DOMAIN_NAME, IP_ADDRESS ou FILE. Esses campos são preenchidos de acordo com o entity_type. Por exemplo, se entity_type for URL, entity.relations.entity.url será preenchido.

A seguir

Para saber mais sobre como usar dados enriquecidos com outros recursos do Chronicle, consulte: