Coletar registros do Fortinet Firewall

Compatível com:

Neste documento, explicamos como coletar e processar registros do Fortinet no Google Security Operations usando o Bindplane. O analisador extrai campos de registros, processando formatos JSON e SYSLOG (com par de chave-valor). Ele normaliza os campos extraídos no modelo de dados unificado (UDM, na sigla em inglês), incluindo conexões de rede, atividade do usuário, eventos de DNS e descobertas de segurança, além de processar vários formatos de registro e casos extremos.

Antes de começar

  • Verifique se você tem uma instância do Google Security Operations.
  • Verifique se você está usando o Windows 2016 ou uma versão mais recente ou um host Linux com systemd.
  • Se estiver executando por trás de um proxy, verifique se as portas do firewall estão abertas.
  • Verifique se você tem acesso privilegiado a um dispositivo de firewall Fortinet.

Receber o arquivo de autenticação de ingestão do Google SecOps

  1. Faça login no console do Google SecOps.
  2. Acesse Configurações do SIEM > Agentes de coleta.
  3. Faça o download do arquivo de autenticação de transferência. Salve o arquivo com segurança no sistema em que o BindPlane será instalado.

Receber o ID de cliente do Google SecOps

  1. Faça login no console do Google SecOps.
  2. Acesse Configurações do SIEM > Perfil.
  3. Copie e salve o ID do cliente na seção Detalhes da organização.

Instalar o agente do Bindplane

Instalação do Windows

  1. Abra o Prompt de Comando ou o PowerShell como administrador.
  2. Execute este comando:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Instalação do Linux

  1. Abra um terminal com privilégios de raiz ou sudo.
  2. Execute este comando:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

Outros recursos de instalação

Configurar o agente do Bindplane para processar o Syslog e enviar ao Google SecOps

  1. Acesse o arquivo de configuração:

    1. Localize o arquivo config.yaml. Normalmente, ele está no diretório /etc/bindplane-agent/ no Linux ou no diretório de instalação no Windows.
    2. Abra o arquivo usando um editor de texto (por exemplo, nano, vi ou Notepad).
  2. Edite o arquivo config.yaml da seguinte forma:

    ```yaml
    receivers:
        udplog:
            # Replace the port and IP address as required
            listen_address: "0.0.0.0:514"
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the path to the credentials file you downloaded in Step 1
            creds: '/path/to/ingestion-authentication-file.json'
            # Replace with your actual customer ID from Step 2
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # Add optional ingestion labels for better organization
            ingestion_labels:
                log_type: FORTINET_FIREWALL
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    ```
    
  3. Substitua a porta e o endereço IP conforme necessário na sua infraestrutura.

  4. Substitua <customer_id> pelo ID real do cliente.

  5. Atualize /path/to/ingestion-authentication-file.json para o caminho em que o arquivo de autenticação foi salvo na seção Receber o arquivo de autenticação de transferência do Google SecOps.

Reinicie o agente do Bindplane para aplicar as mudanças

  • Para reiniciar o agente do Bindplane no Linux, execute o seguinte comando:

    sudo systemctl restart bindplane-agent
    
  • Para reiniciar o agente do Bindplane no Windows, use o console Services ou digite o seguinte comando:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configurar o Syslog no FortiGate usando a CLI

  1. Faça login na interface de linha de comando no seu dispositivo Fortinet FortiGate.
  2. Digite os comandos a seguir na mesma ordem (substitua as variáveis por valores que se alinhem ao seu ambiente).

    sh full-configuration | grep -f syslogd
    config log syslogd setting
        set status enable
        set server IP_ADDRESS
        set mode udp
        set port PORT
        set facility LOCAL
        set reliable enable or disable
        set source-ip FIEWALL_IP
    end
    
  3. Atualize os seguintes valores:

    • IP_ADDRESS: insira o endereço IPv4 do agente do Bindplane.
    • PORT: insira o número da porta do agente do Bindplane. Por exemplo, 514.
    • LOCAL: defina o nível da instalação como local6. Você também pode selecionar outros como local0, local1, local2, local3, local4, local5 ou local7 para registros informativos.
    • enable or disable: insira disable para enviar dados como UDP. Se você definir o valor de confiável como enable, os dados serão enviados como TCP.
    • FIEWALL_IP: insira o endereço IPv4 do firewall.

