Recopila registros de Cisco Meraki

Se admite en los siguientes países:

En este documento, se describe cómo puedes recopilar registros de Cisco Meraki con un reenviador de Google Security Operations.

Para obtener más información, consulta Transferencia de datos a Google Security Operations.

Una etiqueta de transferencia identifica el analizador que normaliza los datos de registro sin procesar al formato estructurado del UDM. La información de este documento se aplica al analizador con la etiqueta de transferencia CISCO_MERAKI.

Configura Cisco Meraki

  1. Accede al panel de Cisco Meraki.
  2. En el panel de Cisco Meraki, selecciona Configurar > Alertas y administración.
  3. En la sección Registros, haz lo siguiente:
    1. En el campo IP del servidor, especifica la dirección IP del reenviador de Operaciones de seguridad de Google.
    2. En el campo Puerto, especifica el valor del puerto, como 514.
    3. En el campo Roles, selecciona las cuatro opciones disponibles para obtener todos los registros o selecciona cualquier combinación según tus necesidades.
  4. Haz clic en Guardar cambios.

Configura el reenviador y el syslog de Google Security Operations para transferir registros de Cisco Meraki

  1. Ve a Configuración de SIEM > Redireccionamientos.
  2. Haz clic en Agregar nuevo remitente.
  3. En el campo Nombre del reenviador, ingresa un nombre único para el reenviador.
  4. Haz clic en Enviar. Se agregará el reenviador y aparecerá la ventana Add collector configuration.
  5. En el campo Nombre del recopilador, escribe un nombre.
  6. Selecciona Cisco Meraki como el Tipo de registro.
  7. Selecciona Syslog como el tipo de recopilador.
  8. Configura los siguientes parámetros de entrada obligatorios:
    • Protocolo: Especifica el protocolo.
    • Dirección: Especifica la dirección IP o el nombre de host de destino donde reside el recopilador y escucha los datos de syslog.
    • Puerto: Especifica el puerto de destino en el que reside el recopilador y escucha los datos de syslog.
  9. Haz clic en Enviar.

Para obtener más información sobre los reenvío de Google Security Operations, consulta la documentación de reenvío de Google Security Operations.

Para obtener información sobre los requisitos de cada tipo de reenviador, consulta Configuración del reenviador por tipo.

Si tienes problemas cuando creas reenvío de correo, comunícate con el equipo de asistencia de Operaciones de seguridad de Google.

Referencia de la asignación de campos

