Coletar registros do Fortinet FortiAnalyzer
Neste documento, explicamos como coletar e transferir os registros do Fortinet FortiAnalyzer para as operações de segurança do Google usando o Bindplane. O analisador transforma os registros no formato UDM. Ele processa mensagens com formato de chave-valor e CEF, extrai campos, realiza transformações de dados (como converter carimbos de data/hora e enriquecer protocolos IP) e as mapeia para os campos UDM apropriados com base no tipo e subtipo de evento. O analisador também inclui uma lógica específica para processar conexões de rede, consultas DNS, solicitações HTTP e vários eventos de segurança, enriquecendo o UDM com detalhes como protocolos de aplicativos, informações do usuário e resultados de segurança.
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 ao Fortinet FortiAnalyzer.
Receber o arquivo de autenticação de ingestão do Google SecOps
- Faça login no console do Google SecOps.
- Acesse Configurações do SIEM > Agentes de coleta.
- 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
- Faça login no console do Google SecOps.
- Acesse Configurações do SIEM > Perfil.
- Copie e salve o ID do cliente na seção Detalhes da organização.
Instalar o agente do Bindplane
Instalação do Windows
- Abra o Prompt de Comando ou o PowerShell como administrador.
Execute este comando:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Instalação do Linux
- Abra um terminal com privilégios de raiz ou sudo.
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
- Para mais opções de instalação, consulte este guia de instalação.
Configurar o agente do Bindplane para processar o Syslog e enviar ao Google SecOps
Acesse o arquivo de configuração:
- 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. - Abra o arquivo usando um editor de texto (por exemplo,
nano
,vi
ou Notepad).
- Localize o arquivo
Edite o arquivo
config.yaml
da seguinte forma: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_FORTIANALYZER raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
Substitua a porta e o endereço IP conforme necessário na sua infraestrutura.
Substitua
<customer_id>
pelo ID real do cliente.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 Fortinet FortiAnalyzer
- Faça login no FortiAnalyzer.
- Ative o modo CLI.
Execute os comandos a seguir:
config system syslog edit NAME set ip IP_ADDRESS set port PORT set reliable enable or disable next end
Atualize os seguintes campos:
NAME
: o nome do servidor syslog.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
.enable or disable
: se você definir o valor de "confiável" como "ativado", ele será enviado como TCP. Se você definir o valor de "confiável" como "desativado", ele será enviado como UDP.
Tabela de mapeamento do UDM
Campo de registro | Mapeamento do UDM | Lógica |
---|---|---|
act |
security_result.action_details |
Valor do campo act quando o registro está no formato CEF. |
action |
security_result.action_details |
Valor do campo action quando o registro não está no formato CEF. Usado para derivar security_result.action e security_result.description . |
action |
security_result.action |
Derivado. Se action for accept , passthrough , pass , permit , detected ou login , então ALLOW . Se deny , dropped , blocked ou close , então BLOCK . Se timeout , então FAIL . Caso contrário, UNKNOWN_ACTION . |
action |
security_result.description |
Derivado. Defina como Action: + security_result.action derivado. |
ad.app |
target.application |
Valor do campo ad.app quando o registro está no formato CEF. Se o valor for HTTPS , HTTP , DNS , DHCP ou SMB , ele será mapeado para network.application_protocol . |
ad.appact |
additional.fields |
Valor do campo ad.appact quando o registro está no formato CEF, adicionado como um par de chave-valor com a chave appact . |
ad.appcat |
additional.fields |
Valor do campo ad.appcat quando o registro está no formato CEF, adicionado como um par de chave-valor com a chave appcat . |
ad.appid |
additional.fields |
Valor do campo ad.appid quando o registro está no formato CEF, adicionado como um par de chave-valor com a chave appid . |
ad.applist |
additional.fields |
Valor do campo ad.applist quando o registro está no formato CEF, adicionado como um par de chave-valor com a chave applist . |
ad.apprisk |
additional.fields |
Valor do campo ad.apprisk quando o registro está no formato CEF, adicionado como um par de chave-valor com a chave apprisk . |
ad.cipher_suite |
network.tls.cipher |
Valor do campo ad.cipher_suite quando o registro está no formato CEF. |
ad.countapp |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.countweb |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.dstcity |
target.location.city |
Valor do campo ad.dstcity quando o registro está no formato CEF. |
ad.dstcountry |
target.location.country_or_region |
Valor do campo ad.dstcountry quando o registro está no formato CEF. |
ad.dstintf |
security_result.detection_fields |
Valor do campo ad.dstintf quando o registro está no formato CEF, adicionado como um par de chave-valor com a chave dstintf . |
ad.dstintfrole |
security_result.detection_fields |
Valor do campo ad.dstintfrole quando o registro está no formato CEF, adicionado como um par de chave-valor com a chave dstintfrole . |
ad.dstregion |
target.location.state |
Valor do campo ad.dstregion quando o registro está no formato CEF. |
ad.duration |
network.session_duration.seconds |
Valor do campo ad.duration quando o registro está no formato CEF. |
ad.eventtime |
metadata.event_timestamp |
Valor do campo ad.eventtime quando o registro está no formato CEF. |
ad.http_agent |
network.http.parsed_user_agent |
Valor do campo ad.http_agent quando o registro está no formato CEF. |
ad.http_method |
network.http.method |
Valor do campo ad.http_method quando o registro está no formato CEF. |
ad.http_refer |
network.http.referral_url |
Valor do campo ad.http_refer quando o registro está no formato CEF. |
ad.http_request_bytes |
network.sent_bytes |
Valor do campo ad.http_request_bytes quando o registro está no formato CEF. |
ad.http_response_bytes |
network.received_bytes |
Valor do campo ad.http_response_bytes quando o registro está no formato CEF. |
ad.http_retcode |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.http_url |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.lanin |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.lanout |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.logid |
metadata.product_log_id |
Valor do campo ad.logid quando o registro está no formato CEF. |
ad.mastersrcmac |
principal.mac |
Valor do campo ad.mastersrcmac quando o registro está no formato CEF. |
ad.original_src |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.original_srccountry |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.poluuid |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.policyid |
security_result.rule_id |
Valor do campo ad.policyid quando o registro está no formato CEF. |
ad.policyname |
security_result.rule_name |
Valor do campo ad.policyname quando o registro está no formato CEF. |
ad.policytype |
security_result.rule_type |
Valor do campo ad.policytype quando o registro está no formato CEF. |
ad.profile |
target.resource.name |
Valor do campo ad.profile quando o registro está no formato CEF. Também define target.resource.resource_type como ACCESS_POLICY . |
ad.proto |
network.ip_protocol |
Valor do campo ad.proto quando o registro está no formato CEF. Analisado usando o arquivo parse_ip_protocol.include . |
ad.qclass |
network.dns.questions.class |
Valor do campo ad.qclass quando o registro está no formato CEF. Mapeado usando o arquivo dns_query_class_mapping.include . |
ad.qname |
network.dns.questions.name |
Valor do campo ad.qname quando o registro está no formato CEF. |
ad.qtype |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.qtypeval |
network.dns.questions.type |
Valor do campo ad.qtypeval quando o registro está no formato CEF. |
ad.rcvddelta |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.rcvdpkt |
additional.fields |
Valor do campo ad.rcvdpkt quando o registro está no formato CEF, adicionado como um par de chave-valor com a chave receivedPackets . |
ad.sentdelta |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.sentpkt |
additional.fields |
Valor do campo ad.sentpkt quando o registro está no formato CEF, adicionado como um par de chave-valor com a chave sentPackets . |
ad.server_pool_name |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.sourceTranslatedAddress |
principal.nat_ip |
Valor do campo ad.sourceTranslatedAddress quando o registro está no formato CEF. |
ad.sourceTranslatedPort |
principal.nat_port |
Valor do campo ad.sourceTranslatedPort quando o registro está no formato CEF. |
ad.src |
principal.ip |
Valor do campo ad.src quando o registro está no formato CEF. |
ad.srccountry |
principal.location.country_or_region |
Valor do campo ad.srccountry quando o registro está no formato CEF. |
ad.srcintf |
security_result.detection_fields |
Valor do campo ad.srcintf quando o registro está no formato CEF, adicionado como um par de chave-valor com a chave srcintf . |
ad.srcintfrole |
security_result.detection_fields |
Valor do campo ad.srcintfrole quando o registro está no formato CEF, adicionado como um par de chave-valor com a chave srcintfrole . |
ad.srcmac |
principal.mac |
Valor do campo ad.srcmac quando o registro está no formato CEF. |
ad.srcserver |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.spt |
principal.port |
Valor do campo ad.spt quando o registro está no formato CEF. |
ad.status |
security_result.summary |
Valor do campo ad.status quando o registro está no formato CEF. |
ad.subtype |
metadata.product_event_type |
Usado com ad.logid para criar o metadata.product_event_type quando o registro está no formato CEF. Também é usado para derivar metadata.event_type e mapear campos específicos para eventos DNS e HTTP. |
ad.trandisp |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.tz |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.utmaction |
security_result.action |
Valor do campo ad.utmaction quando o registro está no formato CEF. Usado para derivar security_result.action e security_result.description . |
ad.user_name |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.vd |
principal.administrative_domain |
Valor do campo ad.vd quando o registro está no formato CEF. |
ad.vwlid |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.wanin |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.wanout |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.xid |
(não mapeado) | Não mapeado para o objeto IDM. |
ad.x509_cert_subject |
(não mapeado) | Não mapeado para o objeto IDM. |
agent |
(não mapeado) | Não mapeado para o objeto IDM. |
appid |
additional.fields |
Valor do campo appid quando o registro não está no formato CEF, adicionado como um par de chave-valor com a chave appid . |
app |
target.application |
Valor do campo app quando o registro não está no formato CEF. Se o valor for HTTPS , HTTP , DNS , DHCP ou SMB , ele será mapeado para network.application_protocol . |
appact |
additional.fields |
Valor do campo appact quando o registro não está no formato CEF, adicionado como um par de chave-valor com a chave appact . |
appcat |
additional.fields |
Valor do campo appcat quando o registro não está no formato CEF, adicionado como um par de chave-valor com a chave appcat . |
applist |
additional.fields |
Valor do campo applist quando o registro não está no formato CEF, adicionado como um par de chave-valor com a chave applist . |
apprisk |
additional.fields |
Valor do campo apprisk quando o registro não está no formato CEF, adicionado como um par de chave-valor com a chave apprisk . |
cat |
security_result1.rule_id |
Valor do campo cat quando o registro não está no formato CEF. |
catdesc |
security_result.description |
Valor do campo catdesc quando o registro não está no formato CEF. Só é usado se catdesc não estiver vazio. |
centralnatid |
(não mapeado) | Não mapeado para o objeto IDM. |
cipher_suite |
network.tls.cipher |
Valor do campo cipher_suite quando o registro não está no formato CEF. |
countssl |
(não mapeado) | Não mapeado para o objeto IDM. |
crlevel |
security_result.severity |
Valor do campo crlevel quando o registro não está no formato CEF. Usado para extrair security_result.severity . Se CRITICAL , define is_alert e is_significant como verdadeiro. |
craction |
security_result.about.labels |
Valor do campo craction quando o registro não está no formato CEF, adicionado como um par de chave-valor com a chave craction . |
create_time |
(não mapeado) | Não mapeado para o objeto IDM. |
data |
(não mapeado) | Os dados brutos do registro. Não está mapeado diretamente para o UDM. |
date |
(não mapeado) | Não mapeado para o objeto IDM. |
devname |
principal.hostname , principal.asset.hostname |
Valor do campo devname quando o registro não está no formato CEF. |
devid |
(não mapeado) | Não mapeado para o objeto IDM. |
devtype |
(não mapeado) | Não mapeado para o objeto IDM. |
direction |
network.direction |
Valor do campo direction quando o registro não está no formato CEF. Se incoming ou inbound , então INBOUND . Se outgoing ou outbound , então OUTBOUND . |
dpt |
target.port |
Valor do campo dpt quando o registro está no formato CEF. |
dstip |
target.ip , target.asset.ip |
Valor do campo dstip quando o registro não está no formato CEF. |
dstintf |
security_result.detection_fields |
Valor do campo dstintf quando o registro não está no formato CEF, adicionado como um par de chave-valor com a chave dstintf . |
dstintfrole |
security_result.detection_fields |
Valor do campo dstintfrole quando o registro não está no formato CEF, adicionado como um par de chave-valor com a chave dstintfrole . |
dstport |
target.port |
Valor do campo dstport quando o registro não está no formato CEF. |
dstregion |
target.location.state |
Valor do campo dstregion quando o registro não está no formato CEF. |
dstuuid |
target.user.product_object_id |
Valor do campo dstuuid quando o registro não está no formato CEF. |
duration |
network.session_duration.seconds |
Valor do campo duration quando o registro não está no formato CEF. |
dstcity |
target.location.city |
Valor do campo dstcity quando o registro não está no formato CEF. |
dstcountry |
target.location.country_or_region |
Valor do campo dstcountry quando o registro não está no formato CEF. |
dstmac |
target.mac |
Valor do campo dstmac quando o registro não está no formato CEF. |
eventtime |
metadata.event_timestamp |
Valor do campo eventtime quando o registro não está no formato CEF. O valor é reduzido de microssegundos para segundos. |
eventtype |
security_result2.rule_type |
Valor do campo eventtype quando o registro não está no formato CEF. |
externalID |
(não mapeado) | Não mapeado para o objeto IDM. |
group |
principal.user.group_identifiers |
Valor do campo group quando o registro não está no formato CEF. |
hostname |
target.hostname , target.asset.hostname |
Valor do campo hostname quando o registro não está no formato CEF. |
http_agent |
network.http.parsed_user_agent |
Valor do campo http_agent quando o registro não está no formato CEF. Convertido em um objeto de user agent analisado. |
http_method |
network.http.method |
Valor do campo http_method quando o registro não está no formato CEF. |
http_refer |
network.http.referral_url |
Valor do campo http_refer quando o registro não está no formato CEF. |
http_request_bytes |
network.sent_bytes |
Valor do campo http_request_bytes quando o registro não está no formato CEF. |
http_response_bytes |
network.received_bytes |
Valor do campo http_response_bytes quando o registro não está no formato CEF. |
httpmethod |
network.http.method |
Valor do campo httpmethod quando o registro não está no formato CEF. |
in |
network.received_bytes |
Valor do campo in quando o registro está no formato CEF. |
incidentserialno |
(não mapeado) | Não mapeado para o objeto IDM. |
lanin |
(não mapeado) | Não mapeado para o objeto IDM. |
lanout |
(não mapeado) | Não mapeado para o objeto IDM. |
level |
security_result.severity , security_result.severity_details |
Valor do campo level quando o registro não está no formato CEF. Usado para extrair security_result.severity . Se error ou warning , então HIGH . Se notice , então MEDIUM . Se information ou info , então LOW . Também define security_result.severity_details como level: + level . Se crlevel for CRITICAL ou level for alert , is_alert e is_significant serão definidos como verdadeiros. |
locip |
principal.ip , principal.asset.ip |
Valor do campo locip quando o registro não está no formato CEF. |
logdesc |
metadata.description |
Valor do campo logdesc quando o registro não está no formato CEF. |
logid |
metadata.product_log_id |
Valor do campo logid quando o registro não está no formato CEF. |
logver |
(não mapeado) | Não mapeado para o objeto IDM. |
mastersrcmac |
principal.mac |
Valor do campo mastersrcmac quando o registro não está no formato CEF. |
method |
(não mapeado) | Não mapeado para o objeto IDM. |
msg |
metadata.description |
Valor do campo msg quando o registro não está no formato CEF. Também usado para security_result.description se catdesc estiver vazio. |
out |
network.sent_bytes |
Valor do campo out quando o registro está no formato CEF. |
outintf |
(não mapeado) | Não mapeado para o objeto IDM. |
policyid |
security_result.rule_id |
Valor do campo policyid quando o registro não está no formato CEF. |
policyname |
security_result.rule_name |
Valor do campo policyname quando o registro não está no formato CEF. |
policytype |
security_result.rule_type |
Valor do campo policytype quando o registro não está no formato CEF. |
poluuid |
(não mapeado) | Não mapeado para o objeto IDM. |
profile |
target.resource.name |
Valor do campo profile quando o registro não está no formato CEF. Também define target.resource.resource_type como ACCESS_POLICY . |
proto |
network.ip_protocol |
Valor do campo proto quando o registro não está no formato CEF. Analisado usando o arquivo parse_ip_protocol.include . |
qclass |
network.dns.questions.class |
Valor do campo qclass quando o registro não está no formato CEF. Mapeado usando o arquivo dns_query_class_mapping.include . |
qname |
network.dns.questions.name |
Valor do campo qname quando o registro não está no formato CEF. |
reason |
security_result.description |
Valor do campo reason quando o registro não está no formato CEF. Só será usado se reason não for N/A e não estiver vazio. |
rcvdbyte |
network.received_bytes |
Valor do campo rcvdbyte quando o registro não está no formato CEF. |
rcvdpkt |
additional.fields |
Valor do campo rcvdpkt quando o registro não está no formato CEF, adicionado como um par de chave-valor com a chave receivedPackets . |
remip |
target.ip , target.asset.ip |
Valor do campo remip quando o registro não está no formato CEF. |
remport |
(não mapeado) | Não mapeado para o objeto IDM. |
reqtype |
(não mapeado) | Não mapeado para o objeto IDM. |
sentbyte |
network.sent_bytes |
Valor do campo sentbyte quando o registro não está no formato CEF. |
sentpkt |
additional.fields |
Valor do campo sentpkt quando o registro não está no formato CEF, adicionado como um par de chave-valor com a chave sentPackets . |
service |
network.application_protocol , target.application |
Valor do campo service quando o registro não está no formato CEF. Analisado usando o arquivo parse_app_protocol.include . Se a saída do analisador não estiver vazia, ela será mapeada para network.application_protocol . Caso contrário, o valor original será mapeado para target.application . |
sessionid |
network.session_id |
Valor do campo sessionid quando o registro não está no formato CEF. |
sn |
(não mapeado) | Não mapeado para o objeto IDM. |
sourceTranslatedAddress |
principal.nat_ip |
Valor do campo sourceTranslatedAddress quando o registro está no formato CEF. |
sourceTranslatedPort |
principal.nat_port |
Valor do campo sourceTranslatedPort quando o registro está no formato CEF. |
spt |
principal.port |
Valor do campo spt quando o registro está no formato CEF. |
src |
principal.ip |
Valor do campo src quando o registro está no formato CEF. |
srcip |
principal.ip , principal.asset.ip |
Valor do campo srcip quando o registro não está no formato CEF. |
srcintf |
security_result.detection_fields |
Valor do campo srcintf quando o registro não está no formato CEF, adicionado como um par de chave-valor com a chave srcintf . |
srcintfrole |
security_result.detection_fields |
Valor do campo srcintfrole quando o registro não está no formato CEF, adicionado como um par de chave-valor com a chave srcintfrole . |
srcmac |
principal.mac |
Valor do campo srcmac quando o registro não está no formato CEF. Os hifens são substituídos por dois-pontos. |
srcport |
principal.port |
Valor do campo srcport quando o registro não está no formato CEF. |
srccountry |
principal.location.country_or_region |
Valor do campo srccountry quando o registro não está no formato CEF. Só é mapeado se não for Reserved e não estiver vazio. |
srcuuid |
principal.user.product_object_id |
Valor do campo srcuuid quando o registro não está no formato CEF. |
srcserver |
(não mapeado) | Não mapeado para o objeto IDM. |
start |
(não mapeado) | Não mapeado para o objeto IDM. |
status |
security_result.summary |
Valor do campo status quando o registro não está no formato CEF. |
subtype |
metadata.product_event_type |
Usado com type para criar o metadata.product_event_type quando o registro não está no formato CEF. Também é usado para derivar metadata.event_type e mapear campos específicos para eventos DNS e HTTP. |
time |
(não mapeado) | Não mapeado para o objeto IDM. |
timestamp |
metadata.event_timestamp |
Valor do campo timestamp . |
trandisp |
(não mapeado) | Não mapeado para o objeto IDM. |
transip |
(não mapeado) | Não mapeado para o objeto IDM. |
transport |
(não mapeado) | Não mapeado para o objeto IDM. |
type |
metadata.product_event_type |
Usado com subtype para criar o metadata.product_event_type quando o registro não está no formato CEF. Também é usado para derivar metadata.event_type . |
tz |
(não mapeado) | Não mapeado para o objeto IDM. |
ui |
(não mapeado) | Não mapeado para o objeto IDM. |
url |
target.url |
Valor do campo url quando o registro não está no formato CEF. |
user |
principal.user.userid |
Valor do campo user quando o registro não está no formato CEF. Só é mapeado se não for N/A e não estiver vazio. |
utmaction |
security_result.action , security_result2.action_details |
Valor do campo utmaction quando o registro não está no formato CEF. Usado para derivar security_result.action e security_result.description . |
utmaction |
security_result.action |
Derivado. Se utmaction for accept , allow , passthrough , pass , permit ou detected , então ALLOW . Se deny , dropped , blocked ou block , então BLOCK . Caso contrário, UNKNOWN_ACTION . |
utmaction |
security_result.description |
Derivado. Defina como UTMAction: + security_result.action derivado se action1 estiver vazio. |
utmevent |
(não mapeado) | Não mapeado para o objeto IDM. |
vd |
principal.administrative_domain |
Valor do campo vd quando o registro não está no formato CEF. |
vpntunnel |
(não mapeado) | Não mapeado para o objeto IDM. |
wanin |
(não mapeado) | Não mapeado para o objeto IDM. |
wanout |
(não mapeado) | Não mapeado para o objeto IDM. |
N/A (lógica do analisador) | about.asset.asset_id |
Derivado. Defina como Fortinet. + product_name + : + deviceExternalId quando o registro estiver no formato CEF. |
N/A (lógica do analisador) | about.hostname |
Derivado. Definido como auth0 quando o registro está no formato CEF. |
N/A (lógica do analisador) | extensions.auth |
Derivado. Um objeto vazio é criado quando metadata.event_type é USER_LOGIN . |
N/A (lógica do analisador) | extensions.auth.type |
Derivado. Defina como AUTHTYPE_UNSPECIFIED quando metadata.event_type for USER_LOGIN . |
N/A (lógica do analisador) | is_alert , is_significant |
Derivado. Defina como "true" se crlevel for CRITICAL ou level for alert . |
N/A (lógica do analisador) | metadata.event_type |
Derivado com base em vários campos de registro e lógica no analisador. Pode ser NETWORK_CONNECTION , STATUS_UPDATE , GENERIC_EVENT , NETWORK_DNS , NETWORK_HTTP , USER_LOGIN , USER_LOGOUT ou NETWORK_UNCATEGORIZED . |
N/A (lógica do analisador) | metadata.log_type |
Derivado. Defina como FORTINET_FORTIANALYZER . |
N/A (lógica do analisador) | metadata.product_event_type |
Derivado. Defina como type + - + subtype . |
N/A (lógica do analisador) | metadata.product_name |
Derivado. Defina como Fortianalyzer ou extraia da mensagem CEF. |
N/A (lógica do analisador) | metadata.product_version |
Extraídos da mensagem CEF. |
N/A (lógica do analisador) | metadata.vendor_name |
Derivado. Defina como Fortinet . |
N/A (lógica do analisador) | network.application_protocol |
Derivado dos campos service ou app usando o arquivo parse_app_protocol.include ou definido como DNS para eventos de DNS. Também defina com base em ad.app se ele for HTTPS , HTTP , DNS , DHCP ou SMB . |
N/A (lógica do analisador) | network.dns.questions |
Derivado. Uma matriz de objetos de pergunta, cada um com os campos name , type e class , preenchidos para eventos de DNS. |
N/A (lógica do analisador) | network.http.parsed_user_agent |
Derivado do campo http_agent , convertido em um objeto de user agent analisado. |
N/A (lógica do analisador) | network.ip_protocol |
Derivado do campo proto usando o arquivo parse_ip_protocol.include . |
N/A (lógica do analisador) | principal.administrative_domain |
Valor do campo vd . |
N/A (lógica do analisador) | principal.asset.ip |
Copiado de principal.ip . |
N/A (lógica do analisador) | principal.asset.hostname |
Copiado de principal.hostname . |
N/A (lógica do analisador) | security_result.about.labels |
Uma matriz de pares de chave-valor, preenchida com craction , se presente. |
N/A (lógica do analisador) | security_result.action |
Derivado de action ou utmaction . |
N/A (lógica do analisador) | security_result.description |
Derivado de action , utmaction , msg , catdesc ou reason , dependendo dos campos disponíveis e do formato do registro. |
N/A (lógica do analisador) | security_result.severity |
Derivado de crlevel ou level . |
N/A (lógica do analisador) | security_result.severity_details |
Derivado. Defina como level: + level . |
N/A (lógica do analisador) | security_result.detection_fields |
Uma matriz de pares de chave-valor, preenchida com srcintf , srcintfrole , dstintf e dstintfrole , se presentes. |
N/A (lógica do analisador) | target.asset.ip |
Copiado de target.ip . |
N/A (lógica do analisador) | target.asset.hostname |
Copiado de target.hostname . |
N/A (lógica do analisador) | target.resource.resource_type |
Derivado. Defina como ACCESS_POLICY quando o campo profile estiver presente. |
Alterações
2025-01-31
Melhoria:
catdesc
foi mapeado parasecurity_result.rule_name
.crscore
foi mapeado parasecurity_result.detection_fields
.method
foi mapeado paranetwork.http.method
.cat
foi mapeado parasecurity_result.rule_id
.
2025-01-02
Melhoria:
- Quando
action
élogin
estatus
ésuccess
, oALLOW
é mapeado parasecurity_result.action
. - Quando
action
élogin
estatus
éfailure
, oBLOCK
é mapeado parasecurity_result.action
.
2024-11-28
Melhoria:
filename
foi mapeado paratarget.file.full_path
.
2024-11-19
Melhoria:
dstuser
foi mapeado paratarget.user.userid
.
2024-11-13
Melhoria:
fsaverdict
foi mapeado paraadditional.fields
.
2024-10-28
Melhoria:
- O mapeamento de
srcinf
,dstinf
,srcintfrole
edstintfrole
foi alterado desecurity_result.detection_fields
paraadditional.fields
.
2024-10-16
Melhoria:
type
,subtype
elevel
foram mapeados parametadata.ingestion_labels
.
2024-10-01
Melhoria:
logdesc
foi mapeado parametadata.description
.
2024-10-01
Melhoria:
logdesc
foi mapeado parametadata.description
.
2024-09-23
Melhoria:
- O mapeamento de
devname
foi modificado paraprincipal.resource.attribute.labels
. - Mapeamento de
srcname
paraprincipal.hostname
eprincipal.asset.hostname
.
2024-09-12
Melhoria:
- Foram adicionadas verificações condicionais para mapear o valor
BLOCK
para o campo UDMsecurity_result.action
quando o valorreason
ésslvpn_login_permission_denied
.
2024-07-22
Melhoria:
gusb
foi adicionado para processar os registros não analisados.
2024-07-04
Melhoria:
- Quando
msg
contémlogin
, definaevent_type
comoUSER_LOGIN
.
2024-04-25
Melhoria:
httpmethod
foi mapeado paranetwork.http.method
.- Quando
action
forlogin
, mapeieALLOW
parasecurity_result.action
. - Quando
msg
contémlogged in successfully
, definaevent_type
comoUSER_LOGIN
. - Quando
msg
contémlogin failed
, definaevent_type
comoUSER_LOGOUT
.
2023-07-19
Correção de bugs:
- O gsub foi adicionado para remover
\n
e analisar logs com falhas.
2023-05-05
- Adição de suporte a registros com formato CEF.
2022-09-19
- Parser recém-criado.
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.