Configurar o Syslog no FortiGate usando a GUI

  1. Faça login na interface da Web do Fortinet Fortigate.
  2. Acesse Registro e relatório > Configurações de registro.
  3. Edite as seguintes configurações:
    • Enviar registros para o Syslog: selecione Ativar.
    • Endereço IP / FQDN: insira o endereço IPv4 do agente do Bindplane.
    • Registro de eventos: selecione Todas.
    • Registro de tráfego local: selecione Tudo.
  4. Acesse Política e objetos > Política de firewall.

    • Ative o nível de registro como Todos (não defina como "Desativar e UTM") para cada política de firewall.
    • Verifique se a política Negar implicitamente também está no nível de registro Todos.
  5. Abra a CLI e digite os seguintes comandos.

    1. Receba o IP do dispositivo de firewall:

      Show full-configuration | grep -f syslogd
      
    2. Defina o IP e a instalação de origem:

      • LOCAL: defina o nível da instalação como local6. Você também pode selecionar outros como local0, local1, local2, local3, local4, local5 ou local7 para registros informativos.
      • FIEWALL_IP: insira o endereço IPv4 do firewall.

        config log syslogd setting
        set source-ip FIEWALL_IP
        set facility LOCAL
        end
        
    3. Ative o resolve-ip para cada dispositivo Fortigate:

      config log setting
      set resolve-ip enable
      
  6. Repita o processo para cada dispositivo que precisa ser integrado ao Google SecOps.

Opcional: outras opções de configuração do Fortigate Syslog

  1. Para ativar os registros estendidos no FortiGate v5.X, execute os seguintes comandos:

    config antivirus profile
        edit default
            set extended-utm-log enable
        end
    config application
        edit default
            set extended-utm-log enable
        end
    config webfilter
        edit default
            set extended-utm-log enable
        end
    config spamfilter
        edit default
            set extended-utm-log enable
        end
    config dlp
        edit default
            set extended-utm-log enable
        end
    config ips
        edit default
            set extended-utm-log enable
        end
    

Tabela de mapeamento do UDM