Este analizador controla los registros de Cisco Meraki (identificados como Cisco/Meraki) en formato SYSLOG o JSON, y los normaliza en la UDM. Usa patrones de grok para analizar mensajes de syslog y lógica condicional basada en el campo eventType para extraer información relevante, controlar varios tipos de eventos, como flujos de red, solicitudes de URL, eventos de firewall y eventos genéricos, asignarlos a los campos de UDM adecuados y enriquecer los datos con contexto adicional. Si la entrada no es syslog, intenta analizarla como JSON y asigna los campos relevantes a la UDM.

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
action security_result.action El valor se convierte en mayúsculas. Si el valor es "deny", se reemplaza por "BLOCK". Si sc_action contiene "allow", el valor se reemplaza por "ALLOW". De lo contrario, si decision contiene "block", el valor se reemplaza por "BLOCK". De lo contrario, si authorization es “success”, se establece como “ALLOW” y, si es “failure”, se establece como “BLOCK”. De lo contrario, si pattern es “1 todo”, “rechazar todo” o “Rechazar directiva de grupo”, se establece en “BLOQUEAR”. Si pattern es "permitir todo", "Permitir la directiva de grupo" o "0 todo", se establece en "PERMITIR". De lo contrario, se establece como "UNKNOWN_ACTION". Si decision contiene “bloquear”, se establece como “BLOQUEAR”.
adId principal.user.user_display_name Se asigna directamente desde el campo adId en los registros JSON.
agent network.http.user_agent Se quitan los apóstrofos. Se asignan directamente desde el campo agent. También se convierte a network.http.parsed_user_agent con el filtro parseduseragent.
aid network.session_id Se asignan directamente desde el campo aid.
appProtocol network.application_protocol Se convirtió en mayúsculas. Se asignan directamente desde el campo appProtocol.
attr additional.fields Se agrega como un par clave-valor al array additional.fields con la clave "attr".
authorization security_result.action_details Se asigna directamente desde el campo authorization en los registros JSON.
band additional.fields Se agrega como un par clave-valor al array additional.fields con la clave "band".
bssids.bssid principal.mac Se convirtió en minúsculas. Se fusionó en el array principal.mac.
bssids.detectedBy.device intermediary.asset.asset_id Debe tener el formato "Device id: ".
bssids.detectedBy.rssi intermediary.asset.product_object_id Se convirtió en una cadena.
Channel about.resource.attribute.labels Se agregó como un par clave-valor al array about.resource.attribute.labels con la clave "Channel".
clientDescription additional.fields Se agregó como un par clave-valor al array additional.fields con la clave "clientDescription".
clientId additional.fields Se agregó como un par clave-valor al array additional.fields con la clave "clientId".
clientIp principal.ip, principal.asset.ip Se asignan directamente desde el campo clientIp.
clientMac principal.mac Se convirtió en minúsculas. Se asigna directamente desde el campo clientMac en los registros JSON.
client_ip principal.ip, principal.asset.ip Se asignan directamente desde el campo client_ip.
client_mac principal.mac Se convirtió en minúsculas. Se asignan directamente desde el campo client_mac.
code additional.fields Se agrega como un par clave-valor al array additional.fields con la clave "code".
collection_time metadata.event_timestamp Los campos de segundos y nanos se combinan para crear una marca de tiempo.
Conditions security_result.about.resource.attribute.labels Los retornos de carro, las líneas nuevas y las tabulaciones se reemplazan por espacios, y se sustituyen valores específicos. El valor modificado se agrega como un par clave-valor al array security_result.about.resource.attribute.labels con la clave "Conditions".
decision security_result.action Si el valor es "blocked", se establece en "BLOCK".
desc metadata.description Se asignan directamente desde el campo desc.
description security_result.description Se asigna directamente desde el campo description en los registros JSON.
DestAddress target.ip, target.asset.ip Se asignan directamente desde el campo DestAddress.
DestPort target.port Se convirtió en un número entero. Se asignan directamente desde el campo DestPort.
deviceIp target.ip Se asignan directamente desde el campo deviceIp.
deviceMac target.mac Se convirtió en minúsculas. Se asignan directamente desde el campo deviceMac.
deviceName target.hostname, target.asset.hostname Se asigna directamente desde el campo deviceName en los registros JSON.
deviceSerial target.asset.hardware.serial_number Se asigna directamente desde el campo deviceSerial en los registros JSON.
Direction network.direction Se quitan los caracteres especiales y el valor se asigna a network.direction.
DisabledPrivilegeList target.user.attribute Se reemplazan los saltos de línea, las líneas nuevas y las tabulaciones, y el valor modificado se analiza como JSON y se combina en el objeto target.user.attribute.
dport target.port Se convirtió en un número entero. Se asignan directamente desde el campo dport.
dst target.ip, target.asset.ip Se asignan directamente desde el campo dst.
dstIp target.ip, target.asset.ip Se asignan directamente desde el campo dstIp.
dstPort target.port Se convirtió en un número entero. Se asignan directamente desde el campo dstPort.
dvc intermediary.hostname Se asignan directamente desde el campo dvc.
EnabledPrivilegeList target.user.attribute Se reemplazan los saltos de línea, las líneas nuevas y las tabulaciones, y el valor modificado se analiza como JSON y se combina en el objeto target.user.attribute.
eventData.aid principal.asset_id Debe tener el formato "ASSET_ID:".
eventData.client_ip principal.ip, principal.asset.ip Se asigna directamente desde el campo eventData.client_ip en los registros JSON.
eventData.client_mac principal.mac Se convirtió en minúsculas. Se asigna directamente desde el campo eventData.client_mac en los registros JSON.
eventData.group principal.group.group_display_name Se asigna directamente desde el campo eventData.group en los registros JSON.
eventData.identity principal.hostname Se asigna directamente desde el campo eventData.identity en los registros JSON.
eventData.ip principal.ip, principal.asset.ip Se asigna directamente desde el campo eventData.ip en los registros JSON.
EventID metadata.product_event_type, security_result.rule_name Se convirtió en una cadena. Se asignó a metadata.product_event_type. También se usa para crear security_result.rule_name en el formato "EventID: ". Se usa para determinar event_type y sec_action.
eventSummary security_result.summary, metadata.description Se asignan directamente desde el campo eventSummary. También se usa en security_result.description para algunos eventos.
eventType metadata.product_event_type Se asignan directamente desde el campo eventType. Se usa para determinar qué lógica de análisis aplicar.
filename principal.process.file.full_path Se asignan directamente desde el campo filename.
FilterId target.resource.product_object_id Se asigna directamente desde el campo FilterId para el ID de evento 5447.
FilterName target.resource.name Se asigna directamente desde el campo FilterName para el ID de evento 5447.
FilterRTID security_result.detection_fields Se agregó como un par clave-valor al array security_result.detection_fields con la clave "FilterRTID".
firstSeen security_result.detection_fields Se convirtió en una cadena. Se agrega como un par clave-valor al array security_result.detection_fields con la clave "firstSeen".
gatewayDeviceMac target.mac Se convirtió en minúsculas. Se fusionó en el array target.mac.
group additional.fields Se agrega como un par clave-valor al array additional.fields con la clave "group".
GroupMembership target.user Se quitan los retornos de carro, las líneas nuevas, los tabuladores y los caracteres especiales. El valor modificado se analiza como JSON y se combina en el objeto target.user.
Hostname principal.hostname, principal.asset.hostname Se asignan directamente desde el campo Hostname.
identity target.user.userid Se asignan directamente desde el campo identity.
instigator additional.fields Se agregó como un par clave-valor al array additional.fields con la clave "instigator".
int_ip intermediary.ip Se asignan directamente desde el campo int_ip.
ip_msg principal.resource.attribute.labels Se agregó como un par clave-valor al array principal.resource.attribute.labels con la clave "IPs".
is_8021x additional.fields Se agregó como un par clave-valor al array additional.fields con la clave "is_8021x".
KeyName target.resource.name Se asignan directamente desde el campo KeyName.
KeyFilePath target.file.full_path Se asignan directamente desde el campo KeyFilePath.
lastSeen security_result.detection_fields Se convirtió en una cadena. Se agregó como un par clave-valor al array security_result.detection_fields con la clave "lastSeen".
last_known_client_ip principal.ip, principal.asset.ip Se asignan directamente desde el campo last_known_client_ip.
LayerName security_result.detection_fields Se agregó como un par clave-valor al array security_result.detection_fields con la clave "Nombre de la capa".
LayerRTID security_result.detection_fields Se agregó como un par clave-valor al array security_result.detection_fields con la clave "LayerRTID".
localIp principal.ip, principal.asset.ip Se asignan directamente desde el campo localIp.
login principal.user.email_addresses Se asigna directamente desde el campo login en los registros JSON si coincide con el formato de una dirección de correo electrónico.
LogonGuid additional.fields Se agregó como un par clave-valor al array additional.fields con la clave "LogonGuid".
LogonType extensions.auth.mechanism Se asigna a un mecanismo de autenticación específico según su valor. Si PreAuthType está presente, anula LogonType. Los valores se asignan de la siguiente manera: 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, other -> MECHANISM_UNSPECIFIED.
mac principal.mac Se convirtió en minúsculas. Se fusionó en el array principal.mac.
MandatoryLabel additional.fields Se agregó como un par clave-valor al array additional.fields con la clave "MandatoryLabel".
Message security_result.description, security_result.summary Si AccessReason está presente, Message se asigna a security_result.summary y AccessReason se asigna a security_result.description. De lo contrario, Message se asigna a security_result.description.
method network.http.method Se asignan directamente desde el campo method.
msg security_result.description Se asignan directamente desde el campo msg.
name principal.user.user_display_name Se asigna directamente desde el campo name en los registros JSON.
natsrcIp principal.nat_ip Se asignan directamente desde el campo natsrcIp.
natsrcport principal.nat_port Se convirtió en un número entero. Se asignan directamente desde el campo natsrcport.
network_id additional.fields Se agregó como un par clave-valor al array additional.fields con la clave "ID de red".
NewProcessId target.process.pid Se asignan directamente desde el campo NewProcessId.
NewProcessName target.process.file.full_path Se asignan directamente desde el campo NewProcessName.
NewSd target.resource.attribute.labels Se agregó como un par clave-valor al array target.resource.attribute.labels con la clave "New Security Descriptor".
occurredAt metadata.event_timestamp Se analiza como una marca de tiempo con el formato ISO8601.
ObjectName target.file.full_path, target.registry.registry_key, target.process.file.full_path, additional.fields Si EventID es 4663 y ObjectType es “Proceso”, se asigna a target.process.file.full_path. Si ObjectType es "Clave", se asigna a target.registry.registry_key. De lo contrario, se asigna a target.file.full_path. Para otros eventos, se agrega como un par clave-valor al array additional.fields con la clave "ObjectName".
ObjectType additional.fields Se agregó como un par clave-valor al array additional.fields con la clave "ObjectType". Se usa para determinar event_type.
OldSd target.resource.attribute.labels Se agregó como un par clave-valor al array target.resource.attribute.labels con la clave "Descriptor de seguridad original".
organizationId principal.resource.id Se asigna directamente desde el campo organizationId en los registros JSON.
ParentProcessName target.process.parent_process.file.full_path Se asignan directamente desde el campo ParentProcessName.
pattern security_result.description Se asignan directamente a security_result.description. Se usa para determinar security_result.action.
peer_ident target.user.userid Se asignan directamente desde el campo peer_ident.
PreAuthType extensions.auth.mechanism Se usa para determinar el mecanismo de autenticación, si está presente. Anula LogonType.
principalIp principal.ip, principal.asset.ip Se asignan directamente desde el campo principalIp.
principalMac principal.mac Se convirtió en minúsculas. Se fusionó en el array principal.mac.
principalPort principal.port Se convirtió en un número entero. Se asignan directamente desde el campo principalPort.
prin_ip2 principal.ip, principal.asset.ip Se asignan directamente desde el campo prin_ip2.
prin_url principal.url Se asignan directamente desde el campo prin_url.
priority security_result.priority Se asigna a un nivel de prioridad según su valor: 1 -> HIGH_PRIORITY, 2 -> MEDIUM_PRIORITY, 3 -> LOW_PRIORITY, otro -> UNKNOWN_PRIORITY.
ProcessID principal.process.pid Se convirtió en una cadena. Se asignan directamente desde el campo ProcessID.
ProcessName principal.process.file.full_path, target.process.file.full_path Si EventID es 4689, se asigna a target.process.file.full_path. De lo contrario, se asigna a principal.process.file.full_path.
prod_log_id metadata.product_log_id Se asignan directamente desde el campo prod_log_id.
protocol network.ip_protocol Se convirtió en mayúsculas. Si es un número, se convierte en el nombre del protocolo IP correspondiente. Si es "ICMP6", se reemplaza por "ICMP". Se asignan directamente desde el campo protocol.
ProviderGuid metadata.product_deployment_id Se asignan directamente desde el campo ProviderGuid.
query network.dns.questions.name Se asignan directamente desde el campo query.
query_type network.dns.questions.type Se cambió el nombre a question.type y se fusionó en el array network.dns.questions. Se asigna a un valor numérico según el tipo de consulta de DHCP.
radio additional.fields Se agregó como un par clave-valor al array additional.fields con la clave "radio".
reason additional.fields Se agregó como un par clave-valor al array additional.fields con la clave "reason".
rec_bytes network.received_bytes Se convierte en un número entero sin firma. Se asignan directamente desde el campo rec_bytes.
RecordNumber metadata.product_log_id Se convirtió en una cadena. Se asignan directamente desde el campo RecordNumber.
RelativeTargetName target.process.file.full_path Se asignan directamente desde el campo RelativeTargetName.
response_ip principal.ip, principal.asset.ip Se asignan directamente desde el campo response_ip.
rssi intermediary.asset.product_object_id Se asignan directamente desde el campo rssi.
sc_action security_result.action_details Se asignan directamente desde el campo sc_action.
sec_action security_result.action Se fusionó en el array security_result.action.
server_ip client_ip Se asignan directamente al campo client_ip.
Severity security_result.severity Se asigna a un nivel de gravedad según su valor: "Info" -> INFORMATIONAL, "Error" -> ERROR, "Warning" -> MEDIUM, other -> UNKNOWN_SEVERITY.
sha256 target.file.sha256 Se asignan directamente desde el campo sha256.
signature additional.fields Se agrega como un par clave-valor al array additional.fields con la clave "signature".
SourceAddress principal.ip, principal.asset.ip Se asignan directamente desde el campo SourceAddress.
SourceHandleId src.resource.id Se asignan directamente desde el campo SourceHandleId.
SourceModuleName observer.labels Se agregó como un par clave-valor al array observer.labels con la clave "SourceModuleName".
SourceModuleType observer.application Se asignan directamente desde el campo SourceModuleType.
SourcePort principal.port Se convirtió en un número entero. Se asignan directamente desde el campo SourcePort.
SourceProcessId src.process.pid Se asignan directamente desde el campo SourceProcessId.
source_client_ip client_ip Se asignan directamente al campo client_ip.
sport principal.port Se convirtió en un número entero. Se asignan directamente desde el campo sport.
src principal.ip, principal.asset.ip Se asignan directamente desde el campo src.
ssid network.session_id Se asigna directamente desde el campo ssid en los registros JSON.
ssidName additional.fields Se agregó como un par clave-valor al array additional.fields con la clave "ssidName".
state additional.fields Se agregó como un par clave-valor al array additional.fields con la clave "state".
Status additional.fields Se agregó como un par clave-valor al array additional.fields con la clave "Estado".
status_code network.http.response_code Se convirtió en un número entero. Se asignan directamente desde el campo status_code.
SubjectDomainName principal.administrative_domain Se asignan directamente desde el campo SubjectDomainName.
SubjectLogonId principal.resource.attribute.labels Se agregó como un par clave-valor al array principal.resource.attribute.labels con la clave "SubjectLogonId".
SubjectUserName principal.user.userid Se asignan directamente desde el campo SubjectUserName.
SubjectUserSid principal.user.windows_sid Se asignan directamente desde el campo SubjectUserSid.
targetHost target.hostname, target.asset.hostname Se convierte en una dirección IP si es posible. De lo contrario, se analiza para extraer el nombre de host y se asigna a target.hostname y target.asset.hostname.
TargetHandleId target.resource.id Se asignan directamente desde el campo TargetHandleId.
TargetLogonId principal.resource.attribute.labels Se agrega como un par clave-valor al array principal.resource.attribute.labels con la clave "TargetLogonId" si es diferente de SubjectLogonId.
TargetProcessId target.process.pid Se asignan directamente desde el campo TargetProcessId.
TargetUserName target.user.userid Se asignan directamente desde el campo TargetUserName.
TargetUserSid target.user.windows_sid Se asignan directamente desde el campo TargetUserSid.
Task additional.fields Se convirtió en una cadena. Se agregó como un par clave-valor al array additional.fields con la clave "Task".
timestamp metadata.event_timestamp El campo de segundos se usa para crear una marca de tiempo.
ts metadata.event_timestamp Si ts está vacío, se crea combinando tsDate, tsTime y tsTZ. Si contiene "", se analiza para extraer el valor entero. Luego, se analiza como una marca de tiempo con varios formatos.
type security_result.summary, metadata.product_event_type Se asigna directamente desde el campo type en los registros JSON. También se usa como eventSummary y metadata.product_event_type en algunos casos.
url target.url, principal.url Se asignan directamente desde el campo url.
url1 target.url Se asignan directamente desde el campo url1.
user target.user.group_identifiers Se fusionó en el array target.user.group_identifiers.
user_id target.user.userid Se asignan directamente desde el campo user_id.
UserID principal.user.windows_sid Se asignan directamente desde el campo UserID.
UserName principal.user.userid Se asignan directamente desde el campo UserName.
user_agent network.http.user_agent Se asignan directamente desde el campo user_agent.
userId target.user.userid Se asignan directamente desde el campo userId.
vap additional.fields Se agregó como un par clave-valor al array additional.fields con la clave "vap".
VirtualAccount security_result.about.labels Se agregó como un par clave-valor al array security_result.about.labels con la clave "VirtualAccount".
wiredLastSeen security_result.detection_fields Se convirtió en una cadena. Se agregó como un par clave-valor al array security_result.detection_fields con la clave "wiredLastSeen".
wiredMacs intermediary.mac Se convirtió en minúsculas. Se fusionó en el array intermediary.mac.
WorkstationName principal.hostname, principal.asset.hostname Se asignan directamente desde el campo WorkstationName.

