Coletar registros da Cloudflare
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
- fazer login no console do Google Cloud
Acesse a página Buckets do Cloud Storage.
Clique em Criar.
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:
Na seção Começar, faça o seguinte:
- Insira um nome exclusivo que atenda aos requisitos de nome de bucket (por exemplo, cloudflare-data).
- 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.
- Para adicionar um rótulo de bucket, clique na seta de expansão para abrir a seção Rótulos.
- Clique em Adicionar rótulo e especifique uma chave e um valor para o rótulo.
Na seção Escolha onde armazenar seus dados, faça o seguinte:
- Selecione um tipo de local.
- Use o menu suspenso do tipo de local para selecionar um Local em que os dados de objetos no bucket serão armazenados permanentemente.
- Se você selecionar o tipo de local birregional, também poderá ativar a replicação turbo usando a caixa de seleção relevante.
- Para configurar a replicação entre buckets, abra a seção Configurar a replicação entre buckets.
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.
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.
Na seção Escolha como proteger os dados do objeto, faça o seguinte:
- Selecione qualquer uma das opções em Proteção de dados que você quer definir para o bucket.
- 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.
Clique em Criar.
Criar uma conta de serviço do Google Cloud
- Acesse IAM e administrador > Contas de serviço.
- Crie uma nova conta de serviço.
- Dê um nome descritivo (por exemplo, cloudflare-logs).
- Conceda à conta de serviço o papel Criador de objetos do Storage no bucket do GCS criado na etapa anterior.
- Crie uma chave SSH para a conta de serviço.
- 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
- Acesse Armazenamento > Navegador > Bucket > Permissões.
- 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
- Acesse Configurações do SIEM > Feeds.
- Clique em Adicionar novo.
- No campo Nome do feed, insira um nome para o feed (por exemplo, Logs do Cloudflare).
- Selecione Google Cloud Storage como o Tipo de origem.
- Selecione Cloudflare como o Tipo de registro.
- Clique em Pegar conta de serviço como a Conta de serviço do Chronicle.
- Clique em Próxima.
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.
- URI do bucket do Storage: URL do bucket do Google Cloud Storage no formato
Clique em Próxima.
Revise a configuração do novo feed na tela Finalizar e clique em Enviar.
Configurar a Cloudflare para enviar registros ao Google Cloud Storage
- Faça login no painel da Cloudflare.
- Selecione a conta ou domínio da empresa (também conhecido como zona) que você quer usar com o Logpush.
- Acesse Análise e registros > Logpush.
- Selecione o job Criar um Logpush.
- Em Selecionar um destino, selecione Google Cloud Storage.
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)
Clique em Continuar.
Verificação de propriedade:
- A Cloudflare envia um arquivo para seu bucket.
- Copie e cole o token:
- Faça login no console do Google Cloud > Armazenamento > Bucket da Cloudflare.
- Abra o arquivo de contestação de propriedade.
- Copie o token de propriedade.
- Insira o token de propriedade no console da Cloudflare.
- Selecione Continuar.
- Selecione o conjunto de dados a ser enviado para o bucket.
Configure o job de envio de registro:
- Digite o nome do job.
- Em Se os registros corresponderem, selecione os eventos a serem incluídos e/ou removidos dos registros.
- Envie os seguintes campos: selecione enviar todos os registros ou escolha seletivamente quais registros você quer enviar.
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".