Campo de registro Mapeamento do UDM Lógica
action security_result.action_details O valor é extraído diretamente do campo action no registro bruto.
act security_result.action_details Se o campo action estiver vazio, o valor será retirado do campo act no registro bruto.
agent network.http.user_agent, network.http.parsed_user_agent O valor é retirado do campo agent. O campo parsed_user_agent é uma versão analisada do campo user_agent.
appid security_result1.rule_id O valor é retirado do campo appid.
app target.application, network.application_protocol, additional.fields Se o campo service estiver vazio, o valor será retirado do campo app. Se service for HTTPS, HTTP, DNS, DHCP ou SMB, o valor será usado para preencher network.application_protocol. Caso contrário, será usado para target.application. Um campo extra com a chave app e o valor de string do campo app é adicionado a additional.fields.
appact additional.fields Um campo extra com a chave appact e o valor de string do campo appact é adicionado a additional.fields.
appcat additional.fields Um campo extra com a chave appcat e o valor de string do campo appcat é adicionado a additional.fields.
applist additional.fields Um campo extra com a chave applist e o valor de string do campo applist é adicionado a additional.fields.
apprisk additional.fields Um campo extra com a chave apprisk e o valor de string do campo apprisk é adicionado a additional.fields.
attack security_result.category_details, security_result.threat_name, security_result.summary, security_result.detection_fields O valor é adicionado a security_result.category_details. Para eventos de IPS/anomalia, ele também é usado para security_result.summary e security_result.threat_name. Um campo de detecção com a chave attack e o valor do campo attack é adicionado a security_result.detection_fields.
attackid security_result.threat_id, security_result1.rule_id, security_result.detection_fields Para eventos de IPS, o valor é usado para security_result.threat_id. Para outros eventos, ele é usado para security_result1.rule_id. Um campo de detecção com a chave attackId e o valor do campo attackid é adicionado a security_result.detection_fields.
cat security_result1.rule_id Para eventos de filtro da Web, o valor é usado para security_result1.rule_id.
catdesc security_result.description, security_result1.rule_name, security_result.category_details Se presente, ele é anexado ao campo msg para criar o security_result.description. Ele também é usado para security_result1.rule_name. O valor é adicionado a security_result.category_details.
changes security_result.summary O campo changes é analisado como pares de chave-valor. O valor mode do changes analisado é usado para security_result.summary.
connection_type metadata.product_event_type O valor é anexado ao metadata.product_event_type, se presente.
craction security_result.about.labels Um rótulo com a chave craction e o valor do campo craction é adicionado a security_result.about.labels.
crlevel security_result.severity, event.idm.is_alert, event.idm.is_significant Se crlevel for CRÍTICO ou level for um alerta, is_alert e is_significant serão definidos como VERDADEIRO. O valor é mapeado para security_result.severity com base no seguinte mapeamento: ALTO para HIGH, MÉDIO para MEDIUM, BAIXO para LOW e CRÍTICO para CRITICAL.
crscore security_result.severity_details Para eventos de IPS, o valor é usado para security_result.severity_details.
cs6 principal.user.group_identifiers O valor é adicionado a principal.user.group_identifiers.
date, time timestamp Os campos date e time são combinados e analisados para criar o timestamp.
devid security_result.detection_fields Um campo de detecção com a chave devid e o valor do campo devid é adicionado a security_result.detection_fields.
devname intermediary.hostname, target.hostname, target.asset.hostname, principal.hostname, principal.asset.hostname Se dvchost estiver presente, dvchost será usado para intermediary.hostname. Caso contrário, devname será usado. Para eventos de VPN com type como event, ele é usado para target.hostname. Para eventos de criação de usuários, é usado para principal.hostname.
deviceSeverity level O valor é usado para preencher o campo level.
device_product metadata.product_name O valor é usado para metadata.product_name. Se não estiver presente, Fortigate será usado como padrão.
device_vendor metadata.vendor_name O valor é usado para metadata.vendor_name. Se não estiver presente, Fortinet será usado como padrão.
device_version metadata.product_version O valor é usado para metadata.product_version.
dhcp_msg network.dhcp.type, metadata.event_type, network.application_protocol Se o valor for Ack, network.dhcp.type será definido como ACK, metadata.event_type será definido como NETWORK_DHCP e network.application_protocol será definido como DHCP.
dir direction Se direction estiver vazio, o valor será retirado do campo dir.
direction network.direction O valor é mapeado para network.direction com base no seguinte mapeamento: INBOUND para incoming, inbound e response; OUTBOUND para outgoing, outbound e request.
dst target.ip, target.asset.ip O valor é analisado como um endereço IP e usado para target.ip.
dstauthserver target.hostname, target.asset.hostname O valor é usado para target.hostname.
dstcountry target.location.country_or_region Se o valor não for Reserved ou vazio, ele será usado para target.location.country_or_region.
dstip target.ip, target.asset.ip O valor é analisado como um endereço IP e usado para target.ip.
dstinetsvc security_result.detection_fields Um campo de detecção com a chave dstinetsvc e o valor do campo dstinetsvc é adicionado a security_result.detection_fields.
dstintf security_result.detection_fields Um campo de detecção com a chave dstintf e o valor do campo dstintf é adicionado a security_result.detection_fields.
dstintfrole security_result.detection_fields Um campo de detecção com a chave dstintfrole e o valor do campo dstintfrole é adicionado a security_result.detection_fields.
dstmac target.mac O valor é analisado como um endereço MAC e usado para target.mac.
dstosname target.platform Se o valor for WINDOWS, target.platform será definido como WINDOWS.
dstport target.port O valor é convertido em um número inteiro e usado para target.port.
dstswversion target.platform_version O valor é usado para target.platform_version.
dstuuid target.resource.product_object_id O valor é usado para target.resource.product_object_id.
dstuser target.user.userid O valor é usado para target.user.userid.
dtype security_result.category_details O valor é adicionado a security_result.category_details.
duration network.session_duration.seconds Se o valor não estiver vazio ou 0, ele será convertido em um número inteiro e usado para network.session_duration.seconds.
duser principal.user.userid, target.user.userid, target.user.user_display_name Para eventos de endpoint/sistema, ele é usado para principal.user.userid. Para eventos de login do usuário, ele é usado para target.user.userid. Para registros formatados CEF, ele é usado para target.user.user_display_name.
dvchost devname O valor é usado para substituir o campo devname.
d_uid target.user.userid O valor extraído do campo request é usado para target.user.userid.
error security_result.severity_details Se level for error e error estiver presente, o valor será usado para security_result.severity_details.
eventtime timestamp, metadata.event_timestamp O valor é analisado para criar timestamp e metadata.event_timestamp.
eventtype security_result1.rule_type, security_result.detection_fields O valor é usado para security_result1.rule_type. Para eventos de IPS, também é usado para security_result.detection_fields.
filename target.file.full_path O valor é usado para target.file.full_path.
group principal.user.group_identifiers Se o valor não for N/A ou vazio, ele será adicionado a principal.user.group_identifiers.
hostname target.hostname, target.asset.hostname, principal.hostname, principal.asset.hostname O valor é usado para target.hostname. Para eventos DHCP Ack, ele é usado para principal.hostname.
httpmethod network.http.method O valor é usado para network.http.method.
in network.received_bytes O valor é convertido em um número inteiro sem sinal e usado para network.received_bytes.
incidentserialno security_result.about.labels Um rótulo com a chave incidentserialno e o valor do campo incidentserialno é adicionado a security_result.about.labels.
ip principal.ip, principal.asset.ip, network.dhcp.yiaddr Para eventos de endpoint/sistema, o valor é adicionado a principal.ip. Para eventos DHCP Ack, ele é usado para network.dhcp.yiaddr.
ipaddr intermediary.ip O valor é analisado como uma lista de endereços IP separados por vírgulas e adicionado a intermediary.ip.
level security_result.severity, security_result.severity_details, event.idm.is_alert, event.idm.is_significant Se crlevel for CRITICAL ou level for um alerta, is_alert e is_significant serão definidos como TRUE. O valor é mapeado para security_result.severity com base no seguinte mapeamento: ALTO para warning, MÉDIO para notice, BAIXO para information e info, ERRO para error. security_result.severity_details está definida como level: <value>.
locip principal.ip, principal.asset.ip Para eventos de VPN, o valor é adicionado a principal.ip.
locport dstport O valor é usado para substituir o campo dstport.
logdesc metadata.description O valor é usado para metadata.description.
logid metadata.product_log_id, additional.fields O valor é usado para metadata.product_log_id. Um campo extra com a chave logid e o valor de string do campo logid é adicionado a additional.fields.
log_id metadata.product_log_id O valor é usado para metadata.product_log_id.
metadata.event_type metadata.event_type O valor é definido com base no tipo de evento e em outros campos. O padrão é GENERIC_EVENT. Pode ser definido como NETWORK_CONNECTION, USER_UNCATEGORIZED, NETWORK_HTTP, USER_LOGIN, USER_LOGOUT, NETWORK_DNS, NETWORK_DHCP, STATUS_UNCATEGORIZED, NETWORK_UNCATEGORIZED, USER_CREATION, USER_DELETION.
metadata.log_type metadata.log_type O valor é definido como FORTINET_FIREWALL.
metadata.product_event_type metadata.product_event_type O valor é definido como <type> - <subtype>. Se connection_type estiver presente, ele será anexado ao valor. Para registros formatados CEF, ele é definido como [<device_event_class_id>] - <event_name> <severity>.
metadata.product_name metadata.product_name O valor é definido como Fortigate por padrão. Se device_product estiver presente, esse valor será usado.
metadata.product_version metadata.product_version O valor é retirado do campo device_version, se presente.
metadata.vendor_name metadata.vendor_name O valor é definido como Fortinet por padrão. Se device_vendor estiver presente, esse valor será usado.
mode security_result.summary O valor extraído do campo changes é usado para security_result.summary.
msg metadata.description, security_result.summary, security_result.description, security_result1.rule_name Se logdesc não estiver presente, o valor será usado para metadata.description. Para eventos do sistema, ele é usado para security_result.summary. Para eventos de filtro da Web, ele é adicionado antes de security_result.description. Para eventos de vírus em que msg é File is infected., ele é usado com virus para preencher security_result.summary. Para eventos de app-ctrl, ele é usado para security_result1.rule_name.
name principal.hostname, principal.asset.hostname O valor é usado para principal.hostname.
nas principal.nat_ip O valor é analisado como um endereço IP e usado para principal.nat_ip.
operation security_result.action_details, security_result.action O valor é usado para security_result.action_details. Ela também é mapeada para security_result.action com base no seguinte mapeamento: PERMITIR para accept, passthrough, pass, permit, detected, close e edit; BLOQUEAR para deny, dropped e blocked; FALHA para timeout; UNKNOWN_ACTION para outros valores.
os principal.platform, principal.platform_version Se o valor contiver Windows, principal.platform será definido como WINDOWS e a versão será extraída e usada para principal.platform_version.
osname principal.platform Se o valor for WINDOWS, principal.platform será definido como WINDOWS.
osversion principal.platform_version O valor é usado para principal.platform_version.
out network.sent_bytes O valor é convertido em um número inteiro sem sinal e usado para network.sent_bytes.
path security_result.description O valor é usado para security_result.description.
performed_on security_result.about.application O valor é usado para security_result.about.application.
policyid security_result.rule_id O valor é usado para security_result.rule_id.
policyname security_result.rule_name O valor é usado para security_result.rule_name.
policytype security_result.rule_type O valor é usado para security_result.rule_type.
poluuid additional.fields Um campo extra com a chave poluuid e o valor de string do campo poluuid é adicionado a additional.fields.
pri security_result.severity_details O valor é usado para security_result.severity_details.
profile target.resource.name, target.resource.resource_type O valor é usado para target.resource.name e target.resource.resource_type é definido como ACCESS_POLICY.
proto network.ip_protocol O valor é mapeado para network.ip_protocol com base no seguinte mapeamento: UDP para 17, TCP para 6, IP6IN4 para 41, ICMP para 1 e quando service é PING ou contém ICMP.
protocol network.application_protocol Se o valor for udp, network.ip_protocol será definido como UDP. Se o valor for tcp, network.ip_protocol será definido como TCP. Caso contrário, se não estiver vazio, ele será analisado e usado para network.application_protocol.
qclass network.dns.questions.class Se o valor for IN, network.dns.questions.class será definido como 1.
qname network.dns.questions.name O valor é usado para network.dns.questions.name.
qtypeval network.dns.questions.type O valor é convertido em um número inteiro sem sinal e renomeado para network.dns.questions.type.
rcvdbyte network.received_bytes O valor é convertido em um número inteiro sem sinal e usado para network.received_bytes.
rcvdpkt additional.fields Um campo extra com a chave receivedPackets e o valor de string do campo rcvdpkt é adicionado a additional.fields.
reason security_result.description Se o valor não for N/A ou vazio, ele será usado para security_result.description.
referralurl network.http.referral_url O valor é usado para network.http.referral_url.
ref metadata.url_back_to_product O valor é usado para metadata.url_back_to_product.
remip principal.ip, principal.asset.ip Para eventos de VPN, o valor é adicionado a principal.ip.
remport srcport O valor é usado para substituir o campo srcport.
request target.user.userid Se o valor contiver duid, o duid será extraído e usado para target.user.userid.
sentbyte network.sent_bytes O valor é convertido em um número inteiro sem sinal e usado para network.sent_bytes.
sentpkt additional.fields Um campo extra com a chave sentPackets e o valor de string do campo sentpkt é adicionado a additional.fields.
server target.hostname, target.asset.hostname Para eventos do usuário, o valor é usado para target.hostname.
service network.application_protocol, target.application Se o valor for HTTPS, HTTP, DNS, DHCP ou SMB, ele será usado para network.application_protocol. Caso contrário, será usado para target.application.
sessionid network.session_id O valor é usado para network.session_id.
session_id network.session_id O valor é usado para network.session_id.
severity security_result.severity, security_result.detection_fields Para registros formatados em CEF, o valor é usado para security_result.severity. Um campo de detecção com a chave severity e o valor do campo severity é adicionado a security_result.detection_fields.