Cambios

2024-03-19

  • Se agregó un patrón Grok para asignar la dirección IP del dispositivo de envío a "intermediary.ip".

2024-02-06

  • Se analizaron los registros en los que "eventSummary" es "cli_set_rad_parms" o "cli_set_rad_pmksa_parms".
  • Se asignaron "group" y "attr" a "additional.fields".

2023-12-26

  • Se analizaron los registros que contienen "eventSummary" como "status changed" y "changed STP role".

2023-10-09

  • Establece "sec_res.action" en "BLOCK" cuando "pattern" esté en "1 all", "deny all" o "Group Policy Deny".
  • Establece "sec_res.action" en "ALLOW" cuando "pattern" esté en "0 all", "allow all" o "Group Policy Allow".

2023-07-19

  • Bug-Fix:
  • Se analizaron registros de syslog sin analizar de tipo “firewall”.

2023-07-14

  • Mejora:
  • para el tipo "splash_auth", se asignó "event_type" a "USER_LOGIN".
  • para el tipo "device_packet_flood", "packet_flood" asignó "event_type" a "GENERIC_EVENT".
  • para el tipo "vpn_connectivity_change", "wpa_deauth", "wpa_auth" asignó "event_type" a "STATUS_UPDATE".
  • Se asignó "agent" a "network.http.parsed_user_agent".
  • Si "protocol" == "47", se asignó "network.ip_protocol" a "GRE".
  • Si "protocol" == "103", se asignó "network.ip_protocol" a "PIM".

