Coletar registros da Cloudflare

Compatível com:

Visão geral

Esse analisador processa vários tipos de registro da Cloudflare (DNS, HTTP, auditoria, Zero Trust, CASB). Primeiro, ele normaliza os campos comuns e depois aplica a lógica condicional com base em campos específicos, como QueryName, Action e ID, para extrair e mapear dados relevantes para o UDM. Ele também realiza conversões de tipo de dados, correspondência de grok para endereços IP e hashes e processa payloads JSON aninhados.

Antes de começar

  • Verifique se você tem uma instância do Google SecOps.
  • Verifique se você tem acesso privilegiado ao IAM do Google Cloud.
  • Verifique se você tem acesso privilegiado ao Google Cloud Storage.
  • Verifique se você tem acesso privilegiado ao Cloudflare.

Crie um bucket do Google Cloud Storage

  1. fazer login no console do Google Cloud
  2. Acesse a página Buckets do Cloud Storage.

    Acessar buckets

  3. Clique em Criar.

  4. Na página Criar um bucket, insira as informações do seu bucket. Após cada uma das etapas a seguir, clique em Continuar para prosseguir para a próxima:

    1. Na seção Começar, faça o seguinte:

      1. Insira um nome exclusivo que atenda aos requisitos de nome de bucket (por exemplo, cloudflare-data).
      2. Para ativar o namespace hierárquico, clique na seta de expansão para abrir a seção Otimizar para cargas de trabalho orientadas a arquivos e com uso intensivo de dados e selecione Ativar namespace hierárquico neste bucket.
      1. Para adicionar um rótulo de bucket, clique na seta de expansão para abrir a seção Rótulos.
      2. Clique em Adicionar rótulo e especifique uma chave e um valor para o rótulo.
    2. Na seção Escolha onde armazenar seus dados, faça o seguinte:

      1. Selecione um tipo de local.
      2. Use o menu suspenso do tipo de local para selecionar um Local em que os dados de objetos no bucket serão armazenados permanentemente.
        1. Se você selecionar o tipo de local birregional, também poderá ativar a replicação turbo usando a caixa de seleção relevante.
      3. Para configurar a replicação entre buckets, abra a seção Configurar a replicação entre buckets.
    3. Na seção Escolha uma classe de armazenamento para seus dados, selecione uma classe de armazenamento padrão para o bucket ou selecione Classe automática para gerenciamento automático da classe de armazenamento dos dados do bucket.

    4. Na seção Escolha como controlar o acesso a objetos, selecione não para aplicar a prevenção de acesso público e selecione um modelo de controle de acesso para os objetos do bucket.

    5. Na seção Escolha como proteger os dados do objeto, faça o seguinte:

      1. Selecione qualquer uma das opções em Proteção de dados que você quer definir para o bucket.
      2. Para escolher como os dados do objeto serão criptografados, clique na seta de expansão identificada como Criptografia de dados e selecione um método de criptografia de dados.
  5. Clique em Criar.

Criar uma conta de serviço do Google Cloud

  1. Acesse IAM e administrador > Contas de serviço.
  2. Crie uma nova conta de serviço.
  3. Dê um nome descritivo (por exemplo, cloudflare-logs).
  4. Conceda à conta de serviço o papel Criador de objetos do Storage no bucket do GCS criado na etapa anterior.
  5. Crie uma chave SSH para a conta de serviço.
  6. Faça o download de um arquivo de chave JSON para a conta de serviço. Mantenha esse arquivo seguro.

Ativar o IAM da Cloudflare para o Google Cloud Storage

  1. Acesse Armazenamento > Navegador > Bucket > Permissões.
  2. Adicione o membro logpush@cloudflare-data.iam.gserviceaccount.com com a permissão Administrador de objetos do Storage.

Configurar um feed no Google SecOps para processar registros da Cloudflare

  1. Acesse Configurações do SIEM > Feeds.
  2. Clique em Adicionar novo.
  3. No campo Nome do feed, insira um nome para o feed (por exemplo, Logs do Cloudflare).
  4. Selecione Google Cloud Storage como o Tipo de origem.
  5. Selecione Cloudflare como o Tipo de registro.
  6. Clique em Pegar conta de serviço como a Conta de serviço do Chronicle.
  7. Clique em Próxima.
  8. Especifique valores para os seguintes parâmetros de entrada:

    • URI do bucket do Storage: URL do bucket do Google Cloud Storage no formato gs://my-bucket/<value>.
    • O URI é um: selecione Diretório que inclui subdiretórios.
    • Opções de exclusão da origem: selecione a opção de exclusão de acordo com sua preferência.
    • Namespace de recursos: o namespace de recursos.
    • Rótulos de ingestão: o rótulo aplicado aos eventos desse feed.
  9. Clique em Próxima.

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

Configurar a Cloudflare para enviar registros ao Google Cloud Storage

  1. Faça login no painel da Cloudflare.
  2. Selecione a conta ou domínio da empresa (também conhecido como zona) que você quer usar com o Logpush.
  3. Acesse Análise e registros > Logpush.
  4. Selecione o job Criar um Logpush.
  5. Em Selecionar um destino, selecione Google Cloud Storage.
  6. Insira ou selecione os seguintes detalhes do destino:

    • Bucket: nome do bucket do GCS
    • Caminho: local do bucket no contêiner de armazenamento
    • Caixa de seleção: organize os registros em subpastas diárias (recomendado)
  7. Clique em Continuar.

  8. Verificação de propriedade:

    1. A Cloudflare envia um arquivo para seu bucket.
    2. Copie e cole o token:
      1. Faça login no console do Google Cloud > Armazenamento > Bucket da Cloudflare.
      2. Abra o arquivo de contestação de propriedade.
      3. Copie o token de propriedade.
      4. Insira o token de propriedade no console da Cloudflare.
      5. Selecione Continuar.
    3. Selecione o conjunto de dados a ser enviado para o bucket.
  9. Configure o job de envio de registro:

    1. Digite o nome do job.
    2. Em Se os registros corresponderem, selecione os eventos a serem incluídos e/ou removidos dos registros.
    1. Envie os seguintes campos: selecione enviar todos os registros ou escolha seletivamente quais registros você quer enviar.
  10. Selecione Enviar para finalizar a configuração.