Alterações

2025-02-24

Melhoria:

  • dstname foi mapeado para target.hostname.
  • saddr foi mapeado para principal.ip.

2025-02-18

Melhoria:

  • Quando action é clear_session, security_result.action é mapeado para BLOCK.

2025-01-31

Melhoria:

  • O mapeamento de remip foi alterado de principal.ip para target.ip.

2025-01-24

Melhoria:

  • Se srcip estiver associado a uma interface do usuário (IU) ou ao tráfego SSH, mapeie srcip para principal.ip.

2025-01-20

Melhoria:

  • Mapeamos ui, cfgpath, cfgobj, cfgattr e msg para additional.fields.

2025-01-08

Melhoria:

  • Quando type=event e subtype=vpn, metadata.event_type é mapeado para STATUS_UPDATE.
  • Quando type=event subtype=vpn e action= tunnel-stats, metadata.event_type foi mapeado para NETWORK_UNCATEGORIZED.

2025-01-01

Melhoria:

  • devid em target.user.userid foi substituído por principal.asset.hardware.serial_number.

2024-12-20

Melhoria:

  • Reorganizou o padrão GROK.
  • Adição de um padrão GROK para analisar novos tipos de registros.

2024-12-04

Melhoria:

  • ipaddr foi mapeado para network.dns.answers.
  • fortihost foi mapeado para intermidiary.ip.