2023-07-04

  • Mejora:
  • Se usaron filtros de par clave-valor, en lugar de un patrón de Grok, para analizar los registros de tipo "urls", "firewall" y "vpn_firewall".

16-06-2023

  • Mejora:
  • Se asignó "src" a "principal.ip".
  • Se asignó "dst" a "target.ip".
  • Se asignó "protocol" a "network.ip_protocol".
  • Se asignó "sport" a "principal.port".
  • Se asignó "dport" a "target.port"
  • Se asignó "mac" a "principal.mac".
  • Se asignó "pattern" a "security_result.description".

2023-06-09

  • Mejora:
  • Se asignó "metadata.event_type" a "USER_LOGOUT" cuando "type" = "8021x_deauth".
  • Se asignaron "radio", "vap", "reason", "is_8021x", "instigator" y "band" a "additional.fields" para "type" = "disassociation".

2023-05-26

  • Mejora:
  • Para el tipo "security_filtering_file_scanned", se modificó "metadata.event_type" de "STATUS_UPDATE" a "SCAN_FILE".
  • Se agregó el patrón Grok para analizar los registros de syslog.
  • Se asignó "ip" a "principal.ip"
  • Se asignó "mac" a "principal.mac".

2023-03-03

  • Mejora:
  • Se agregó el patrón Grok para analizar los registros que tienen el campo "ip_flow_end".
  • Se asignó "natsrcIp" a "principal.nat_ip".
  • Se asignó "natsrcport" a "principal.nat_port".