Tabela de mapeamento do UDM

Campo de registro Mapeamento do UDM Lógica
AccountID target.resource.id, target.resource.product_object_id O ID da conta associada ao evento.
Action security_result.action Ação realizada com base no evento. allow ou allowed* resulta em ALLOW. unknown resulta em UNKNOWN_ACTION. Outros valores resultam em BLOCK. Para os registros de acesso, login é mapeado para USER_LOGIN, logout para USER_LOGOUT e outros valores para USER_RESOURCE_ACCESS se um e-mail estiver presente.
ActionResult security_result.action Se true, é mapeado para ALLOW. Se false, é mapeado para BLOCK. Caso contrário, será mapeado para UNKNOWN_ACTION.
ActionType security_result.description Descrição da ação realizada.
ActorEmail principal.user.email_addresses Endereço de e-mail do ator que inicia o evento.
ActorID principal.user.product_object_id ID do ator que inicia o evento.
ActorIP principal.ip, principal.asset.ip Endereço IP do usuário que inicia o evento.
Allowed security_result.action Se true, é mapeado para ALLOW. Caso contrário, será mapeado para BLOCK.
AppDomain target.administrative_domain Domínio do app envolvido no evento.
AppUUID target.resource.product_object_id UUID do aplicativo envolvido no evento.
AssetDisplayName principal.asset.attribute.labels.value, em que a chave é AssetDisplayName Nome de exibição do recurso.
AssetExternalID principal.asset_id (com o prefixo "Cloudflare:") ID externo do recurso.
AssetLink principal.url Link associado ao recurso.
AssetMetadata.agreedToTerms principal.user.attribute.labels.value, em que a chave é agreedToTerms Se o usuário aceitou os termos.
AssetMetadata.changePasswordAtNextLogin principal.user.attribute.labels.value, em que a chave é changePasswordAtNextLogin Se o usuário precisa mudar a senha no próximo login.
AssetMetadata.clientId principal.user.userid ID do cliente nos metadados do recurso.
AssetMetadata.customerId principal.user.userid ID do cliente nos metadados do recurso.
AssetMetadata.familyName principal.user.last_name Sobrenome do usuário nos metadados do recurso.
AssetMetadata.givenName principal.user.first_name Nome próprio do usuário nos metadados do recurso.
AssetMetadata.includeInGlobalAddressList principal.user.attribute.labels.value, em que a chave é includeInGlobalAddressList Se o usuário está incluído na lista de endereços global.
AssetMetadata.ipWhitelisted principal.user.attribute.labels.value, em que a chave é ipWhitelisted Indica se o usuário está na lista de permissões de IP.
AssetMetadata.isAdmin principal.user.attribute.labels.value, em que a chave é isAdmin Se o usuário é um administrador.
AssetMetadata.isDelegatedAdmin principal.user.attribute.labels.value, em que a chave é isDelegatedAdmin Se o usuário é um administrador delegado.
AssetMetadata.isEnforcedIn2Sv principal.user.attribute.labels.value, em que a chave é isEnforcedIn2Sv Indica se a verificação em duas etapas é obrigatória para o usuário.
AssetMetadata.isEnrolledIn2Sv principal.user.attribute.labels.value, em que a chave é isEnrolledIn2Sv Indica se o usuário está inscrito na verificação em duas etapas.
AssetMetadata.kind (Não mapeado) Não mapeado para o objeto IDM.
AssetMetadata.lastLoginTime principal.user.attribute.labels.value, em que a chave é lastLoginTime Hora do último login do usuário.
AssetMetadata.login principal.user.userid Nome de login dos metadados do recurso.
AssetMetadata.name.familyName principal.user.last_name Sobrenome dos metadados do recurso.
AssetMetadata.name.fullName principal.user.user_display_name Nome completo dos metadados do recurso.
AssetMetadata.name.givenName principal.user.first_name Nome próprio dos metadados do recurso.
AssetMetadata.nativeApp security_result.detection_fields.value, em que a chave é nativeApp Se o app é nativo.
AssetMetadata.owner.id principal.user.userid ID do proprietário nos metadados do recurso.
AssetMetadata.primaryEmail principal.user.email_addresses E-mail principal dos metadados do recurso.
AssetMetadata.scopes (Não mapeado) Não mapeado para o objeto IDM.
AssetMetadata.site_admin principal.user.attribute.labels.value, em que a chave é site_admin Se o usuário é um administrador do site.
AssetMetadata.suspended principal.user.attribute.labels.value, em que a chave é suspended Se o usuário está suspenso.
AssetMetadata.url principal.url URL dos metadados do recurso.
AssetMetadata.userKey principal.user.attribute.labels.value, em que a chave é userKey Chave do usuário dos metadados do recurso.
BlockedFileHash target.file.md5, target.file.sha1, target.file.sha256 Hashes do arquivo bloqueado. Analisado usando grok para extrair md5, sha1 ou sha256.
BlockedFileName security_result.about.file.full_path Nome do arquivo bloqueado.
BlockedFileReason security_result.summary Motivo para bloquear o arquivo.
BlockedFileSize target.file.size Tamanho do arquivo bloqueado.
BotScore security_result.detection_fields.value, em que a chave é BotScore Pontuação de bot atribuída à solicitação.
BytesReceived network.received_bytes Número de bytes recebidos.
BytesSent network.sent_bytes Número de bytes enviados.
CacheCacheStatus additional.fields.value.string_value, em que a chave é CacheCacheStatus Status do cache.
CacheResponseBytes additional.fields.value.string_value, em que a chave é CacheResponseBytes Número de bytes na resposta em cache.
CacheResponseStatus additional.fields.value.string_value, em que a chave é CacheResponseStatus Código de status da resposta armazenada em cache.
ClientASN (Não mapeado) Não mapeado para o objeto IDM.
ClientCountry principal.location.country_or_region País do cliente.
ClientDeviceType additional.fields.value.string_value, em que a chave é ClientDeviceType Tipo do dispositivo cliente.
ClientIP principal.ip, principal.asset.ip Endereço IP do cliente.
ClientRequestMethod network.http.method Método de solicitação HTTP usado pelo cliente.
ClientRequestHost target.hostname, target.asset.hostname Nome do host solicitado pelo cliente.
ClientRequestPath (Não mapeado) Não mapeado para o objeto IDM.
ClientRequestProtocol network.application_protocol Protocolo usado na solicitação do cliente (por exemplo, HTTP, HTTPS). A versão do protocolo é removida.
ClientRequestReferer network.http.referral_url URL de referência da solicitação do cliente.
ClientRequestURI target.url (combinado com ClientRequestHost, se presente) URI solicitado pelo cliente.
ClientRequestUserAgent network.http.user_agent User agent da solicitação do cliente. Também analisado e mapeado para network.http.parsed_user_agent.
ClientSSLCipher network.tls.cipher Cifrografia SSL usada pelo cliente.
ClientSSLProtocol network.tls.version Protocolo SSL usado pelo cliente.
ClientSrcPort principal.port Porta de origem do cliente.
ClientTCPHandshakeDurationMs additional.fields.value.string_value, em que a chave é ClientTCPHandshakeDurationMs Duração do handshake TCP do cliente.
ClientTLSHandshakeDurationMs additional.fields.value.string_value, em que a chave é ClientTLSHandshakeDurationMs Duração do handshake de TLS do cliente.
ClientTLSVersion network.tls.version Versão do TLS usada pelo cliente.
ColoID (Não mapeado) Não mapeado para o objeto IDM.
Connection target.resource.attribute.labels.value, em que a chave é Connection Tipo de conexão (por exemplo, SAML).
ConnectionCloseReason additional.fields.value.string_value, em que a chave é ConnectionCloseReason Motivo do encerramento da conexão.
ConnectionReuse additional.fields.value.string_value, em que a chave é ConnectionReuse Se a reutilização de conexão ocorreu.
Country target.location.country_or_region País associado ao evento.
CreatedAt metadata.event_timestamp Carimbo de data/hora da criação do evento.
Datetime metadata.event_timestamp Data e hora do evento.
DestinationIP target.ip, target.asset.ip Endereço IP de destino.
DestinationPort target.port Porta de destino.
DestinationTunnelID additional.fields.value.string_value, em que a chave é DestinationTunnelID ID do túnel de destino.
DeviceID principal.asset_id (com o prefixo "Cloudflare:") ID do dispositivo.
DeviceName principal.hostname, principal.asset.hostname, principal.asset.attribute.labels.value, em que a chave é DeviceName Nome do dispositivo.
DownloadedFileNames security_result.about.labels.value, em que a chave é DownloadFileNames Nomes dos arquivos transferidos por download.
DstIP target.ip, target.asset.ip Endereço IP de destino.
DstPort target.port Porta de destino.
EdgeColoCode additional.fields.value.string_value, em que a chave é EdgeColoCode Código do local de borda do Cloudflare.
EdgeColoID additional.fields.value.string_value, em que a chave é EdgeColoID ID do local de borda da Cloudflare.
EdgeEndTimestamp (Não mapeado) Não mapeado para o objeto IDM.
EdgeResponseBytes network.received_bytes Número de bytes na resposta da borda.
EdgeResponseContentType target.file.mime_type Tipo de conteúdo da resposta de borda.
EdgeResponseStatus network.http.response_code Código de status da resposta de borda.
EdgeServerIP target.ip, target.asset.ip Endereço IP do servidor de borda.
EdgeStartTimestamp metadata.event_timestamp Carimbo de data/hora do início da solicitação na borda.
Email principal.user.email_addresses, target.user.email_addresses Endereço de e-mail associado ao evento.
EgressColoName additional.fields.value.string_value, em que a chave é EgressColoName Nome da porta de saída.
EgressIP principal.ip, principal.asset.ip Endereço IP de saída. Define network.direction como OUTBOUND.
EgressPort principal.port Porta de saída.
EgressRuleID additional.fields.value.string_value, em que a chave é EgressRuleID ID da regra de saída.
EgressRuleName additional.fields.value.string_value, em que a chave é EgressRuleName Nome da regra de saída.
FindingTypeDisplayName security_result.description Nome de exibição do tipo de descoberta.
FindingTypeID security_result.rule_id ID do tipo de descoberta.
FindingTypeSeverity security_result.severity Gravidade do tipo de descoberta.
FirewallMatchesActions security_result.action Ações tomadas pelas regras de firewall. allow, Allow, ALLOW, skip, SKIP, Skip são mapeados para ALLOW. challengeSolved e jschallengeSolved são mapeados para ALLOW_WITH_MODIFICATION. drop e block são mapeados para BLOCK. Outros valores são mapeados para UNKNOWN_ACTION.
FirewallMatchesRuleIDs security_result.rule_id (para o primeiro ID), os IDs subsequentes criam novos objetos security_result. IDs das regras de firewall que correspondem.
FirewallMatchesSources security_result.rule_name Origens das regras de firewall que correspondem.
HTTPHost target.hostname Host HTTP.
HTTPMethod network.http.method Método HTTP.
HTTPVersion network.application_protocol Se o valor contiver "HTTP", defina network.application_protocol como HTTP.
ID metadata.product_log_id ID do evento.
IngressColoName additional.fields.value.string_value, em que a chave é IngressColoName Nome da coluna de entrada.
InstanceID principal.resource.product_object_id ID da instância.
IntegrationDisplayName additional.fields.value.string_value, em que a chave é IntegrationDisplayName Nome de exibição da integração.
IntegrationID metadata.product_deployment_id ID da integração.
IntegrationPolicyVendor additional.fields.value.string_value, em que a chave é IntegrationPolicyVendor Fornecedor da política de integração.
IPAddress target.ip, target.asset.ip Endereço IP associado ao evento.
IsIsolated about.labels.value em que a chave é IsIsolated, security_result.about.resource.attribute.labels.value em que a chave é IsIsolated Se o evento é isolado.
Location principal.location.name Local associado ao evento.
NewValue security_result.about.labels.value, em que a chave é NewValue Novo valor após uma atualização.
Offramp additional.fields.value.string_value, em que a chave é Offramp Saída usada na conexão.
OldValue security_result.about.labels.value, em que a chave é OldValue Valor antigo antes de uma atualização.
OriginIP intermediary.ip, target.ip, target.asset.ip Endereço IP de origem.
OriginPort target.port Porta de origem.
OriginResponseBytes additional.fields.value.string_value, em que a chave é OriginResponseBytes Número de bytes na resposta de origem.
OriginResponseStatus additional.fields.value.string_value, em que a chave é OriginResponseStatus Código de status da resposta de origem.
OriginResponseTime additional.fields.value.string_value, em que a chave é OriginResponseTime Tempo de resposta da origem.
OriginSSLProtocol (Não mapeado) Não mapeado para o objeto IDM.
OriginTLSCertificateIssuer additional.fields.value.string_value, em que a chave é OriginTLSCertificateIssuer Emissor do certificado TLS de origem.
OriginTLSCertificateValidationResult additional.fields.value.string_value, em que a chave é OriginTLSCertificateValidationResult Resultado da validação do certificado TLS de origem.
OriginTLSCipher additional.fields.value.string_value, em que a chave é OriginTLSCipher Cifrografia usada na conexão TLS de origem.
OriginTLSHandshakeDurationMs additional.fields.value.string_value, em que a chave é OriginTLSHandshakeDurationMs Duração do handshake de TLS de origem.
OriginTLSVersion additional.fields.value.string_value, em que a chave é OriginTLSVersion Versão do TLS usada pela origem.
OwnerID target.user.product_object_id ID do proprietário.
Policy security_result.rule_name Política associada ao evento.
PolicyID security_result.rule_id ID da política.
PolicyName security_result.rule_name Nome da política.
Protocol network.application_protocol, network.ip_protocol Protocolo usado na conexão. Se não for "tls" ou "TLS", será convertido para maiúsculas e mapeado para network.application_protocol. Caso contrário, será analisado usando um arquivo de inclusão e mapeado para network.ip_protocol.
PurposeJustificationPrompt (Não mapeado) Não mapeado para o objeto IDM.
PurposeJustificationResponse (Não mapeado) Não mapeado para o objeto IDM.
QueryCategoryIDs security_result.about.labels.value, security_result.about.resource.attribute.labels.value, em que a chave é QueryCategoryIDs IDs das categorias de consulta.
QueryName network.dns.questions.name Nome da consulta DNS. Define metadata.event_type como NETWORK_DNS e network.application_protocol como DNS.
QueryNameReversed network.dns.questions.name Nome invertido da consulta DNS.
QuerySize network.sent_bytes Tamanho da consulta.
QueryType network.dns.questions.type Tipo da consulta DNS. Mapeado para valores numéricos com base nos códigos de tipo de consulta do DNS.
RData network.dns.answers.type, network.dns.answers.data Dados do registro DNS. Cada elemento na matriz RData cria um novo objeto answer.
RayID metadata.product_log_id ID do feixe associado à solicitação.
Referer network.http.referral_url URL de referência.
RequestID metadata.product_log_id ID da solicitação.
ResolverDecision security_result.summary Decisão tomada pelo solucionador.
ResourceID target.resource.id, target.resource.product_object_id ID do recurso.
ResourceType target.resource.resource_subtype Tipo do recurso.
RuleEvaluationDurationMs additional.fields.value.string_value, em que a chave é RuleEvaluationDurationMs Duração da avaliação da regra.
SNI network.tls.client.server_name Indicação do nome do servidor (SNI, na sigla em inglês) no TLS ClientHello.
SecurityAction security_result.action Ação de segurança realizada. O valor vazio ou nenhum SecurityAction é mapeado para ALLOW. challengeSolved ou jschallengeSolved é mapeado para ALLOW_WITH_MODIFICATION. drop ou block é mapeado para BLOCK.
SecurityLevel security_result.severity Nível de segurança. high é mapeado para HIGH, med para MEDIUM e low para LOW.
SessionEndTime additional.fields.value.string_value, em que a chave é SessionEndTime Horário de término da sessão.
SessionID network.session_id ID da sessão.
SessionStartTime metadata.event_timestamp Horário de início da sessão.
SourceIP principal.ip, principal.asset.ip, src.ip, src.asset.ip Endereço IP de origem.
SourcePort principal.port, src.port Porta de origem.
SrcIP principal.ip, principal.asset.ip Endereço IP de origem.
SrcPort principal.port Porta de origem.
TemporaryAccessDuration network.session_duration.seconds Duração do acesso temporário.
Timestamp metadata.event_timestamp Carimbo de data/hora do evento.
Transport network.ip_protocol Protocolo de transporte. Conversão para letras maiúsculas e análise usando um arquivo de inclusão.
UploadedFileNames security_result.about.labels.value, em que a chave é UploadedFileNames Nomes dos arquivos enviados.
URL target.url URL envolvido no evento.
UserAgent network.http.user_agent String do user agent. Também analisado e mapeado para network.http.parsed_user_agent.
UserID principal.user.product_object_id, event.idm.read_only_udm.target.user.product_object_id ID do usuário.
UserUID target.user.product_object_id UID do usuário.
VirtualNetworkID principal.resource.product_object_id ID da rede virtual.
WAFAction security_result.about.labels.value, em que a chave é WAFAction Ação realizada pelo firewall de aplicativos da Web (WAF).
WAFAttackScore security_result.about.resource.attribute.labels.value, em que a chave é WAFAttackScore Pontuação de ataque atribuída pelo WAF.
WAFFlags security_result.about.resource.attribute.labels.value, em que a chave é WAFFlags Flags do WAF.
WAFMatchedVar (Não mapeado) Não mapeado para o objeto IDM.
WAFProfile security_result.about.labels.value, em que a chave é WAFProfile Perfil do WAF.
WAFRCEAttackScore security_result.about.resource.attribute.labels.value, em que a chave é WAFRCEAttackScore Pontuação de ataque de execução remota de código (RCE) do WAF.
WAFRuleID security_result.threat_id, security_result.about.labels.value, em que a chave é WAFRuleID ID da regra do WAF.
WAFRuleMessage security_result.rule_name, security_result.threat_name Mensagem associada à regra do WAF.
WAFSQLiAttackScore security_result.about.resource.attribute.labels.value, em que a chave é WAFSQLiAttackScore Pontuação do ataque de injeção de SQL do WAF.
WAFXSSAttackScore security_result.about.resource.attribute.labels.value, em que a chave é WAFXSSAttackScore Pontuação de ataque de scripting em vários locais (XSS) do WAF.
ZoneID additional.fields.value.string_value, em que a chave é ZoneID ID da zona.
event.idm.read_only_udm.metadata.event_type metadata.event_type Tipo de evento. Definido pelo analisador com base nos dados do registro. O padrão é GENERIC_EVENT se não estiver definido ou se um evento NETWORK_DNS não tiver um principal ou um destino. Pode ser NETWORK_DNS, NETWORK_CONNECTION, USER_LOGIN, USER_LOGOUT, USER_RESOURCE_ACCESS, USER_RESOURCE_UPDATE_CONTENT ou GENERIC_EVENT.
event.idm.read_only_udm.metadata.log_type metadata.log_type Tipo de registro, definido como "CLOUDFLARE".
event.idm.read_only_udm.metadata.product_deployment_id metadata.product_deployment_id ID da implantação do produto.
event.idm.read_only_udm.metadata.product_log_id metadata.product_log_id ID do registro do produto.
event.idm.read_only_udm.metadata.product_name metadata.product_name Nome do produto. Definido pelo analisador com base nos dados do registro. Pode ser "Cloudflare Gateway DNS", "Cloudflare Gateway HTTP", "Cloudflare Audit" ou "Web Application Firewall".
event.idm.read_only_udm.metadata.vendor_name metadata.vendor_name Nome do fornecedor, definido como "Cloudflare".
event.idm.read_only_udm.metadata.event_timestamp metadata.event_timestamp Carimbo de data/hora do evento.
event.idm.read_only_udm.network.application_protocol network.application_protocol Protocolo do aplicativo usado na conexão de rede.
event.idm.read_only_udm.network.direction network.direction Direção da conexão de rede. Defina como OUTBOUND quando EgressIP e SourceIP estiverem presentes.
event.idm.read_only_udm.network.dns.answers network.dns.answers Respostas do DNS.
event.idm.read_only_udm.network.dns.questions network.dns.questions Perguntas sobre DNS.
event.idm.read_only_udm.network.http.method network.http.method Método HTTP.
event.idm.read_only_udm.network.http.parsed_user_agent network.http.parsed_user_agent User agent analisado.
event.idm.read_only_udm.network.http.referral_url network.http.referral_url URL de referência HTTP.
event.idm.read_only_udm.network.http.response_code network.http.response_code Código de resposta HTTP.
event.idm.read_only_udm.network.http.user_agent network.http.user_agent User agent HTTP.
event.idm.read_only_udm.network.ip_protocol network.ip_protocol Protocolo IP.
event.idm.read_only_udm.network.received_bytes network.received_bytes Número de bytes recebidos.
event.idm.read_only_udm.network.sent_bytes network.sent_bytes Número de bytes enviados.
event.idm.read_only_udm.network.session_duration.seconds network.session_duration.seconds Duração da sessão de rede em segundos.
event.idm.read_only_udm.network.session_id network.session_id ID da sessão de rede.
event.idm.read_only_udm.network.tls.cipher network.tls.cipher Pacote de criptografia TLS.
event.idm.read_only_udm.network.tls.client.server_name network.tls.client.server_name Nome do servidor do cliente TLS.
event.idm.read_only_udm.network.tls.version network.tls.version Versão do TLS.
event.idm.read_only_udm.principal.asset.attribute.labels principal.asset.attribute.labels Rótulos associados ao recurso principal.
event.idm.read_only_udm.principal.asset.hostname principal.asset.hostname Nome do host do recurso principal.
event.idm.read_only_udm.principal.asset.ip principal.asset.ip Endereço IP do recurso principal.
event.idm.read_only_udm.principal.asset_id principal.asset_id ID do recurso principal.
event.idm.read_only_udm.principal.hostname principal.hostname Nome do host do principal.
event.idm.read_only_udm.principal.ip principal.ip Endereço IP do principal.
event.idm.read_only_udm.principal.location.country_or_region principal.location.country_or_region País ou região do local do principal.
event.idm.read_only_udm.principal.location.name principal.location.name Nome do local do responsável.
event.idm.read_only_udm.principal.port principal.port Porta usada pelo principal.
event.idm.read_only_udm.principal.resource.product_object_id principal.resource.product_object_id ID do objeto do produto do recurso do principal.
event.idm.read_only_udm.principal.url principal.url URL associado ao principal.
event.idm.read_only_udm.principal.user.attribute.labels principal.user.attribute.labels Rótulos associados ao usuário principal.
event.idm.read_only_udm.principal.user.email_addresses principal.user.email_addresses Endereços de e-mail do usuário principal.
event.idm.read_only_udm.principal.user.first_name principal.user.first_name Nome do usuário principal.
event.idm.read_only_udm.principal.user.last_name principal.user.last_name Sobrenome do usuário principal.
event.idm.read_only_udm.principal.user.product_object_id principal.user.product_object_id ID do objeto do produto do usuário principal.
event.idm.read_only_udm.principal.user.userid principal.user.userid ID do usuário principal.
event.idm.read_only_udm.principal.user.user_display_name principal.user.user_display_name Nome de exibição do usuário principal.
event.idm.read_only_udm.src.asset.ip src.asset.ip Endereço IP do recurso de origem.
event.idm.read_only_udm.src.ip src.ip Endereço IP da origem.
event.idm.read_only_udm.src.port src.port Porta da origem.
event.idm.read_only_udm.target.administrative_domain target.administrative_domain Domínio administrativo do destino.
event.idm.read_only_udm.target.asset.hostname target.asset.hostname Nome do host do recurso de destino.
event.idm.read_only_udm.target.asset.ip target.asset.ip Endereço IP do recurso de destino.
event.idm.read_only_udm.target.file.mime_type target.file.mime_type Tipo MIME do arquivo de destino.
event.idm.read_only_udm.target.file.md5 target.file.md5 Hash MD5 do arquivo de destino.
event.idm.read_only_udm.target.file.sha1 target.file.sha1 Hash SHA1 do arquivo de destino.
event.idm.read_only_udm.target.file.sha256 target.file.sha256 Hash SHA256 do arquivo de destino.
event.idm.read_only_udm.target.file.size target.file.size Tamanho do arquivo de destino.
event.idm.read_only_udm.target.hostname target.hostname Nome do host de destino.
event.idm.read_only_udm.target.ip target.ip Endereço IP do destino.
event.idm.read_only_udm.target.location.country_or_region target.location.country_or_region País ou região do local do destino.
event.idm.read_only_udm.target.port target.port Porta do destino.
event.idm.read_only_udm.target.resource.attribute.labels target.resource.attribute.labels Rótulos associados ao recurso de destino.
event.idm.read_only_udm.target.resource.id target.resource.id ID do recurso de destino.
event.idm.read_only_udm.target.resource.product_object_id target.resource.product_object_id ID do objeto do produto do recurso de destino.
event.idm.read_only_udm.target.resource.resource_subtype target.resource.resource_subtype Subtipo de recurso do recurso de destino.
event.idm.read_only_udm.target.url target.url URL do destino.
event.idm.read_only_udm.target.user.email_addresses target.user.email_addresses Endereços de e-mail do usuário de destino.
event.idm.read_only_udm.target.user.product_object_id target.user.product_object_id ID do objeto do produto do usuário de destino.
event.idm.read_only_udm.security_result.about.file.full_path security_result.about.file.full_path Caminho completo do arquivo envolvido no resultado de segurança.
event.idm.read_only_udm.security_result.about.labels security_result.about.labels Rótulos associados ao resultado de segurança.
event.idm.read_only_udm.security_result.about.resource.attribute.labels security_result.about.resource.attribute.labels Rótulos associados ao recurso no resultado de segurança.
event.idm.read_only_udm.security_result.action security_result.action Ação realizada no resultado de segurança.
event.idm.read_only_udm.security_result.detection_fields security_result.detection_fields Campos de detecção no resultado de segurança.
event.idm.read_only_udm.security_result.description security_result.description Descrição do resultado de segurança.
event.idm.read_only_udm.security_result.rule_id security_result.rule_id ID da regra do resultado de segurança.
event.idm.read_only_udm.security_result.rule_name security_result.rule_name Nome da regra do resultado de segurança.
event.idm.read_only_udm.security_result.severity security_result.severity Gravidade do resultado de segurança.
event.idm.read_only_udm.security_result.summary security_result.summary Resumo do resultado de segurança.
event.idm.read_only_udm.security_result.threat_id security_result.threat_id ID da ameaça do resultado de segurança.
event.idm.read_only_udm.security_result.threat_name security_result.threat_name Nome da ameaça do resultado de segurança.
event.idm.read_only_udm.extensions.auth.type extensions.auth.type Tipo de autenticação. Defina como MACHINE para eventos de login e logout.
event.idm.read_only_udm.about about Sobre as informações.
event.idm.read_only_udm.additional.fields additional.fields Outros campos.
event.idm.read_only_udm.intermediary intermediary Informações intermediárias.