2024-11-28

Melhoria:

  • Mapeou metadata.event_type para USER_CREATION quando action é Add.
  • Mapeou metadata.event_type para USER_DELETION quando action é Delete.
  • Mapeou metadata.event_type para DEVICE_CONFIG_UPDATE quando action é Edit.
  • O mapeamento de devid foi alterado de security_result.detection_fields para target.user.userid.

2024-11-28

Melhoria:

  • Mapeou metadata.event_type para USER_CREATION quando action é Add.
  • Mapeou metadata.event_type para USER_DELETION quando action é Delete.
  • Mapeou metadata.event_type para DEVICE_CONFIG_UPDATE quando action é Edit.
  • O mapeamento de devid foi alterado de security_result.detection_fields para target.user.userid.

2024-11-27

Melhoria:

  • Se utmaction estiver presente, mapeie action para security_result_1.action_details.

2024-11-21

Melhoria:

  • O mapeamento de msg foi alterado de metadata.description para security_result.summary.
  • logdesc foi mapeado para metadata.description.

2024-11-08

Melhoria:

  • Mapeamento de ui para principal.ip e principal.asset.ip.

2024-11-08

Melhoria:

  • Mapeamento de ui para principal.ip e principal.asset.ip.

2024-10-15

Melhoria:

  • type, subtype e level foram mapeados para additional.fields.