2022-11-25

  • Mejora:
  • Se agregó compatibilidad con los registros JSON sin analizar, los registros de consultas de network_dns y los registros syslog+kv_data con errores.
  • Se asignó "metadata.eventType" a 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 según "EventID" para registros JSON.
  • Se asignan "DisabledPrivilegeList" y "EnabledPrivilegeList" a "target.user.attribute.permissions".
  • Se asignó "GroupMembership" a "target.user.group_identifiers".
  • Se asignó "AccessList" a "target.resource.attribute".
  • Se asignó “auth_mechanism” a “extensions.auth.mechanism”.
  • Se asignó "question" a "network.dns.questions".
  • Establece "security_result.priority" según el valor de "priority".
  • Se asignó "RecordNumber" a "metadata.product_log_id".

2022-10-06

  • Mejora:
  • Se asignó "dvc" a "intermediary.hostname".
  • Se asignó "eventType" a "metadata.product_event_type".
  • Se asignó "pattren" a "security_result.action_details".
  • Se asignó "principalMac" a "principal.mac".
  • Se asignó "principalIp" a "principal.ip".
  • Se agregó la verificación de nulo para "dstIp" antes de la asignación a udm.

2022-07-04

  • Mejora:
  • Cuando “protocol” sea igual a “47”, establece “protocol” en “GRE”.
  • Cuando “protocol” sea igual a “50”, establece “protocol” en “ESP”.
  • Se agregó el bloque kv cuando "eventType" es igual a "events".
  • Se asignó "identity" a "target.user.userid".
  • Se asignó "last_known_client_ip" a "principal.ip".
  • Cuando "eventSummary" es igual a "association".
  • Se asignó "client_ip" a "principal.ip".
  • Se asignó "client_mac" a "principal.mac".
  • Se asignó "rssi" a "intermediary.asset.product_object_id".
  • Se asignó "channel" a "security_result.detection_fields".
  • Se asignó "aid" a "network.session_id".

2022-06-15

  • Mejora:
  • Se asignaron "lastSeen", "firstSeen" y "wiredLastSeen" a "security_result.detection_fields".
  • Se asignó "wiredMacs" a "intermediary.mac".
  • Se asignó "type" a "security_result.summary".
  • Se asignó "description" a "security_result.description".
  • Se asignó "deviceSerial" a "_target_hardware.serial_number".
  • Se asignó "deviceName" a "target.hostname".
  • Se asignaron "ssidName", "clientId" y "clientDescription" a "additional.fields".
  • Se asignó "eventData.client_mac" a "principal.mac".
  • Se asignó "eventData.identity" a "principal.hostname".
  • Se asignó "eventData.aid" a "principal.asset_id".
  • Se asignó “organizationId” a “principal.resource.id”.
  • Se asignó "eventData.group" a "principal.group.group_display_name".
  • Se asignó "eventData.client_ip" a "principal.ip".
  • Se asignó "occurredAt" a "metadata.event_timestamp".

2022-05-04

  • Mejora: Se agregó la asignación para el nombre de host.

13-4-2022

  • Mejora: Se agregó el análisis de registros de tipo JSON.