Coletar registros do Cisco Meraki
Este documento descreve como coletar registros do Cisco Meraki usando um forwarder do Google Security Operations.
Para mais informações, consulte Ingestão de dados para as operações de segurança do Google.
Um rótulo de transferência identifica o analisador que normaliza os dados de registro brutos
para o formato estruturado do UDM. As informações neste documento se aplicam ao analisador
com o rótulo de transferência CISCO_MERAKI
.
Configurar o Cisco Meraki
- Faça login no painel do Cisco Meraki.
- No painel Cisco Meraki, selecione Configurar > Alertas e administração.
- Na seção Registro, faça o seguinte:
- No campo IP do servidor, especifique o endereço IP do encaminhador das operações de segurança do Google.
- No campo Port, especifique o valor da porta, como 514.
- No campo Papéis, selecione as quatro opções disponíveis para receber todos os registros ou selecione qualquer combinação de acordo com sua necessidade.
- Clique em Salvar alterações.
Configurar o forwarder e o syslog do Google Security Operations para processar registros do Cisco Meraki
- Acesse Configurações do SIEM > Encaminhadores.
- Clique em Adicionar novo encaminhador.
- No campo Nome do encaminhador, insira um nome exclusivo.
- Clique em Enviar. O encaminhador é adicionado, e a janela Add collector configuration é exibida.
- No campo Nome do coletor, digite um nome.
- Selecione Cisco Meraki como o Tipo de registro.
- Selecione Syslog como o Tipo de coletor.
- Configure os seguintes parâmetros de entrada obrigatórios:
- Protocolo: especifique o protocolo.
- Endereço: especifique o endereço IP ou o nome do host de destino em que o coletor reside e detecta dados do syslog.
- Porta: especifique a porta de destino em que o coletor reside e detecta dados do syslog.
- Clique em Enviar.
Para mais informações sobre os encaminhadores do Google Security Operations, consulte a documentação sobre encaminhadores do Google Security Operations.
Para informações sobre os requisitos de cada tipo de encaminhador, consulte Configuração do encaminhador por tipo.
Se você tiver problemas ao criar encaminhadores, entre em contato com o suporte da Google Security Operations.
Referência do mapeamento de campo
Esse analisador processa os registros do Cisco Meraki (identificados como Cisco/Meraki) no formato SYSLOG ou JSON, normalizando-os na UDM. Ele usa padrões grok para analisar mensagens syslog e lógica condicional com base no campo eventType
para extrair informações relevantes, processando vários tipos de eventos, como fluxos de rede, solicitações de URL, eventos de firewall e eventos genéricos, mapeando-os para os campos apropriados do UDM e enriquecendo os dados com mais contexto. Se a entrada não for syslog, ela tentará analisá-la como JSON e mapeará os campos relevantes para o UDM.
Tabela de mapeamento do UDM
Campo de registro | Mapeamento do UDM | Lógica |
---|---|---|
action |
security_result.action |
O valor é convertido em letras maiúsculas. Se o valor for "deny", ele será substituído por "BLOCK". Se sc_action contiver "allow", o valor será substituído por "ALLOW". Caso contrário, se decision contiver "block", o valor será substituído por "BLOCK". Caso contrário, se authorization for "success", ele será definido como "ALLOW". Se for "failure", ele será definido como "BLOCK". Caso contrário, se pattern for "1 all", "deny all" ou "Group Policy Deny", ele será definido como "BLOCK". Se pattern for "permitir tudo", "permitir política de grupo" ou "0 tudo", ele será definido como "PERMITIR". Caso contrário, ele será definido como "UNKNOWN_ACTION". Se decision contiver "block", ele será definido como "BLOCK". |
adId |
principal.user.user_display_name |
Mapeado diretamente do campo adId nos registros JSON. |
agent |
network.http.user_agent |
Os apóstrofos são removidos. Mapeado diretamente do campo agent . Também convertido em network.http.parsed_user_agent usando o filtro parseduseragent . |
aid |
network.session_id |
Mapeado diretamente do campo aid . |
appProtocol |
network.application_protocol |
Convertido em letras maiúsculas. Mapeado diretamente do campo appProtocol . |
attr |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "attr". |
authorization |
security_result.action_details |
Mapeado diretamente do campo authorization nos registros JSON. |
band |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "band". |
bssids.bssid |
principal.mac |
Convertido em letras minúsculas. Mesclado à matriz principal.mac . |
bssids.detectedBy.device |
intermediary.asset.asset_id |
Formatado como "ID do dispositivo: |
bssids.detectedBy.rssi |
intermediary.asset.product_object_id |
Convertido em uma string. |
Channel |
about.resource.attribute.labels |
Adicionado como um par de chave-valor à matriz about.resource.attribute.labels com a chave "Channel". |
clientDescription |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "clientDescription". |
clientId |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "clientId". |
clientIp |
principal.ip , principal.asset.ip |
Mapeado diretamente do campo clientIp . |
clientMac |
principal.mac |
Convertido em letras minúsculas. Mapeado diretamente do campo clientMac nos registros JSON. |
client_ip |
principal.ip , principal.asset.ip |
Mapeado diretamente do campo client_ip . |
client_mac |
principal.mac |
Convertido em letras minúsculas. Mapeado diretamente do campo client_mac . |
code |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "code". |
collection_time |
metadata.event_timestamp |
Os campos de segundos e nanos são combinados para criar um carimbo de data/hora. |
Conditions |
security_result.about.resource.attribute.labels |
Os retornos de carro, novas linhas e guias são substituídos por espaços, e valores específicos são substituídos. O valor modificado é adicionado como um par de chave-valor à matriz security_result.about.resource.attribute.labels com a chave "Condições". |
decision |
security_result.action |
Se o valor for "bloqueado", ele será definido como "BLOCK". |
desc |
metadata.description |
Mapeado diretamente do campo desc . |
description |
security_result.description |
Mapeado diretamente do campo description nos registros JSON. |
DestAddress |
target.ip , target.asset.ip |
Mapeado diretamente do campo DestAddress . |
DestPort |
target.port |
Convertido em um número inteiro. Mapeado diretamente do campo DestPort . |
deviceIp |
target.ip |
Mapeado diretamente do campo deviceIp . |
deviceMac |
target.mac |
Convertido em letras minúsculas. Mapeado diretamente do campo deviceMac . |
deviceName |
target.hostname , target.asset.hostname |
Mapeado diretamente do campo deviceName nos registros JSON. |
deviceSerial |
target.asset.hardware.serial_number |
Mapeado diretamente do campo deviceSerial nos registros JSON. |
Direction |
network.direction |
Os caracteres especiais são removidos e o valor é mapeado para network.direction . |
DisabledPrivilegeList |
target.user.attribute |
As quebras de linha, de página e tabulações são substituídas, e o valor modificado é analisado como JSON e mesclado no objeto target.user.attribute . |
dport |
target.port |
Convertido em um número inteiro. Mapeado diretamente do campo dport . |
dst |
target.ip , target.asset.ip |
Mapeado diretamente do campo dst . |
dstIp |
target.ip , target.asset.ip |
Mapeado diretamente do campo dstIp . |
dstPort |
target.port |
Convertido em um número inteiro. Mapeado diretamente do campo dstPort . |
dvc |
intermediary.hostname |
Mapeado diretamente do campo dvc . |
EnabledPrivilegeList |
target.user.attribute |
As quebras de linha, de página e tabulações são substituídas, e o valor modificado é analisado como JSON e mesclado no objeto target.user.attribute . |
eventData.aid |
principal.asset_id |
Formatado como "ASSET_ID: |
eventData.client_ip |
principal.ip , principal.asset.ip |
Mapeado diretamente do campo eventData.client_ip nos registros JSON. |
eventData.client_mac |
principal.mac |
Convertido em letras minúsculas. Mapeado diretamente do campo eventData.client_mac nos registros JSON. |
eventData.group |
principal.group.group_display_name |
Mapeado diretamente do campo eventData.group nos registros JSON. |
eventData.identity |
principal.hostname |
Mapeado diretamente do campo eventData.identity nos registros JSON. |
eventData.ip |
principal.ip , principal.asset.ip |
Mapeado diretamente do campo eventData.ip nos registros JSON. |
EventID |
metadata.product_event_type , security_result.rule_name |
Convertido em uma string. Mapeado para metadata.product_event_type . Também usado para criar security_result.rule_name no formato "EventID: event_type e sec_action . |
eventSummary |
security_result.summary , metadata.description |
Mapeado diretamente do campo eventSummary . Também usado em security_result.description para alguns eventos. |
eventType |
metadata.product_event_type |
Mapeado diretamente do campo eventType . Usado para determinar qual lógica de análise será aplicada. |
filename |
principal.process.file.full_path |
Mapeado diretamente do campo filename . |
FilterId |
target.resource.product_object_id |
Mapeado diretamente do campo FilterId para o EventID 5447. |
FilterName |
target.resource.name |
Mapeado diretamente do campo FilterName para o EventID 5447. |
FilterRTID |
security_result.detection_fields |
Adicionado como um par de chave-valor à matriz security_result.detection_fields com a chave "FilterRTID". |
firstSeen |
security_result.detection_fields |
Convertido em uma string. Adicionado como um par de chave-valor à matriz security_result.detection_fields com a chave "firstSeen". |
gatewayDeviceMac |
target.mac |
Convertido em letras minúsculas. Mesclado à matriz target.mac . |
group |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "group". |
GroupMembership |
target.user |
Os retornos de carro, novas linhas, guias e caracteres especiais são removidos. O valor modificado é analisado como JSON e mesclado no objeto target.user . |
Hostname |
principal.hostname , principal.asset.hostname |
Mapeado diretamente do campo Hostname . |
identity |
target.user.userid |
Mapeado diretamente do campo identity . |
instigator |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "instigator". |
int_ip |
intermediary.ip |
Mapeado diretamente do campo int_ip . |
ip_msg |
principal.resource.attribute.labels |
Adicionado como um par de chave-valor à matriz principal.resource.attribute.labels com a chave "IPs". |
is_8021x |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "is_8021x". |
KeyName |
target.resource.name |
Mapeado diretamente do campo KeyName . |
KeyFilePath |
target.file.full_path |
Mapeado diretamente do campo KeyFilePath . |
lastSeen |
security_result.detection_fields |
Convertido em uma string. Adicionado como um par de chave-valor à matriz security_result.detection_fields com a chave "lastSeen". |
last_known_client_ip |
principal.ip , principal.asset.ip |
Mapeado diretamente do campo last_known_client_ip . |
LayerName |
security_result.detection_fields |
Adicionado como um par de chave-valor à matriz security_result.detection_fields com a chave "Nome da camada". |
LayerRTID |
security_result.detection_fields |
Adicionado como um par de chave-valor à matriz security_result.detection_fields com a chave "LayerRTID". |
localIp |
principal.ip , principal.asset.ip |
Mapeado diretamente do campo localIp . |
login |
principal.user.email_addresses |
Mapeado diretamente do campo login nos registros JSON se corresponder a um formato de endereço de e-mail. |
LogonGuid |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "LogonGuid". |
LogonType |
extensions.auth.mechanism |
Mapeado para um mecanismo de autenticação específico com base no valor. Se PreAuthType estiver presente, ele vai substituir LogonType . Os valores são mapeados da seguinte maneira: 2 -> USERNAME_PASSWORD, 3 -> NETWORK, 4 -> BATCH, 5 -> SERVICE, 7 -> UNLOCK, 8 -> NETWORK_CLEAR_TEXT, 9 -> NEW_CREDENTIALS, 10 -> REMOTE_INTERACTIVE, 11 -> CACHED_INTERACTIVE, 12 -> CACHED_REMOTE_INTERACTIVE, 13 -> CACHED_UNLOCK, outros -> MECHANISM_UNSPECIFIED. |
mac |
principal.mac |
Convertido em letras minúsculas. Mesclado à matriz principal.mac . |
MandatoryLabel |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "MandatoryLabel". |
Message |
security_result.description , security_result.summary |
Se AccessReason estiver presente, Message será mapeado para security_result.summary e AccessReason será mapeado para security_result.description . Caso contrário, Message será mapeado para security_result.description . |
method |
network.http.method |
Mapeado diretamente do campo method . |
msg |
security_result.description |
Mapeado diretamente do campo msg . |
name |
principal.user.user_display_name |
Mapeado diretamente do campo name nos registros JSON. |
natsrcIp |
principal.nat_ip |
Mapeado diretamente do campo natsrcIp . |
natsrcport |
principal.nat_port |
Convertido em um número inteiro. Mapeado diretamente do campo natsrcport . |
network_id |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "ID de rede". |
NewProcessId |
target.process.pid |
Mapeado diretamente do campo NewProcessId . |
NewProcessName |
target.process.file.full_path |
Mapeado diretamente do campo NewProcessName . |
NewSd |
target.resource.attribute.labels |
Adicionado como um par de chave-valor à matriz target.resource.attribute.labels com a chave "New Security Descriptor". |
occurredAt |
metadata.event_timestamp |
Analisado como um carimbo de data/hora usando o formato ISO8601. |
ObjectName |
target.file.full_path , target.registry.registry_key , target.process.file.full_path , additional.fields |
Se EventID for 4663 e ObjectType for "Processo", ele será mapeado para target.process.file.full_path . Se ObjectType for "Chave", ele será mapeado para target.registry.registry_key . Caso contrário, ele será mapeado para target.file.full_path . Para outros eventos, ele é adicionado como um par de chave-valor à matriz additional.fields com a chave "ObjectName". |
ObjectType |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "ObjectType". Usado para determinar event_type . |
OldSd |
target.resource.attribute.labels |
Adicionado como um par de chave-valor à matriz target.resource.attribute.labels com a chave "Original Security Descriptor". |
organizationId |
principal.resource.id |
Mapeado diretamente do campo organizationId nos registros JSON. |
ParentProcessName |
target.process.parent_process.file.full_path |
Mapeado diretamente do campo ParentProcessName . |
pattern |
security_result.description |
Mapeado diretamente para security_result.description . Usado para determinar security_result.action . |
peer_ident |
target.user.userid |
Mapeado diretamente do campo peer_ident . |
PreAuthType |
extensions.auth.mechanism |
Usado para determinar o mecanismo de autenticação, se houver. Substitui LogonType . |
principalIp |
principal.ip , principal.asset.ip |
Mapeado diretamente do campo principalIp . |
principalMac |
principal.mac |
Convertido em letras minúsculas. Mesclado à matriz principal.mac . |
principalPort |
principal.port |
Convertido em um número inteiro. Mapeado diretamente do campo principalPort . |
prin_ip2 |
principal.ip , principal.asset.ip |
Mapeado diretamente do campo prin_ip2 . |
prin_url |
principal.url |
Mapeado diretamente do campo prin_url . |
priority |
security_result.priority |
Mapeado para um nível de prioridade com base no valor: 1 -> HIGH_PRIORITY, 2 -> MEDIUM_PRIORITY, 3 -> LOW_PRIORITY, outros -> UNKNOWN_PRIORITY. |
ProcessID |
principal.process.pid |
Convertido em uma string. Mapeado diretamente do campo ProcessID . |
ProcessName |
principal.process.file.full_path , target.process.file.full_path |
Se EventID for 4689, ele será mapeado para target.process.file.full_path . Caso contrário, ele será mapeado para principal.process.file.full_path . |
prod_log_id |
metadata.product_log_id |
Mapeado diretamente do campo prod_log_id . |
protocol |
network.ip_protocol |
Convertido em letras maiúsculas. Se for um número, ele será convertido no nome do protocolo IP correspondente. Se for "ICMP6", será substituído por "ICMP". Mapeado diretamente do campo protocol . |
ProviderGuid |
metadata.product_deployment_id |
Mapeado diretamente do campo ProviderGuid . |
query |
network.dns.questions.name |
Mapeado diretamente do campo query . |
query_type |
network.dns.questions.type |
Foi renomeado para question.type e mesclada na matriz network.dns.questions . Mapeado para um valor numérico com base no tipo de consulta DHCP. |
radio |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "radio". |
reason |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "reason". |
rec_bytes |
network.received_bytes |
Convertido em um número inteiro sem sinal. Mapeado diretamente do campo rec_bytes . |
RecordNumber |
metadata.product_log_id |
Convertido em uma string. Mapeado diretamente do campo RecordNumber . |
RelativeTargetName |
target.process.file.full_path |
Mapeado diretamente do campo RelativeTargetName . |
response_ip |
principal.ip , principal.asset.ip |
Mapeado diretamente do campo response_ip . |
rssi |
intermediary.asset.product_object_id |
Mapeado diretamente do campo rssi . |
sc_action |
security_result.action_details |
Mapeado diretamente do campo sc_action . |
sec_action |
security_result.action |
Mesclado à matriz security_result.action . |
server_ip |
client_ip |
Mapeado diretamente para o campo client_ip . |
Severity |
security_result.severity |
Mapeado para um nível de gravidade com base no valor: "Info" -> INFORMATIONAL, "Erro" -> ERROR, "Aviso" -> MEDIUM, outros -> UNKNOWN_SEVERITY. |
sha256 |
target.file.sha256 |
Mapeado diretamente do campo sha256 . |
signature |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "assinatura". |
SourceAddress |
principal.ip , principal.asset.ip |
Mapeado diretamente do campo SourceAddress . |
SourceHandleId |
src.resource.id |
Mapeado diretamente do campo SourceHandleId . |
SourceModuleName |
observer.labels |
Adicionado como um par de chave-valor à matriz observer.labels com a chave "SourceModuleName". |
SourceModuleType |
observer.application |
Mapeado diretamente do campo SourceModuleType . |
SourcePort |
principal.port |
Convertido em um número inteiro. Mapeado diretamente do campo SourcePort . |
SourceProcessId |
src.process.pid |
Mapeado diretamente do campo SourceProcessId . |
source_client_ip |
client_ip |
Mapeado diretamente para o campo client_ip . |
sport |
principal.port |
Convertido em um número inteiro. Mapeado diretamente do campo sport . |
src |
principal.ip , principal.asset.ip |
Mapeado diretamente do campo src . |
ssid |
network.session_id |
Mapeado diretamente do campo ssid nos registros JSON. |
ssidName |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "ssidName". |
state |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "state". |
Status |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "Status". |
status_code |
network.http.response_code |
Convertido em um número inteiro. Mapeado diretamente do campo status_code . |
SubjectDomainName |
principal.administrative_domain |
Mapeado diretamente do campo SubjectDomainName . |
SubjectLogonId |
principal.resource.attribute.labels |
Adicionado como um par de chave-valor à matriz principal.resource.attribute.labels com a chave "SubjectLogonId". |
SubjectUserName |
principal.user.userid |
Mapeado diretamente do campo SubjectUserName . |
SubjectUserSid |
principal.user.windows_sid |
Mapeado diretamente do campo SubjectUserSid . |
targetHost |
target.hostname , target.asset.hostname |
Convertido em um endereço IP, se possível. Caso contrário, será analisado para extrair o nome do host e mapeado para target.hostname e target.asset.hostname . |
TargetHandleId |
target.resource.id |
Mapeado diretamente do campo TargetHandleId . |
TargetLogonId |
principal.resource.attribute.labels |
Adicionado como um par de chave-valor à matriz principal.resource.attribute.labels com a chave "TargetLogonId", se for diferente de SubjectLogonId . |
TargetProcessId |
target.process.pid |
Mapeado diretamente do campo TargetProcessId . |
TargetUserName |
target.user.userid |
Mapeado diretamente do campo TargetUserName . |
TargetUserSid |
target.user.windows_sid |
Mapeado diretamente do campo TargetUserSid . |
Task |
additional.fields |
Convertido em uma string. Adicionado como um par de chave-valor à matriz additional.fields com a chave "Task". |
timestamp |
metadata.event_timestamp |
O campo de segundos é usado para criar um carimbo de data/hora. |
ts |
metadata.event_timestamp |
Se ts estiver vazio, ele será criado combinando tsDate , tsTime e tsTZ . Se ele contiver " |
type |
security_result.summary , metadata.product_event_type |
Mapeado diretamente do campo type nos registros JSON. Também usado como eventSummary e metadata.product_event_type em alguns casos. |
url |
target.url , principal.url |
Mapeado diretamente do campo url . |
url1 |
target.url |
Mapeado diretamente do campo url1 . |
user |
target.user.group_identifiers |
Mesclado à matriz target.user.group_identifiers . |
user_id |
target.user.userid |
Mapeado diretamente do campo user_id . |
UserID |
principal.user.windows_sid |
Mapeado diretamente do campo UserID . |
UserName |
principal.user.userid |
Mapeado diretamente do campo UserName . |
user_agent |
network.http.user_agent |
Mapeado diretamente do campo user_agent . |
userId |
target.user.userid |
Mapeado diretamente do campo userId . |
vap |
additional.fields |
Adicionado como um par de chave-valor à matriz additional.fields com a chave "vap". |
VirtualAccount |
security_result.about.labels |
Adicionado como um par de chave-valor à matriz security_result.about.labels com a chave "VirtualAccount". |
wiredLastSeen |
security_result.detection_fields |
Convertido em uma string. Adicionado como um par de chave-valor à matriz security_result.detection_fields com a chave "wiredLastSeen". |
wiredMacs |
intermediary.mac |
Convertido em letras minúsculas. Mesclado à matriz intermediary.mac . |
WorkstationName |
principal.hostname , principal.asset.hostname |
Mapeado diretamente do campo WorkstationName . |
Alterações
2024-03-19
- Um padrão Grok foi adicionado para mapear o endereço IP do dispositivo de envio para "intermediary.ip".
2024-02-06
- Registros analisados em que "eventSummary" é "cli_set_rad_parms" ou "cli_set_rad_pmksa_parms".
- Mapeamos "group" e "attr" para "additional.fields".
2023-12-26
- Registros analisados com "eventSummary" como "status changed" e "changed STP role".
2023-10-09
- Defina "sec_res.action" como "BLOCK" quando "pattern" estiver em "1 all", "deny all" ou "Group Policy Deny".
- Defina "sec_res.action" como "ALLOW" quando "pattern" estiver em "0 all", "allow all" ou "Group Policy Allow".
2023-07-19
- Correção de bugs:
- Registros syslog não analisados do tipo "firewall".
2023-07-14
- Melhoria:
- para o tipo "splash_auth", "event_type" foi associado a "USER_LOGIN".
- para o tipo "device_packet_flood", "packet_flood" mapeou "event_type" para "GENERIC_EVENT".
- para o tipo "vpn_connectivity_change", "wpa_deauth", "wpa_auth" mapeou "event_type" para "STATUS_UPDATE".
- "Agent" foi mapeado para "network.http.parsed_user_agent".
- Se "protocol" == "47", "network.ip_protocol" é mapeado para "GRE".
- Se "protocol" == "103", mapeie "network.ip_protocol" para "PIM".
2023-07-04
- Melhoria:
- Usamos filtros de chave-valor em vez de um padrão Grok para analisar os registros de tipo "urls", "firewall" e "vpn_firewall".
2023-06-16
- Melhoria:
- "src" foi mapeado para "principal.ip"
- Mapeou "dst" para "target.ip"
- "protocol" foi mapeado para "network.ip_protocol"
- "sport" foi mapeado para "principal.port".
- Mapeamos "dport" para "target.port"
- Mapeou "mac" para "principal.mac".
- Mapeou "pattern" para "security_result.description".
2023-06-09
- Melhoria:
- O mapeamento de "metadata.event_type" para "USER_LOGOUT" quando "type" = "8021x_deauth".
- Mapeamos "radio", "vap", "reason", "is_8021x", "instigator" e "band" para "additional.fields" para "type" = "disassociation".
2023-05-26
- Melhoria:
- Para o tipo "security_filtering_file_scanned", "metadata.event_type" foi modificado de "STATUS_UPDATE" para "SCAN_FILE".
- Adição do padrão Grok para analisar registros syslog.
- "ip" foi mapeado para "principal.ip"
- Mapeou "mac" para "principal.mac".
2023-03-03
- Melhoria:
- O padrão Grok foi adicionado para analisar registros com o campo "ip_flow_end".
- "NatsrcIp" foi mapeado para "principal.nat_ip".
- "Natsrcport" foi mapeado para "principal.nat_port".
2022-11-25
- Melhoria:
- Adição de suporte a registros JSON não analisados, registros de consulta network_dns e registros syslog+kv_data com falha.
- "metadata.eventType" foi mapeado para RESOURCE_CREATION, FILE_UNCATEGORIZED, SETTING_MODIFICATION, NETWORK_UNCATEGORIZED,
- GROUP_UNCATEGORIZED, PROCESS_LAUNCH, PROCESS_TERMINATION, STATUS_UNCATEGORIZED, SYSTEM_AUDIT_LOG_UNCATEGORIZED,
- USER_LOGOUT, USER_LOGIN, RESOURCE_PERMISSIONS_CHANGE, USER_RESOURCE_ACCESS com base em "EventID" para registros JSON.
- Mapeou "DisabledPrivilegeList" e "EnabledPrivilegeList" para "target.user.attribute.permissions".
- "GroupMembership" foi mapeado para "target.user.group_identifiers".
- "AccessList" foi mapeado para "target.resource.attribute".
- "auth_mechanism" foi mapeado para "extensions.auth.mechanism".
- "question" foi mapeado para "network.dns.questions".
- Defina "security_result.priority" com base no valor "priority".
- "RecordNumber" foi mapeado para "metadata.product_log_id".
2022-10-06
- Melhoria:
- "dvc" foi mapeado para "intermediary.hostname".
- "eventType" foi associado a "metadata.product_event_type".
- Mapeamos "pattren" para "security_result.action_details".
- "principalMac" foi mapeado para "principal.mac".
- "principalIp" foi mapeado para "principal.ip".
- Foi adicionada uma verificação de valor nulo para o mapeamento anterior de "dstIp" para udm.
2022-07-04
- Melhoria:
- Quando "protocol" for igual a "47", defina "protocol" como "GRE".
- Quando "protocol" for igual a "50", defina "protocol" como "ESP".
- Foi adicionado um bloco kv quando "eventType" é igual a "events".
- "identity" foi mapeado para "target.user.userid".
- "last_known_client_ip" foi mapeado para "principal.ip".
- Quando "eventSummary" é igual a "association".
- "client_ip" foi associado a "principal.ip".
- "client_mac" foi mapeado para "principal.mac".
- "Rssi" foi mapeado para "intermediary.asset.product_object_id".
- Mapeamos "channel" para "security_result.detection_fields".
- "aid" foi mapeado para "network.session_id".
2022-06-15
- Melhoria:
- "lastSeen", "firstSeen" e "wiredLastSeen" foram mapeados para "security_result.detection_fields".
- Mapeamos "wiredMacs" para "intermediary.mac".
- "type" foi associado a "security_result.summary".
- "description" foi mapeado para "security_result.description".
- "deviceSerial" foi mapeado para "_target_hardware.serial_number".
- "deviceName" foi mapeado para "target.hostname".
- "ssidName", "clientId" e "clientDescription" foram mapeados para "additional.fields".
- "eventData.client_mac" foi associado a "principal.mac".
- "eventData.identity" foi mapeado para "principal.hostname".
- "eventData.aid" foi mapeado para "principal.asset_id".
- "organizationId" foi mapeado para "principal.resource.id".
- "eventData.group" foi mapeado para "principal.group.group_display_name".
- "eventData.client_ip" foi associado a "principal.ip".
- Mapeamos "occurredAt" para "metadata.event_timestamp".
2022-05-04
- Melhoria: foi adicionado um mapeamento para o nome do host.
13/04/2022
- Melhoria: adição da análise de registros do tipo JSON.