2024-09-20

Melhoria:

  • Quando dstosname for igual a DEBIAN, defina target.platform como LINUX.

2024-09-19

Melhoria:

  • Quando service é kernel, a tag de exclusão é removida.
  • mac foi mapeado para principal.mac.

2024-09-13

Melhoria:

  • Foi adicionada uma verificação condicional para ssl-login-fail e auth-logon antes de mapear o valor do campo UDM security_result.action.

2024-08-29

Melhoria:

  • Se action for negotiate, defina security_result.action como BLOCK.
  • Se action for tunnel-down, tunnel-stats, tunnel-up e ssl-new-con, defina security_result.action como ALLOW.
  • Se action for quase igual a tunnel ou action for negotiate, defina metadata.event_type como NETWORK_CONNECTION.

2024-08-16

Melhoria:

  • O mapeamento de security_result.action foi alterado de FAIL para BLOCK quando action é timeout

2024-08-13

Melhoria:

  • logid foi mapeado para metadata.product_log_id.
  • vd foi mapeado para principal.administrative_domain.
  • srcintfrole foi mapeado para security_result.detection_fields.
  • dstintfrole foi mapeado para security_result.detection_fields.
  • Mapeamos sentpkt, rcvdpkt, vpntype, authserver, crlevel, trandisp, policyid e appcat para additional.fields.
  • policytype foi mapeado para security_result.rule_type.
  • craction foi mapeado para security_result.about.labels.
  • crscore foi mapeado para security_result.severity_details.
  • group foi mapeado para principal.user.group_identifiers.

2024-08-06

Melhoria:

  • Mapeou auditid, auditscore, auditid, criticalcount, highcount , mediumcount, lowcount, passedcount, criticalcount, srccountry, direction, dstcountry, dstintf, dstintfrole, xid, qtype, qtypeval, qclass, cat, rcode e license_limit para security_result.detection_fields.
  • cpu, mem, disk, bandwidth, disklograte, fazlograte, freediskstorage, sysuptime, waninfo, trandisp, used_for_type, connection_type, count e fctuid foram mapeados para additional.fields.
  • totalsession foi mapeado para network.session_duration.seconds.
  • incidentserialno foi mapeado para network.tls.client.certificate.serial.
  • scertcname foi mapeado para network.tls.client.certificate.subject.
  • scertissuer foi mapeado para network.tls.client.certificate.issuer.
  • Mapeamento de authserver para principal.hostname e principal.asset.hostname.
  • dstserver e dst_host foram mapeados para target.hostname e target.asset.hostname.
  • dsthwvendor foi mapeado para target.resource.attribute.labels.
  • eventtime foi mapeado para metadata.event_timestamp.
  • Mapeou reqtype, rcvdbyte, ratemethod, outintf, cookies, useralt, xauthuser, xauthgroup, assignip, vpntunnel, init, stage, role, advpnsc, tunneltype, tunnelid e nextstat para principal.resource.attribute.labels.
  • policyid foi mapeado para security_result.rule_id.
  • policytype foi mapeado para security_result.rule_type.
  • date,time e tz foram mapeados para metadata.ingested_timestamp.
  • Mapeamento de profile para target.resource.name e target.resource.resource_type.
  • Se user for um IP válido, mapeie user para principal.ip e principal.asset.ip.
  • group foi mapeado para principal.user.group_identifiers.
  • mode foi mapeado para security_result.summary.
  • result foi mapeado para security_result.description.

2024-07-29

Melhoria:

  • Adicionamos uma verificação condicional para o campo success antes de mapear o campo security_result.action do UDM.

2024-07-17

Melhoria:

  • gsub foi adicionado para analisar registros syslog não analisados.

2024-07-02

Melhoria:

  • FTNTFGTappcat foi mapeado para additional.fields.
  • FTNTFGTduration foi mapeado para network.session_duration.seconds.
  • Mapeamento de FTNTFGTsentpkt para additional.fields e network.sent_packets.
  • Mapeamento de FTNTFGTrcvdpkt para additional.fields e network.received_packets.
  • FTNTFGTdstintfrole foi mapeado para security_result.detection_fields.
  • FTNTFGTsrcintfrole foi mapeado para security_result.detection_fields.
  • FTNTFGTpoluuid foi mapeado para security_result.rule_id.
  • FTNTFGTvd foi mapeado para principal.administrative_domain.

2024-05-21

Melhoria:

  • gsub foi adicionado para analisar registros JSON.