Alterações

2024-02-19

  • Correção de bugs:
  • Quando não há dados da máquina principal e de destino, "metadata.event_type" é mapeado para "GENERIC_EVENT".
  • Quando o campo "Data e hora" está ausente e o campo "Carimbo de data/hora" está presente, "Carimbo de data/hora" é mapeado para "metadata.event_timestamp".
  • "ClientIP" foi mapeado para "principal.ip".
  • "RayID" foi mapeado para "metadata.product_log_id".
  • "EdgeResponseStatus" foi mapeado para "network.http.response_code".
  • "ClientRequestMethod" foi mapeado para "network.http.method".
  • Mapeamos "ClientRequestURI" para "target.uri".
  • "ClientRequestHost" foi mapeado para "target.hostname".

2024-01-31

  • "BotScore" foi associado a "security_result.detection_fields".
  • Alinhamento dos mapeamentos "principal.hostname", "target.hostname", "principal.asset.hostname" e "target.asset.hostname".
  • Mapeamentos "principal.ip", "target.ip", "principal.asset.ip" e "target.asset.ip" alinhados.

2024-01-08

  • Quando "Ação" contém "permitir", defina "security_result.action" como "PERMITIR".
  • Mapeamento de "DeviceName" adicionado a "principal.hostname" e "principal.asset.hostname".
  • Mapeamento de "SourceIP" para "principal.ip" adicionado para registros de DNS.
  • Foi adicionada uma verificação condicional nula antes do mapeamento de "principal" para "event.idm.read_only_udm.principal".
  • Foi adicionada uma verificação condicional nula antes do mapeamento de "target" para "event.idm.read_only_udm.target".