2024-04-19

Melhoria:

  • Mapped correctshostvalue toprincipal.hostnameby adding gsub function forfw_versionfield. Correção de bugs:
  • Adição de suporte a registros que não têm o campo jsonPayload.message.

2024-03-07

Melhoria:

  • httpmethod foi mapeado para network.http.method.
  • Mapeamento de agent para network.http.user_agent e network.http.parsed_user_agent.
  • Mapeamentos alinhados para principal.ip e principal.asset.ip.
  • Mapeamentos alinhados para principal.hostname e principal.asset.hostname.
  • Mapeamentos alinhados para target.ip e target.asset.ip.
  • Mapeamentos alinhados para target.hostname e target.asset.hostname.

2023-11-21

Correção de bugs:

  • dstuser foi mapeado para event.idm.read_only_udm.target.user.userid.
  • dstauthserver foi mapeado para event.idm.read_only_udm.target.hostname.
  • poluuid foi mapeado para event.idm.read_only_udm.additional.fields.
  • srcuuid foi mapeado para event.idm.read_only_udm.principal.resource.product_object_id.
  • dstuuid foi mapeado para event.idm.read_only_udm.target.resource.product_object_id.
  • attack foi mapeado para event.idm.read_only_udm.security_result.category_details.
  • Se o valor de type for utm e o valor de subtype for waf, mude event.idm.read_only_udm.metadata.event_type de NETWORK_UNCATEGORIZED para NETWORK_CONNECTION.
  • Se o valor de direction for request, defina event.idm.read_only_udm.network.direction como OUTBOUND.
  • Se o valor de direction for response,defina event.idm.read_only_udm.network.direction como INBOUND.

2023-11-20

Correção de bugs:

  • transip foi mapeado para principal.nat_ip.
  • transport foi mapeado para principal.nat_port.
  • tranport foi mapeado para target.nat_port.

2023-07-10

Melhoria:

  • Registros brutos analisados do tipo Added FTP Server.

2023-06-01

Melhoria:

  • log_id foi mapeado para metadata.product_log_id.
  • operation foi mapeado como security_result.action_details e security_result.action como ALLOW.
  • performed_on foi mapeado para security_result.about.application.
  • path foi mapeado para security_result.description.
  • pri foi mapeado para security_result.severity_details.
  • mode foi mapeado para security_result.summary.
  • desc foi mapeado para metadata.description.
  • userfrom foi mapeado para principal.ip.

2023-05-24

Melhoria:

  • severity foi mapeado para security_result.detection_fields.

2023-04-19

Melhoria:

  • srcinetsvc e dstinetsvc foram mapeados para security_result.detection_fields.

2023-03-06

Melhoria:

  • Quando type = event e subtype = vpn mapeados:
  • event_type para USER_LOGIN.
  • extensions.auth.type para VPN.
  • devname para target.hostname.
  • Mapeou action para security_result.action, se presente, ou utmaction. No início, era feito o contrário.

2023-02-22

  • O metadata.event_type foi mapeado como USER_UNCATEGORIZED em vez de GENERIC_EVENT quando o campo user está presente.
  • msg foi mapeado para security_result.summary.
  • nas foi mapeado para principal.nat_ip.
  • O grok foi modificado para analisar dados de target.user.userid quando logdesc contém GUI_ENTRY_DELETION.

2023-01-13

  • shost foi mapeado para principal.hostname.

2022-11-24

Melhoria:

  • tranip foi mapeado para target.nat_ip.
  • O mapeamento de msg foi modificado de security_result.description para security_result.summary.

2022-10-21

Melhoria:

  • suser foi mapeado para principal.user.user_display_name.
  • duser foi mapeado para target.user.user_display_name.
  • suid foi mapeado para principal.user.userid.
  • duid foi mapeado para target.user.userid.

2022-10-20

Correção de bugs:

  • O mapeamento security_result.action mudou de BLOCK para ALLOW quando action=close.

2022-10-13

Melhoria:

  • O mapeamento de metadata.event_type foi alterado de GENERIC_EVENT para USER_DELETION quando logdesc é GUI_ENTRY_DELETION
  • Mapeou msg para security_result.description
  • Mapeou devname para principal.hostname
  • Mapeou user_name para target.user.userid
  • Mapeou level para security_result.severity_details

2022-10-13

Melhoria:

  • O mapeamento de metadata.event_type foi alterado de GENERIC_EVENT para USER_DELETION quando logdesc é GUI_ENTRY_DELETION
  • Mapeou msg para security_result.description
  • Mapeou devname para principal.hostname
  • Mapeou user_name para target.user.userid
  • Mapeou level para security_result.severity_details

2022-10-06

Correção de bugs:

  • Foi adicionada uma verificação condicional para os campos "utmaction" e "action".
  • O campo "utmaction" foi mapeado para "security_result.action", se presente, ou para "action", caso contrário.

2022-10-06

Correção de bugs:

  • Foi adicionada uma verificação condicional para os campos "utmaction" e "action".
  • O campo "utmaction" foi mapeado para "security_result.action", se presente, ou para "action", caso contrário.

2022-09-21

Melhoria:

  • O campo "protocol" foi associado a "network.ip_protocol" se o protocolo contiver tcp e udp. Caso contrário, ele foi associado a "network.application_protocol".
  • Foram adicionadas gsubs e aprimorado o analisador para analisar os registros do formato CEF com nomes de campos diferentes.

2022-09-09

Melhoria:

  • Os analisadores específicos do cliente foram migrados para o analisador padrão.
  • Adição de suporte a registros com formato CEF.
  • O campo "cs6" foi mapeado para "principal.user.group_identifiers".
  • O campo "start" foi mapeado para "metadata.event_timestamp".
  • O campo "dvchost" foi mapeado para "intermediary.hostname".
  • O campo "dhost" foi mapeado para "target.hostname".
  • O campo "src" foi mapeado para "principal.ip".
  • O campo "spt" foi mapeado para "principal.port".
  • O campo "sourceTranslatedAddress" foi mapeado para "principal.nat_ip".
  • O campo "sourceTranslatedPort" foi mapeado para "principal.nat_port".
  • O campo "dst" foi mapeado para "target.ip".
  • O campo "dpt" foi mapeado para "target.port".
  • O campo "out" foi mapeado para "network.sent_bytes".
  • O campo "in" foi mapeado para "network.received_bytes".
  • O campo "deviceSeverity" foi mapeado para "security_result.severity".
  • O campo "act" foi associado a "security_result.action" e "security_result.action_details".
  • O campo "sentpkt" foi mapeado para "additional.fields".
  • O campo "rcvdpkt" foi mapeado para "additional.fields".
  • Foram adicionadas verificações de null condicionais para os campos "metadata.product_name", "metadata.vendor_name", "sentbyte", "rcvdbyte" e "intermediary".
  • O campo "metadata.event_type" foi modificado para os seguintes casos:
  • "GENERIC_EVENT" para "NETWORK_UNCATEGORIZED", em que principal.ip e target.ip não são nulos.
  • "GENERIC_EVENT" para "STATUS_UNCATEGORIZED", em que principal.ip não é nulo.

2022-08-22

Melhoria:

  • Adição de suporte a registros com formato CEF.
  • O campo "vd" foi mapeado para "principal.administrative_domain".
  • O campo "status" foi mapeado para "security_result.summary".
  • O campo "msg" foi mapeado para "security_result1.description".
  • Mapeou o campo "ip_address" para "principal.ip", em que o campo "msg" está presente.
  • O mapeamento do campo "devname" para "principal.hostname" foi removido.

2022-08-11

Melhoria:

  • O campo app é mapeado para additional.fields[n].
  • Foi adicionada uma verificação de condição nula para o campo remip.

2022-07-21

Melhoria:

  • O mapeamento de group foi modificado de principal.user.groupid para principal.user.group_identifiers.

2022-07-13

Melhoria:

  • Mapeamentos adicionados para novos campos.
  • appcat foi mapeado para event.idm.read_only_udm.additional.fields.
  • apprisk foi mapeado para event.idm.read_only_udm.additional.fields.
  • applist foi mapeado para event.idm.read_only_udm.additional.fields.
  • appact foi associado a event.idm.read_only_udm.additional.fields.
  • devid foi mapeado para event.idm.read_only_udm.additional.fields.

2022-06-20

Melhoria:

  • Mapeou security_result.action como ALLOW quando o valor do campo action ou utmaction é detected.

2022-05-20

Melhoria:

  • Mapeamentos adicionados para novos campos;
  • action e utmaction foram mapeados para security_result.action_details.
  • Foram adicionadas verificações de validação para principal.ip e target.ip.

2022-04-29

Melhoria:

  • Adição de suporte a action = timeout/close para o UDM.

  • O nome do desenvolvedor foi mapeado para principal.hostname quando o campo principal está vazio.

2022-04-12

Melhoria:

  • Mapeamentos adicionados para novos campos.
  • attackid mapeado para security_result.rule_id
  • crlevel mapeado para security_result.severity
  • incidentserialno mapeado para metadata.product_log_id
  • craction mapeado para metadata.product_deployment_id
  • dstintf mapeado para additional.fields
  • dstintfrole mapeado para additional.fields

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