2023-11-22

  • "WAFRuleID" foi mapeado para "security_result.threat_id".
  • "WAFRuleMessage" foi mapeado para "security_result.threat_name".
  • "WAFRCEAttackScore", "WAFSQLiAttackScore", "WAFXSSAttackScore", "WAFAttackScore" e "WAFFlags" foram mapeados para "security_result.about.resource.attribute.labels".

2023-10-09

  • Quando o valor "SecurityAction" for nulo ou não estiver presente, defina "security_result.action" como "ALLOW".

2023-09-26

  • Mapeamentos modificados de campos UDM descontinuados para campos alternativos.
  • Foi adicionado o mapeamento de "security_result.about.labels" para "security_result.about.resource.attribute.labels".
  • Foi adicionado o mapeamento de "about.labels" para "security_result.about.resource.attribute.labels".
  • Foi adicionado um mapeamento de "target.resource.id" para "target.resource.product_object_id".

2023-04-25

  • Melhoria para mapear os seguintes campos de registro bruto para campos do UDM:
  • Inicializou "EdgeStartTimestamp", "ClientIP", "ClientRequestHost", "ClientRequestURI", "ClientRequestMethod", "Datetime", "ActorEmail" e "ActorIP" como nulo.
  • Mapeamos "AssetExternalID" para "principal.asset_id".
  • Mapeamos "AssetDisplayName" para "principal.asset.attribute.labels".
  • "AssetLink" foi associado a "principal.url".
  • "AssetMetadata.userKey" foi mapeado para "principal.user.attribute.labels".
  • "AssetMetadata.clientId" foi associado a "principal.user.userid".
  • "AssetMetadata.anonymous" foi associado a "security_result.detection_fields".
  • "AssetMetadata.nativeApp" foi associado a "security_result.detection_fields".
  • "DetectedTimestamp" foi mapeado para "metadata.event_timestamp".
  • "FindingTypeDisplayName" foi associado a "security_result.description".
  • Mapeamos "FindingTypeID" para "security_result.rule_id".
  • Mapeamos "FindingTypeSeverity" para "security_result.severity".
  • "InstanceID" foi mapeado para "principal.resource.product_object_id".
  • "IntegrationDisplayName" foi associado a "additional.fields".
  • "IntegrationID" foi mapeado para "metadata.product_deployment_id".
  • "IntegrationPolicyVendor" foi associado a "additional.fields".
  • "AssetMetadata.customerId" foi mapeado para "principal.user.userid".
  • "AssetMetadata.primaryEmail" foi associado a "principal.user.email_addresses".
  • "AssetMetadata.agreedToTerms" foi mapeado para "principal.user.attribute.labels".
  • Mapeamos "AssetMetadata.ipWhitelisted" para "principal.user.attribute.labels".
  • "AssetMetadata.lastLoginTime" foi associado a "principal.user.attribute.labels".
  • Mapeamos "AssetMetadata.isEnforcedIn2Sv" para "principal.user.attribute.labels".
  • "AssetMetadata.isEnrolledIn2Sv" foi mapeado para "principal.user.attribute.labels".
  • "AssetMetadata.isDelegatedAdmin" foi associado a "principal.user.attribute.labels".
  • "AssetMetadata.changePasswordAtNextLogin" foi associado a "principal.user.attribute.labels".
  • "AssetMetadata.includeInGlobalAddressList" foi mapeado para "principal.user.attribute.labels".
  • "AssetMetadata.isAdmin" foi mapeado para "principal.user.attribute.labels".
  • "AssetMetadata.suspended" foi mapeado para "principal.user.attribute.labels".
  • "AssetMetadata.url" foi mapeado para "principal.url".
  • "AssetMetadata.site_admin" foi associado a "principal.user.attribute.labels".
  • "AssetMetadata.login" foi associado a "principal.user.userid".
  • "AssetMetadata.owner.id" foi mapeado para "principal.user.userid".
  • "AssetMetadata.name.fullName" foi mapeado para "principal.user.user_display_name".
  • "AssetMetadata.name.givenName" foi mapeado para "principal.user.first_name".
  • Mapeamos "AssetMetadata.name.familyName" para "principal.user.last_name".
  • Mapeamos "Permitido" para "security_result.action".
  • "AppDomain" foi mapeado para "target.administrative_domain".
  • "AppUUID" foi mapeado para "target.resource.product_object_id".
  • "Connection" foi mapeado para "target.resource.attribute.labels".
  • "Country" foi mapeado para "target.location.country_or_region".
  • "CreatedAt" foi associado a "metadata.event_timestamp".
  • Mapeamos "IPAddress" para "target.ip".
  • "RayID" foi mapeado para "metadata.product_log_id".
  • "Email" foi associado a "principal.user.email_addresses" e "target.user.email_addresses".
  • "TemporaryAccessDuration" foi mapeado para "network.session_duration.seconds".
  • Mapeamos "UserUID" para "target.user.product_object_id".
  • "UserAgent" foi associado a "network.http.parsed_user_agent".
  • "ClientRequestUserAgent" foi associado a "network.http.parsed_user_agent".
  • "PolicyName" foi associado a "security_result.rule_name".
  • "SessionID" foi mapeado para "network.session_id".
  • "Transport" foi mapeado para "network.ip_protocol".
  • "SNI" foi mapeado para "tls.client.server_name".
  • "DeviceName" foi mapeado para "principal.asset.attribute.labels".
  • "BytesReceived" foi mapeado para "network.received_bytes".
  • "BytesSent" foi mapeado para "network.sent_bytes".
  • "Protocol" foi mapeado para "network.ip_protocol".
  • Mapeamos "ClientTCPHandshakeDurationMs" para "additional.fields".
  • "ClientTLSCipher" foi mapeado para "network.tls.cipher".
  • "ClientTLSHandshakeDurationMs" foi mapeado para "additional.fields".
  • "ClientTLSVersion" foi mapeado para "network.tls.version".
  • "ConnectionCloseReason" foi mapeado para "additional.fields".
  • "ConnectionReuse" foi mapeado para "additional.fields".
  • Mapeamos "DestinationTunnelID" para "additional.fields".
  • "EgressIP" foi mapeado para "principal.ip".
  • "EgressPort" foi mapeado para "principal.port".
  • "EgressRuleID" foi mapeado para "additional.fields".
  • "EgressRuleName" foi mapeado para "additional.fields".
  • "IngressColoName" foi mapeado para "additional.fields".
  • Mapeamos "Saída" para "additional.fields".
  • Mapeamos "OriginIP" para "target.ip".
  • "OriginPort" foi mapeado para "target.port".
  • O "OriginTLSCertificateIssuer" foi mapeado para "additional.fields".
  • "OriginTLSCertificateValidationResult" foi mapeado para "additional.fields".
  • "OriginTLSCipher" foi mapeado para "additional.fields".
  • "OriginTLSHandshakeDurationMs" foi mapeado para "additional.fields".
  • "OriginTLSVersion" foi mapeado para "additional.fields".
  • "RuleEvaluationDurationMs" foi associado a "additional.fields".
  • "SessionEndTime" foi associado a "additional.fields".
  • "SessionStartTime" foi associado a "metadata.event_timestamp".
  • Mapeamos "SourceIP" para "src.ip".
  • "SourcePort" foi mapeado para "src.port".
  • "UserID" foi associado a "principal.user.product_object_id".
  • "VirtualNetworkID" foi mapeado para "principal.resource.product_object_id".

2023-04-06

  • Melhoria: os campos "WAFRuleMessage", "WAFAction", "QueryType", "RayID" e "Email" foram declarados no nível global.
  • Mapeou "metadata.event_type" como "NETWORK_UNCATEGORIZED", em que os campos "QueryName" e "QueryNameReversed" são nulos.
  • Foram adicionadas verificações de erro para os seguintes campos: RData[n].type, RData[n].data, EdgeResponseBytes, ClientRequestBytes, EdgeResponseStatus.
  • Adição da conversão de string para os campos "SourcePort" e "DestinationPort".

2022-10-10

  • Melhoria
  • "metadata.product_name" foi mapeado para "Firewall de aplicativo da Web".
  • Mapeamos "metadata.vendor_name" para "Cloudflare".

2022-05-23

  • Melhoria para mapear os seguintes elementos de registros brutos para elementos do UDM:
  • "ClientASN" foi mapeado para "network.asn".
  • O "ClientSSLCipher" foi mapeado para "network.tls.cipher".
  • O "ClientSSLProtocol" foi mapeado para "network.tls.version".
  • O "EdgeResponseContentType" foi mapeado para "target.file.mime_type".
  • Mapeamos "OriginIP" para "intermediary.ip".
  • O "FirewallMatchesActions" foi mapeado para "security_result.action".
  • O "FirewallMatchesRuleIDs" foi associado a "security_result.rule_id".
  • O "FirewallMatchesSources" foi mapeado para "security_result.rule_name".
  • "WAFRuleID" e "WAFProfile" foram mapeados para "security_result.about.labels".
  • Mapeou "CacheCacheStatus", "CacheResponseBytes", "CacheResponseStatus", "ClientDeviceType", "EdgeColoCode", "EdgeColoID", "OriginResponseBytes", "OriginResponseStatus", "OriginResponseTime", "ZoneID" para "additional.fields".