Recopila registros de Fluentd

Compatible con:

En este documento, se describe cómo puedes recopilar registros de Fluentd configurando Fluentd y un retransmisor de Google Security Operations. En este documento, también se enumeran los tipos de registros y la versión de Fluentd compatibles.

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

Descripción general

En el siguiente diagrama de arquitectura de implementación, se muestra cómo se instala Fluentd en el servidor de reenvío y en el servidor de agregación para enviar registros a Google Security Operations. Cada implementación del cliente puede diferir de esta representación y ser más compleja.

Arquitectura de implementación

En el diagrama de arquitectura, se muestran los siguientes componentes:

  • Sistema Linux Es el sistema Linux que se supervisará. El sistema Linux consta de los archivos que se supervisarán y el servidor de reenvío de Fluentd.

  • Sistema Microsoft Windows. Es el sistema Microsoft Windows que se supervisará y en el que está instalado el servidor de reenvío de Fluentd.

  • Reenviador de Fluentd. El retransmisor de Fluentd recopila información del sistema Microsoft Windows o Linux y la reenvía al agregador de Fluentd.

  • Agregador de Fluentd. El agregador de Fluentd recibe registros del retransmisor de Fluentd y los reenvía al retransmisor de Google Security Operations.

  • Agente de Bindplane. El agente de BindPlane recupera registros de Zscaler ZPA y los envía a Google SecOps.

  • Es el reenviador de Google Security Operations. El retransmisor de Google Security Operations es un componente de software ligero que se implementa en la red del cliente y admite syslog. El retransmisor de Google Security Operations reenvía los registros a Google Security Operations.

  • Google Security Operations. Google Security Operations retiene y analiza los registros del agregador de Fluentd.

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

Antes de comenzar

  • Asegúrate de que el retransmisor de Fluentd esté instalado en los sistemas Microsoft Windows o Linux que planeas supervisar. Para obtener más información sobre la instalación del retransmisor de Fluentd, consulta Instalación de Fluentd.

  • Usa una versión de Fluentd que admita el analizador de Google Security Operations. El analizador de Google Security Operations admite la versión 1.0 de Fluentd.

  • Asegúrate de que el agregador de Fluentd esté instalado y configurado en el servidor central de Linux.

  • Asegúrate de que todos los sistemas de la arquitectura de implementación estén configurados en la zona horaria UTC.

  • Verifica los tipos de registros que admite el analizador de Google Security Operations. En la siguiente tabla, se enumeran los productos y las rutas de acceso a los archivos de registro que admite el analizador de Google Security Operations:

    Sistema operativo Producto Ruta de acceso al archivo de registro
    Microsoft Windows Microsoft Windows Registros de eventos
    Linux Linux /var/log/audit/audit.log
    Linux Linux /var/log/syslog
    Linux apache2 /var/log/apache2/access.log
    Linux apache2 /var/log/apache2/error.log
    Linux apache2 /var/log/apache2/other_vhosts_access.log
    Linux apache2 /var/log/apache2/novnc-server-access.log
    Linux OpenVpn /var/log/openvpnas.log
    Linux Nginx /var/log/nginx/access.log
    Linux Nginx /var/log/nginx/error.log
    Linux rkhunter /var/log/rkhunter.log
    Linux Linux /var/log/auth.log
    Linux Linux /var/log/kern.log
    Linux rundeck /var/log/rundeck/service.log
    Linux Samba /var/log/samba/log.winbindd
    Linux Linux /var/log/mail.log

Configura el agregador y el reenviador de Fluentd, y el reenviador de Google Security Operations

  1. Para supervisar los registros que generan los sistemas Linux, crea un archivo td-agent.conf para especificar la configuración de supervisión de registros del reenvío de Fluentd. A continuación, se muestra un ejemplo de un archivo de configuración para el reenvío de Fluentd en el sistema Linux:

    <source>
    @type tail
    path /var/log/nginx/access.log
    pos_file /var/log/td-agent/nginx-access.log.pos
    tag mytag.nginx.access
    <parse>
    @type none
    </parse>
    </source>
    
    <source>
    @type tail
    path /var/log/nginx/error.log
    pos_file /var/log/td-agent/nginx-error.log.pos
    tag mytag.nginx.error
    <parse>
    @type none
    </parse>
    </source>
    
    <source>
    @type tail
    path /var/log/apache2/access.log
    pos_file /var/log/td-agent/apache-access.log.pos
    tag mytag.apache.access
    <parse>
    @type none
    </parse>
    </source>
    
    <source>
    @type tail
    path /var/log/apache2/error.log
    pos_file /var/log/td-agent/apache-error.log.pos
    tag mytag.apache.error
    <parse>
    @type none
    </parse>
    </source>
    
    <source>
    @type tail
    path /var/log/audit/audit.log
    pos_file /var/log/td-agent/audit.log.pos
    tag mytag.audit
    <parse>
    @type none
    </parse>
    </source>
    
    <source>
    @type tail
    path /var/log/syslog/syslog.log
    pos_file /var/log/td-agent/syslog.log.pos
    tag mytag.syslog
    <parse>
    @type none
    </parse>
    </source>
    
    <source>
    @type tail
    path  /var/log/apache2/other_vhosts_access.log
    pos_file /var/log/td-agent/vhost.log.pos
    tag mytag.apache.other_vhosts_access
    <parse>
    @type none
    </parse>
    </source>
    
    <source>
    @type tail
    path  /var/log/apache2/novnc-server-access.log
    pos_file /var/log/td-agent/novnc.log.pos
    tag mytag.apache.novnc-server-access
    <parse>
    @type none
    </parse>
    </source>
    
    <source>
    @type tail
    path /var/log/openvpnas.log
    pos_file /var/log/td-agent/openvpnas.log.pos
    tag mytag.openvpnas
    <parse>
    @type none
    </parse>
    </source>
    
    <source>
    @type tail
    path /var/log/auth.log
    pos_file /var/log/td-agent/auth.log.pos
    tag mytag.auth
    <parse>
    @type none
    </parse>
    </source>
    
    <source>
    @type tail
    path /var/log/kern.log
    pos_file /var/log/td-agent/kern.log.pos
    tag mytag.kern
    <parse>
    @type none
    </parse>
    </source>
    
    <source>
    @type tail
    path /var/log/rundeck/service.log
    pos_file /var/log/td-agent/rundeck.log.pos
    tag mytag.rundeck
    <parse>
    @type none
    </parse>
    </source>
    
    <source>
    @type tail
    path /var/log/mail.log
    pos_file /var/log/td-agent/mail.log.pos
    tag mytag.mail
    <parse>
    @type none
    </parse>
    </source>
    
    <source>
    @type tail
    path /var/log/rkhunter.log
    pos_file /var/log/td-agent/rkhunter.log.pos
    tag mytag.rkhunter
    <parse>
    @type none
    </parse>
    </source>
    
    <source>
    @type tail
    Path /var/log/samba/log.winbindd
    pos_file /var/log/td-agent/winbindd.log.pos
    tag mytag.winbindd
    <parse>
    @type none
    </parse>
    </source>
    
    <filter  mytag.**>
    @type record_transformer
    <record>
    forwarder_hostname "#{Socket.gethostname}"
    </record>
    </filter>
    
    <filter  mytag.nginx.access.**>
    @type record_transformer
    <record>
    path "/var/log/nginx/access.log"
    </record>
    </filter>
    
    <filter  mytag.nginx.error.**>
    @type record_transformer
    <record>
    path "/var/log/nginx/error.log"
    </record>
    </filter>
    
    <filter  mytag.apache.access.**>
    @type record_transformer
    <record>
    path "/var/log/apache2/access.log"
    </record>
    </filter>
    
    <filter  mytag.apache.error.**>
    @type record_transformer
    <record>
    path "/var/log/apache2/error.log"
    </record>
    </filter>
    
    <filter  mytag.audit.**>
    @type record_transformer
    <record>
    path "/var/log/audit/audit.log"
    </record>
    </filter>
    
    <filter  mytag.syslog.**>
    @type record_transformer
    <record>
    path "/var/log/syslog/syslog.log"
    </record>
    </filter>
    
    <filter  mytag.apache.other_vhosts_access.**>
    @type record_transformer
    <record>
    path "/var/log/apache2/other_vhosts_access.log"
    </record>
    </filter>
    
    <filter  mytag.apache.novnc-server-access.**>
    @type record_transformer
    <record>
    path "/var/log/apache2/novnc-server-access.log"
    </record>
    </filter>
    
    <filter mytag.openvpnas.**>
    @type record_transformer
    <record>
    path "/var/log/openvpnas.log"
    </record>
    </filter>
    
    <filter mytag.auth.**>
    @type record_transformer
    <record>
    path "/var/log/auth.log"
    </record>
    </filter>
    
    <filter mytag.kern.**>
    @type record_transformer
    <record>
    path "/var/log/kern.log"
    </record>
    </filter>
    
    <filter mytag.rundeck.**>
    @type record_transformer
    <record>
    path "/var/log/rundeck/service.log"
    </record>
    </filter>
    
    <filter mytag.mail.**>
    @type record_transformer
    <record>
    path "/var/log/mail.log"
    </record>
    </filter>
    
    <filter mytag.rkhunter.**>
    @type record_transformer
    <record>
    path "/var/log/rkhunter.log"
    </record>
    </filter>
    
    <filter mytag.winbindd.**>
    @type record_transformer
    <record>
    path "/var/log/samba/log.winbindd"
    </record>
    </filter>
    
    <match mytag.**>
    @type forward
    # primary host
    <server>
    host <AGGREGATOR_HOSTNAME>
    port <AGGREGATOR_PORT>
    </server>
    </match>
    
  2. Para supervisar los registros que generan los sistemas de Microsoft Windows, crea un archivo td-agent.conf para especificar la configuración de supervisión de registros del retransmisor de Fluentd. A continuación, se muestra un ejemplo de un archivo de configuración para el reenvío de Fluentd en el sistema Microsoft Windows:

    <source>
    @type windows_eventlog
    @id windows_eventlog
    channels application,security,system
    read_existing_events true
    read_interval 2
    tag windows.raw
    render_as_xml true
    <storage>
    @type local
    persistent true
    path E:\windows.pos
    </storage>
    </source>
    <match windowslog>
    @type forward
    <server>
    host <AGGREGATOR_HOSTNAME>
    port <AGGREGATOR_PORT>
    username <AGGREGATOR_USERNAME>
    password <AGGREGATOR_PASSWORD>
    </server>
    </match>
    
    
  3. Para reenviar los registros del agregador de Fluentd al reenviador de Google Security Operations, crea un archivo de configuración con el siguiente formato:

    <source>
    @type forward
    port <AGGREGATOR_PORT>
    </source>
    
    ## Forwarding
    <match mytag.**>
    @id output_system_forward
    @type forward
    # IP and port of the forwarder
    <server>
     host <CHRONICLE_FORWARDER_HOSTNAME>
     port <CHRONICLE_FORWARDER_PORT>
    </server>
    </match>
    
  4. Configura el reenvío de Google Security Operations para enviar registros a Google Security Operations. Para obtener más información, consulta Cómo instalar y configurar el reenvío en Linux. A continuación, se muestra un ejemplo de configuración de reenvío de Google Security Operations:

    common:
      enabled: true
      data_type: FLUENTD
      batch_n_seconds: 10
      batch_n_bytes: 1048576
    tcp_address: 0.0.0.0:10514
    connection_timeout_sec: 60
    

Reenvía registros a Google SecOps con el agente de BindPlane

  1. Instala y configura una máquina virtual de Linux.
  2. Instala y configura el agente de BindPlane en Linux para reenviar registros a Google SecOps. Para obtener más información sobre cómo instalar y configurar el agente de BindPlane, consulta las instrucciones de instalación y configuración del agente de BindPlane.

Si tienes problemas para crear feeds, comunícate con el equipo de asistencia de Google SecOps.

Formatos de registro de Fluentd compatibles

El analizador de Fluentd admite registros en formato SYSLOG+JSON.

Registros de muestra de Fluentd compatibles

  • SYSLOG + JSON

    "2022-06-30T17:10:10+05:30 mytag.apache.error {\"message\":\"[Sat Jun 02 00:30:55 2022] New connection: [connection: gTxkX8Z6tjk] [client 172.17.0.1:50786]\",\"forwarder_hostname\":\"Ubuntu18\",\"path\":\"/var/log/apache2/error.log\"}"
    

Referencia de la asignación de campos

En esta sección, se explica cómo el analizador aplica patrones de Grok para los sistemas Linux y Microsoft Windows, y cómo asigna los campos de registro de Fluentd a los campos del modelo de datos unificado (UDM) de Google Security Operations para cada tipo de registro.

Para obtener información sobre la asignación de referencia de campos comunes, consulta Campos comunes.

Para obtener información de referencia sobre las rutas de acceso a los registros, los patrones de Grok para los registros de ejemplo, los tipos de eventos y los campos del UDM en los sistemas Linux, consulta las siguientes secciones:

Para obtener información sobre los eventos de Microsoft Windows admitidos y los campos de UDM correspondientes, consulta Datos de eventos de Microsoft Windows.

Campos comunes

En la siguiente tabla, se enumeran los campos de registro comunes y sus campos de UDM correspondientes.

Campo de registro común Campo de UDM
collected_time metadata.collected_timestamp
inner_message.message inner_message
inner_message.forwarder_hostname target.hostname o principal.hostname
inner_message.path event_source

Sistema Linux

En la siguiente tabla, se enumeran las rutas de acceso a los registros del sistema Linux, el patrón de Grok para los registros de ejemplo, el tipo de evento y las asignaciones del UDM:

Ruta de acceso del registro Registro de ejemplo Patrón de Grok Tipo de evento Asignación de UDM
/var/log/apache2/error.log [Thu Apr 28 16:13:01.283342 2022] [core:notice] [pid 18394:tid 140188660751296] [client 1.200.32.47:59840] failed to make connection [{timestamp}][{log_module}:{log_level}][pid{pid}(<optional_field>:tid{tid}|)](<optional_field> [client {client_ip}:{client_port}]|) (?<error_message>.*) NETWORK_UNCATEGORIZED

La marca de tiempo se asigna a metadata.event_timestamp.

log_module se asigna a target.resource.name

log_level se asigna a security_result.severity

pid se asigna a target.process.parent_process.pid

tid se asigna a target.process.pid

client_ip se asigna a principal.ip

client_port se asigna a principal.port

error_message se asigna a security_result.description

network.application_protocol está establecido en "HTTP".

target.platform se establece en "LINUX".

metadata.vendor_name se establece en "Apache".

metadata.product_name se establece en "Apache HTTP Server".

/var/log/apache2/error.log [Thu Apr 28 16:13:01.283342 2022] [core:notice] [pid 18394:tid 140188660751296] failed to make connection [{timestamp}][{log_module}:{severity}][pid{pid}(<optional_field>:tid{tid}|)]{error_message} NETWORK_UNCATEGORIZED

La marca de tiempo se asigna a metadata.event_timestamp.

log_module se asigna a target.resource.name

log_level se asigna a security_result.severity

pid se asigna a target.process.parent_process.pid

tid se asigna a target.process.pid

error_message se asigna a security_result.description

network.application_protocol está establecido en "HTTP".

target.platform se establece en "LINUX".

metadata.vendor_name se establece en "Apache".

metadata.product_name se establece en "Apache HTTP Server".

/var/log/apache2/error.log [Thu Apr 28 16:13:01.283342 2022] [core:notice] [pid 18394:tid 140188660751296] AH00094: Command line: '/usr/sbin/apache2' [{timestamp}][{log_module}:{log_level}][pid{pid}(<optional_field>:tid{tid}|)](<optional_field> [client {client_ip}:{client_port}]|) (?<error_message>.*),referer{referer_url} NETWORK_UNCATEGORIZED

metadata.vendor_name se establece en "Apache".

metadata.product_name se establece en "Apache HTTP Server".

La marca de tiempo se asigna a metadata.event_timestamp.

log_module se asigna a target.resource.name

log_level se asigna a security_result.severity

pid se asigna a target.process.parent_process.pid

tid se asigna a target.process.pid

client_ip se asigna a principal.ip

client_port se asigna a principal.port

error_message se asigna a security_result.description

target.platform se establece en "LINUX".

referer_url se asigna a network.http.referral_url

/var/log/apache2/error.log [Sun Jan 30 15:14:47.260309 2022] [proxy_http:error] [pid 12515:tid 140035781285632] [client 1.200.32.47:59840] AH01114: HTTP: failed to make connection to backend: 192.0.2.1 , referer http:// [{timestamp}] [{log_module}:{log_level}] [pid {pid}(<optional_field>:tid{tid}|)] [client {client_ip}:{client_port}]( <message_text>HTTP: )?{error_message}:( {target_ip})(<optional_field>,referer{referer_url})?" NETWORK_HTTP

La marca de tiempo se asigna a metadata.event_timestamp.

log_module se asigna a target.resource.name

log_level se asigna a security_result.severity

pid se asigna a target.process.parent_process.pid

tid se asigna a target.process.pid

client_ip se asigna a principal.ip

client_port se asigna a principal.port

error_message se asigna a security_result.description

target_ip se asigna a target.ip

referer_url se asigna a network.http.referral_url

network.application_protocol está establecido en "HTTP".

target.platform se establece en "LINUX".

metadata.vendor_name se establece en "Apache".

metadata.product_name se establece en "Apache HTTP Server".

/var/log/apache2/error.log [Sáb, 02 de feb de 2019, 00:30:55] Nueva conexión: [connection: gTxkX8Z6tjk] [client 192.0.2.1:50786] [{timestamp}]<message_text>connection:[connection:{connection_id}][client{client_ip}:{client_port}] NETWORK_UNCATEGORIZED

La marca de tiempo se asigna a metadata.event_timestamp.

client_ip se asigna a principal.ip

client_port se asigna a principal.port

connection_id se asigna a network.session_id

network.application_protocol está establecido en "HTTP".

target.platform se establece en "LINUX".

metadata.vendor_name se establece en "Apache".

metadata.product_name se establece en "Apache HTTP Server".

/var/log/apache2/error.log [Sáb 02 de feb 00:30:55 2019] Nueva solicitud: [connection: j8BjX4Z5tjk] [request: ACtkX1Z5tjk] [pid 8] [client 192.0.2.1:50784] [{timestamp}]<message_text>request:[connection:{connection_id}][request:{request_id}][pid{pid}][client{client_ip}:{client_port}] NETWORK_UNCATEGORIZED

La marca de tiempo se asigna a metadata.event_timestamp.

request_id se asigna a security_result.detection_fields.(key/value).

client_ip se asigna a principal.ip

client_port se asigna a principal.port

pid se asigna a target.process.parent_process.pid

connection_id se asigna a network.session_id

network.application_protocol está establecido en "HTTP".

target.platform se establece en "LINUX".

metadata.vendor_name se establece en "Apache".

metadata.product_name se establece en "Apache HTTP Server".

/var/log/apache2/error.log [Sáb, 02 de feb de 2019, 00:30:55] [info] [C: j8BjX4Z5tjk] [R: p7pjX4Z5tjk] [pid 8] core.c(4739): [client 192.0.2.1:50784] AH00128: File does not exist: /usr/local/apache2/htdocs/favicon.ico [{timestamp}] [{log_level}][C:{connection_id}][R:{request_id}][pid {pid}(<optional_field>:tid{tid}|)]<message_text>[client {client_ip}:{client_port}]{error_message}:{file_path} NETWORK_UNCATEGORIZED

La marca de tiempo se asigna a metadata.event_timestamp.

log_level se asigna a security_result.severity

request_id se asigna a security_result.detection_fields.(key/value).

client_ip se asigna a principal.ip

client_port se asigna a principal.port

pid se asigna a target.process.parent_process.pid

connection_id se asigna a network.session_id

error_message se asigna a security_result.description

file_path se asigna a target.file.full_path

network.application_protocol está establecido en "HTTP".

target.platform se establece en "LINUX".

metadata.vendor_name se establece en "Apache".

metadata.product_name se establece en "Apache HTTP Server".

/var/log/apache2/access.log 192.0.2.1 - - [28/Apr/2022:17:35:52 +0530] "GET / HTTP/1.1" 200 3476 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/192.0.2.1 Safari/537.36" ({client_ip})?<message_text>{userid}[{timestamp}](<optional_field>{method}/(<optional_field>{resource}?) {client_protocol}?){result_status}{object_size}(<optional_field>(<optional_field>{referer_url}?)(<optional_field>{user_agent}?)? NETWORK_HTTP

client_ip se asigna a principal.ip

El valor de userid se asigna a principal.user.userid.

El host se asigna a principal.hostname.

La marca de tiempo se asigna a metadata.event_timestamp.

method se asigna a network.http.method

El recurso se asigna a principal.resource.name.

client_protocol se asigna a network.application_protocol

result_status se asigna a network.http.response_code

object_size se asigna a network.sent_bytes

referer_url se asigna a network.http.referral_url

user_agent se asigna a network.http.user_agent

network.ip_protocol está configurado como "TCP".

network.direction está establecido en "OUTBOUND".

network.application_protocol está establecido en "HTTP".

target.platform se establece en "LINUX".

metadata.vendor_name se establece en "Apache".

metadata.product_name se establece en "Apache HTTP Server".

var/log/apache2/other_vhosts_access.log wintest.example.com:80 ::1 - - [14/Jan/2022:14:08:16 -0700] \"GET /server-status?auto HTTP/1.1\" 200 1415 \"-\" \"Python-urllib/2.7\" {target_host}:{NUMBER:target_port} {client_ip} - (<optional_field>{host}?) [{timestamp}](<optional_field>{method}/(<optional_field>{resource}?){client_protocol}?){result_status}{object_size}(<optional_field>{referer_url}?)(<optional_field>{user_agent}?) NETWORK_HTTP target_host se asigna a target.hostname

target_port se asigna a target.port

client_ip se asigna a principal.ip

El valor de userid se asigna a principal.user.userid.

El host se asigna a principal.hostname.

La marca de tiempo se asigna a metadata.event_timestamp.

method se asigna a network.http.method

El recurso se asigna a principal.resource.name.

result_status se asigna a network.http.response_code

object_size se asigna a network.sent_bytes

referer_url se asigna a network.http.referral_url

user_agent se asigna a network.http.user_agent

network.ip_protocol está configurado como "TCP".

network.direction está establecido en "OUTBOUND".

target.platform se establece en "LINUX".

metadata.vendor_name se establece en "Apache".

metadata.product_name se establece en "Apache HTTP Server".

network.application_protocol está establecido en "HTTP".

var/log/apache2/novnc-server-access.log wintest.example.com:80 ::1 - - [14/Jan/2022:14:08:16 -0700] \"GET /server-status?auto HTTP/1.1\" 200 1415 \"-\" \"http://\" {target_host}:{NUMBER:target_port} {client_ip} - (<optional_field>{host}?) [{timestamp}](<optional_field>{method}/(<optional_field>{resource}?){client_protocol}?){result_status}{object_size}(<optional_field>{referer_url}?)(<optional_field>{user_agent}?) NETWORK_HTTP

client_ip se asigna a principal.ip

El valor de userid se asigna a principal.user.userid.

method se asigna a network.http.method

La ruta de acceso se asigna a target.url.

result_status se asigna a network.http.response_code

object_size se asigna a network.sent_bytes

referer_url se asigna a network.http.referral_url

user_agent se asigna a network.http.user_agent

network.ip_protocol está configurado como "TCP".

network.direction está establecido en "OUTBOUND".

target.platform se establece en "LINUX".

metadata.vendor_name se establece en "Apache".

metadata.product_name se establece en "Apache HTTP Server".

network.application_protocol está establecido en "HTTP".

/var/log/apache2/access.log "http://192.0.2.1/test/first.html" -> /google.com (<optional_field>{referer_url}?)->(<optional_field>{path}?) GENERIC_EVENT

La ruta de acceso se asigna a target.url.

referer_url se asigna a network.http.referral_url

network.direction está establecido en "OUTBOUND".

target.platform se establece en "LINUX".

network.application_protocol está establecido en "HTTP".

target.platform se establece en "LINUX".

metadata.vendor_name se establece en "Apache".

metadata.product_name se establece en "Apache HTTP Server".

/var/log/apache2/access.log Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Code/1.67.0 Chrome/98.0.4758.141 Electron/17.4.1 Safari/537.36 (<optional_field>{user_agent}) GENERIC_EVENT

user_agent se asigna a network.http.user_agent

network.direction está establecido en "OUTBOUND".

target.platform se establece en "LINUX".

network.application_protocol está establecido en "HTTP".

target.platform se establece en "LINUX".

metadata.vendor_name se establece en "Apache".

metadata.product_name se establece en "Apache HTTP Server".

var/log/nginx/access.log 192.0.2.1 - admin [05/May/2022:11:53:27 +0530] "GET /icons/ubuntu-logo.png HTTP/1.1" 404 209 "http://198.51.100.1/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/192.0.2.1 Safari/537.36" {principal_ip} - (<optional_field>{principal_user_userid}?) [{timestamp}] {http_method} /(<optional_field>{resource_name}?|) {protocol}(<message_text>){response_code} {received_bytes}(<optional_field>{referer_url}) ({user_agent}|{user_agent})? NETWORK_HTTP

El tiempo se asigna a metadata.timestamp.

ip se asigna a target.ip

principal_ip se asigna a principal.ip

principal_user_userid se asigna a principal.user.userid

metadata_timestamp se asigna a timestamp

http_method se asigna a network.http.method

resource_name se asigna a principal.resource.name

El protocolo se asigna a network.application_protocol = (HTTP).

response_code se asigna a network.http.response_code

received_bytes se asigna a network.sent_bytes

referer_url se asigna a network.http.referral_url

user_agent se asigna a network.http.user_agent

target.platform se establece en "LINUX".

metadata.vendor_name se establece en "NGINX".

metadata.product_name se establece en "NGINX"

network.ip_protocol está configurado como "TCP".

network.direction está establecido en "OUTBOUND".

var/log/nginx/error.log 2022/01/29 13:51:48 [error] 593#593: *62432 open() \"/usr/share/nginx/html/nginx_status\" failed (2: No such file or directory), client: 192.0.2.1, server: localhost, request: \"GET /nginx_status HTTP/1.1\", host: \"192.0.2.1:8080\" "{year}\/{month}\/{day}{time}[{severity}]{pid}#{thread_id}:{inner_message2}"

inner_message2 se asigna a "{security_result_description_2},client:{principal_ip},server:(<optional_field>{target_hostname}?),request:"{http_method} /(<optional_field>{resource_name}?) {protocol}/1.1",host:"({target_ip}:{target_port})?"

"bind() to ({target_ip}|[{target_ip}]):{target_port} failed ({security_description})",

"\*{cid}{security_description}",

"{security_description}"

NETWORK_HTTP

thread_id se asigna a principal.process.pid

La gravedad se asigna a security_result.severity.

(debug se asigna a UNKNOWN_SEVERITY, info se asigna a INFORMATIONAL, notice se asigna a LOW, warn se asigna a MEDIUM, error se asigna a ERROR, crit se asigna a CRITICAL y alert se asigna a HIGH).

target_file_full_path se asigna a target.file.full_path.

principal_ip se asigna a principal.ip

target_hostname se asigna a target.hostname

http_method se asigna a network.http.method

resource_name se asigna a principal.resource.name

El protocolo se asigna a "TCP".

target_ip se asigna a target.ip

target_port se asigna a target.port

security_description + security_result_description_2 se asigna a security_result.description

pid se asigna a principal.process.parent_process.pid

network.application_protocol está establecido en "HTTP".

La marca de tiempo se asigna a {year}/{day}/{month} {time}.

target.platform se establece en "LINUX".

metadata.vendor_name se establece en "NGINX".

metadata.product_name se establece en "NGINX"

network.ip_protocol está configurado como "TCP".

network.direction está establecido en "OUTBOUND".

var/log/rkhunter.log [14:10:40] No se pudo verificar la disponibilidad de los comandos requeridos [<message_text>]{security_description} ACTUALIZACIÓN DE ESTADO

El tiempo se asigna a metadata.timestamp.

security_description se asigna a security_result.description

principal.platform se establece en "LINUX"

metadata.vendor_name se establece en "RootKit Hunter"

metadata.product_name se establece en "RootKit Hunter".

var/log/rkhunter.log [14:09:52] Checking for file '/dev/.oz/.nap/rkit/terror' [ Not found ] [<message_text>] {security_description} {file_path}[\{metadata_description}] FILE_UNCATEGORIZED metadata_description se asigna a metadata.description

file_path se asigna a target.file.full_path

security_description se asigna a security_result.description

principal.platform se establece en "LINUX"

metadata.vendor_name se establece en "RootKit Hunter"

metadata.product_name se establece en "RootKit Hunter".

var/log/rkhunter.log fluentd: Se redujo el tamaño del archivo (se conservó el inode): "/var/log/rkhunter.log". (<optional_field><message_text>:){metadata_description}:'{file_path}' FILE_UNCATEGORIZED

El tiempo se asigna a metadata.timestamp.

metadata_description se asigna a metadata.description

file_path se asigna a target.file.full_path

principal.platform se establece en "LINUX"

metadata.vendor_name se establece en "RootKit Hunter"

metadata.product_name se establece en "RootKit Hunter".

/var/log/kern.log Apr 28 12:41:35 localhost kernel: [ 5079.912215] ctnetlink v0.93: registering with nfnetlink. {timestamp}{principal_hostname}{metadata_product_event_type}:[<message_text>]{metadata_description} ACTUALIZACIÓN DE ESTADO

La marca de tiempo se asigna a "metadata.event_timestamp".

principal_hostname se asigna a "principal.hostname"

metadata_product_event_type se asigna a "metadata.product_event_type".

metadata_description se asigna a "metadata.description"

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

principal.platform se establece en "LINUX"

/var/log/kern.log 6 de jul., 11:17:01 Ubuntu18 kernel: [ 0.030139] smpboot: CPU0: Intel(R) Xeon(R) Gold 5220R CPU @ 2.20GHz (family: 0x6, model: 0x55, stepping: 0x7) {timestamp}{principal_hostname}{metadata_product_event_type}:([<message_text>])<message_text>:\CPU0:{principal_asset_hardware_cpu_model}({metadata_description}) STATUS_UPDATE

La marca de tiempo se asigna a "metadata.event_timestamp".

principal_hostname se asigna a "principal.hostname"

metadata_product_event_type se asigna a "metadata.product_event_type".

principal_asset_hardware_cpu_model se asigna a "principal.asset.hardware.cpu_model".

metadata_description se asigna a "metadata.description"

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

principal.platform se establece en "LINUX"

cpu_model se asigna a principal.asset.hardware.cpu_model.

/var/log/syslog.log May 24 10:30:42 Ubuntu18 systemd[1]: Started Session 112 of user kajal. {collected_timestamp}{hostname}{command_line}(<optional_field>[{pid}]):{message} STATUS_UPDATE

collected_time se asigna a metadata.event_timestamp

El nombre de host se asigna a principal.hostname.

pid se asigna a principal.process.pid

El mensaje se asigna a metadata.description.

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

principal.platform se establece en "LINUX"

command_line se asigna a principal.process.command_line

/var/log/syslog.log Jul 06 10:14:37 Ubuntu18 rsyslogd: rsyslogd's userid changed to 102 {collected_timestamp}{hostname}{command_line}:{message}to{user_id} STATUS_UPDATE

collected_time se asigna a metadata.collected_timestamp

El nombre de host se asigna a principal.hostname.

El mensaje se asigna a metadata.description.

user_id se asigna a principal.user.userid

command_line se asigna a principal.process.command_line

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

principal.platform se establece en "LINUX"

/var/log/syslog.log Jul 06 10:36:48 Ubuntu18 systemd[1]: Starting System Logging Service… {collected_timestamp}{hostname}{command_line}(<optional_field>|[{pid}]):{message} STATUS_UPDATE

collected_time se asigna a metadata.event_timestamp

El nombre de host se asigna a principal.hostname.

pid se asigna a principal.process.pid

El mensaje se asigna a metadata.description.

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

principal.platform se establece en "LINUX"

command_line se asigna a principal.process.command_line

var/log/openvpnas.log 2022-04-29T10:51:22+0530 [stdout#info] [OVPN 4] OUT: '2022-04-29 05:21:22 mohit_AUTOLOGIN/198.51.100.1:16245 MULTI: Learn: 198.51.100.1 -> mohit_AUTOLOGIN/203.0.113.1:16245' {timestamp}[stdout#{log_level}][OVPN <message_text>]OUT:(<optional_field>'|")<message_text>-<message_text>{user}\/{ip}:{port}MULTI:Learn:{local_ip}->{target_hostname}?{target_ip}:{port}(<optional_field>'|") NETWORK_HTTP

La marca de tiempo se asigna a metadata.timestamp.

log_level se asigna a security_result.severity

local_ip se asigna a principal.ip

target_ip se asigna a target.ip

target_hostname se asigna a principal.hostname

El puerto se asigna a target.port.

El usuario se asigna a principal.user.user_display_name.

metadata.vendor_name se establece en "OpenVPN"

metadata.product_name se establece en "OpenVPN Access Server".

principal.platform se establece en "LINUX"

var/log/openvpnas.log 2022-04-28T16:14:13+0530 [stdout#info] [OVPN 6] OUT: '2022-04-28 16:14:13 library versions: OpenSSL 1.1.1 11 Sep 2018, LZO 2.08' {timestamp}[stdout#{log_level}][OVPN <message_text>]OUT:(<optional_field>'|")<message_text>{msg}(<optional_field>'|") ACTUALIZACIÓN DE ESTADO

La marca de tiempo se asigna a metadata.timestamp.

log_level se asigna a security_result.severity

El mensaje se asigna a security_result.description

metadata.vendor_name se establece en "OpenVPN"

metadata.product_name se establece en "OpenVPN Access Server".

principal.platform se establece en "LINUX"

var/log/openvpnas.log 2022-04-28T16:14:13+0530 [stdout#info] [OVPN 6] OUT: '2022-04-28 16:14:13 net_addr_v4_add: 198.51.100.1/23 dev as0t6'

{timestamp}[stdout#{log_level}][OVPN <message_text>]OUT:<optional_field>'|"<message_text>-<message_text>-<message_text><message_text>{message}<optional_field>'|"

El mensaje se asigna a (net_addr_v4_add|net_route_v4_best_gw):{target_ip}/{target_port}

ACTUALIZACIÓN DE ESTADO

principal.platform se establece en "LINUX"

target_ip se asigna a target.ip

target_port se asigna a target.port

La gravedad se asigna a security_result.severity.

La marca de tiempo se asigna a metadata.timestamp.

metadata.vendor_name está establecido en OpenVPN

metadata.product_name se establece en OpenVPN Access Server

var/log/openvpnas.log 2022-04-29T10:51:22+0530 [stdout#info] [OVPN 4] OUT: '2022-04-29 05:21:22 198.51.100.1:16245 [mohit_AUTOLOGIN] Peer Connection Initiated with [AF_INET]192.0.2.1:16245 (via [AF_INET]198.51.100.1%ens160)'

{timestamp}[stdout#{log_level}][OVPN <message_text>]OUT:(<optional_field>'|")<message_text>{message}(<optional_field>'|")

El mensaje se asigna a <message_text>con[<message_text>]<message_text>:{port}<message_text>.

ACTUALIZACIÓN DE ESTADO

La marca de tiempo se asigna a metadata.timestamp.

log_level se asigna a security_result.severity

metadata.vendor_name está establecido en OpenVPN

metadata.product_name se establece en OpenVPN Access Server

principal.platform está configurado como Linux

target_ip se asigna a target.ip

target_port se asigna a target.port

target_hostname se asigna a target.hostname

intermediary_ip se asigna a intermediary.ip

var/log/openvpnas.log 2022-04-29T10:51:22+0530 [stdout#info] [OVPN 4] OUT: \"2022-04-29 05:21:22 mohit_AUTOLOGIN/198.51.100.1:16245 SENT CONTROL [mohit_AUTOLOGIN]: 'PUSH_REPLY,explicit-exit-notify,topology subnet,route-delay 5 30,dhcp-pre-release,dhcp-renew,dhcp-release,route-metric 101,ping 12,ping-restart 50,redirect-gateway def1,redirect-gateway bypass-dhcp,redirect-gateway autolocal,route-gateway 198.51.100.1,dhcp-option DNS 192.0.2.1,dhcp-option DNS 192.0.2.1,register-dns,block-ipv6,ifconfig 198.51.100.1 203.0.113.1,peer-id 0,auth-tokenSESS_ID,cipher AES-256-GCM,key-derivation tls-ekm' (status=1)\" {timestamp}[stdout#{log_level}][OVPN <message_text>]OUT:(<optional_field>'|")<message_text>{user}\/{ip}:{message}(<optional_field>'|") ACTUALIZACIÓN DE ESTADO

La marca de tiempo se asigna a metadata.timestamp.

log_level se asigna a security_result.severity

El mensaje se asigna a metadata.description.

El usuario se asigna a target.hostname.

ip se asigna a target.ip

El puerto se asigna a target.port

metadata.vendor_name está establecido en OpenVPN

metadata.product_name se establece en OpenVPN Access Server

principal.platform está configurado como Linux

var/log/openvpnas.log 2022-04-29T10:51:22+0530 [stdout#info] AUTH SUCCESS {'status': 0, 'user': 'mohit', 'reason': 'AuthAutoLogin: autologin certificate auth succeeded', 'proplist': {'prop_autogenerate': 'true', 'prop_autologin': 'true', 'pvt_password_digest': '[redacted]', 'type': 'user_connect'}, 'common_name': 'mohit_AUTOLOGIN', 'serial': '3', 'serial_list': []} cli='win'/'3.git::d3f8b18b'/'OCWindows_3.3.6-2752' {timestamp}[stdout#{log_level}]{summary}{'<message_text>':({status})?'<message_text>':({user})?'<message_text>':({reason})?<message_text>}, 'common_name':'{user_name}'<message_text>}cli='{cli}' ACTUALIZACIÓN DE ESTADO

La marca de tiempo se asigna a metadata.timestamp.

log_level se asigna a security_result.severity

El mensaje se asigna a security_result.description.

El resumen se asigna a security_result.summary.

user_name se asigna a principal.user.user_display_name

cli se asigna a principal.process.command_line

El estado se asigna a principal.user.user_authentication_status.

metadata.vendor_name se establece en "OpenVPN"

metadata.product_name se establece en "OpenVPN Access Server".

principal.platform se establece en "LINUX"

/var/log/rundeck/service.log [2022-05-04T17:03:11,166] WARN config.NavigableMap - Accessing config key '[filterNames]' through dot notation is deprecated, and it will be removed in a future release. En su lugar, usa "config.getProperty(key, targetClass)". [{timestamp}]{severity}{summary}\-{security_description}

, en {command_line}\({file_path}:<message_text>\)

ACTUALIZACIÓN DE ESTADO command_line se asigna a "target.process.command_line"

file_path se asigna a "target.process.file.full_path".

La marca de tiempo se asigna a "metadata.event_timestamp".

La gravedad se asigna a "security_result.severity".

El resumen se asigna a "security_result.summary".

security_description se asigna a "security_result.description"

metadata.product_name se establece en "FLUENTD"

metadata.vendor_name se establece en "FLUENTD"

/var/log/auth.log Jul 4 19:26:19 Ubuntu18 systemd-logind[982]: Removed session 153. {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}]):{security_description}{network_session_id}?(of user{principal_user_userid})? USER_LOGOUT

La marca de tiempo se asigna a "metadata.timestamp".

principal_hostname se asigna a target.hostname si el valor es "USER_LOGOUT"; de lo contrario, se asigna a principal.hostname.

principal_application se asigna a target.application si el valor es "USER_LOGOUT"; de lo contrario, se asigna a "principal.application".

pid se asigna a target.process.pid si el valor es "USER_LOGOUT"; de lo contrario, se asigna a principal.process.pid.

security_description se asigna a "security_result.description"

network_session_id se asigna a "network.session_id".

principal_user_userid se asigna a principal.user.userid si el valor es "USER_LOGOUT"; de lo contrario, se asigna a target.user.userid.

"principal.platform" se establece en "LINUX".

Si el evento security_description es Removed session, el evento event_type se establece en USER_LOGOUT.

extensions.auth.type está establecido en AUTHTYPE_UNSPECIFIED

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

/var/log/auth.log Jun 27 11:07:17 Ubuntu18 systemd-logind[804]: New session 564 of user root. {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}]):{security_description}{network_session_id}?(of user{principal_user_userid})? USER_LOGIN

La marca de tiempo se asigna a "metadata.timestamp".

principal_hostname se asigna a target.hostname si el valor es "USER_LOGOUT"; de lo contrario, se asigna a principal.hostname.

principal_application se asigna a target.application si el valor es "USER_LOGOUT"; de lo contrario, se asigna a "principal.application".

pid se asigna a target.process.pid si el valor es "USER_LOGOUT"; de lo contrario, se asigna a principal.process.pid.

security_description se asigna a "security_result.description"

network_session_id se asigna a "network.session_id".

principal_user_userid se asigna a principal.user.userid si el valor es "USER_LOGOUT"; de lo contrario, se asigna a target.user.userid.

"principal.platform" se establece en "LINUX".

"network.application_protocol" se asigna a "SSH".

Si es una sesión nueva, event_type se establece en USER_LOGIN.

extensions.auth.type está establecido en AUTHTYPE_UNSPECIFIED

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

/var/log/auth.log Jun 27 11:07:17 Ubuntu18 sshd[9349]: Accepted password for root from 198.51.100.1 port 57619 ssh2 {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}])<optional_field> {security_description} for (invalid user )?{principal_user_userid} from {principal_ip} port {principal_port} ssh2(:{security_result_detection_fields_ssh_kv}SHA256:{security_result_detection_fields_kv})? USER_LOGIN

La marca de tiempo se asigna a "metadata.timestamp".

principal_hostname se asigna a target.hostname si el valor es "USER_LOGOUT"; de lo contrario, se asigna a principal.hostname.

principal_application se asigna a target.application si el valor es "USER_LOGOUT"; de lo contrario, se asigna a "principal.application".

pid se asigna a target.process.pid si el valor es "USER_LOGOUT"; de lo contrario, se asigna a principal.process.pid.

security_description se asigna a "security_result.description"

principal_user_userid se asigna a principal.user.userid si el valor es "USER_LOGOUT"; de lo contrario, se asigna a target.user.userid.

principal_ip se asigna a "principal.ip".

principal_port se asigna a "principal.port".

security_result_detection_fields_ssh_kv se asigna a "security_result.detection_fields.key/value".

security_result_detection_fields_kv se asigna a "security_result.detection_fields.key/value".

"principal.platform" se establece en "LINUX".

"network.application_protocol" se establece en "SSH".

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

/var/log/auth.log Apr 28 11:51:13 Ubuntu18 sudo[24149]: root : TTY=pts/5 ; PWD=/ ; USER=root ; COMMAND=/bin/ls {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}])<optional_field> {principal_user_userid} :( {security_description} ;)? TTY=<message_text> ; PWD={principal_process_command_line_1} ; USER={principal_user_attribute_labels_uid_kv} ; COMMAND={principal_process_command_line_2} ACTUALIZACIÓN DE ESTADO

La marca de tiempo se asigna a metadata.timestamp.

principal_hostname se asigna a principal.hostname

principal_application se asigna a principal.application

pid se asigna a principal.process.pid

principal_user_userid se asigna a target.user.userid

security_description se asigna a "security_result.description"

principal_process_command_line_1 se asigna a "principal.process.command_line".

principal_process_command_line_2 se asigna a "principal.process.command_line".

principal_user_attribute_labels_uid_kv se asigna a "principal.user.attribute.labels.key/value"

"principal.platform" se establece en "LINUX".

/var/log/auth.log Jul 4 19:39:01 Ubuntu18 CRON[17217]: pam_unix(cron:session): session opened for user root by (uid=0) {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}])<optional_field> {security_description} for (invalid user|user)?{principal_user_userid}(by (uid={principal_user_attribute_labels_uid_kv}))?$ USER_LOGIN

La marca de tiempo se asigna a metadata.timestamp.

principal_hostname se asigna a target.hostname si el valor es "USER_LOGOUT"; de lo contrario, se asigna a principal.hostname.

principal_application se asigna a target.application si el valor es "USER_LOGOUT"; de lo contrario, se asigna a "principal.application".

pid se asigna a target.process.pid si el valor es "USER_LOGOUT"; de lo contrario, se asigna a principal.process.pid.

security_description se asigna a "security_result.description"

principal_user_userid se asigna a principal.user.userid si el valor es "USER_LOGOUT"; de lo contrario, se asigna a target.user.userid.

principal_user_attribute_labels_uid_kv se asigna a "principal.user.attribute.labels.key/value"

"principal.platform" se establece en "LINUX".

"network.application_protocol" se establece en "SSH".

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

/var/log/auth.log 4 de jul. 19:24:43 Ubuntu18 sshd[14731]: pam_unix(sshd:session): session closed for user root {timestamp} {principal_hostname}{principal_application}<optional_filed>[{pid}]): {security_description} for (invalid user|user){principal_user_userid} USER_LOGOUT

La marca de tiempo se asigna a metadata.timestamp.

principal_hostname se asigna a target.hostname si el valor es "USER_LOGOUT"; de lo contrario, se asigna a principal.hostname.

principal_application se asigna a target.application si el valor es "USER_LOGOUT"; de lo contrario, se asigna a "principal.application".

pid se asigna a target.process.pid si el valor es "USER_LOGOUT"; de lo contrario, se asigna a principal.process.pid.

security_description se asigna a "security_result.description"

principal_user_userid se asigna a principal.user.userid si el valor es "USER_LOGOUT"; de lo contrario, se asigna a target.user.userid.

principal_user_attribute_labels_uid_kv se asigna a principal.user.attribute.labels.key/value

"principal.platform" se establece en "LINUX".

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

/var/log/auth.log Jun 30 11:32:26 Ubuntu18 sshd[29425]: Connection reset by authenticating user root 198.51.100.1 port 52518 [preauth] {timestamp} {principal_hostname}{principal_application}(<optional_field>[{pid}]):{security_description}(from|{principal_user_userid}){target_ip}port{target_port}<optional_field>[preauth]|:<text_message>{security_summary}|) USER_LOGOUT

La marca de tiempo se asigna a metadata.timestamp.

principal_hostname se asigna a target.hostname si el valor es "USER_LOGOUT"; de lo contrario, se asigna a principal.hostname.

principal_application se asigna a target.application si el valor es "USER_LOGOUT"; de lo contrario, se asigna a "principal.application".

pid se asigna a target.process.pid si el valor es "USER_LOGOUT"; de lo contrario, se asigna a principal.process.pid.

security_description se asigna a security_result.description

security_summary se asigna a security_result.summary

principal_user_userid se asigna a principal.user.userid si el valor es "USER_LOGOUT"; de lo contrario, se asigna a target.user.userid.

target_ip se asigna a target.ip

target_port se asigna a target.port"

principal.platform" se establece en "LINUX"

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

var/log/samba/log.winbindd [2022/05/05 13:51:22.212484, 0] ../source3/winbindd/winbindd_cache.c:3170(initialize_winbindd_cache)initialize_winbindd_cache: clearing cache and re-creating with version number 2 {timestamp},{severity}(<optional_field>,pid={pid},effective({principal_user_attribute_labels_kv},{principal_group_attribute_labels_kv}),real({principal_user_userid},{principal_group_product_object_id}))?]<message_text>:{security_description} ACTUALIZACIÓN DE ESTADO

La marca de tiempo se asigna a "metadata.timestamp".

El PID se asigna a "principal.process.pid".

principal_user_attribute_labels_kv se asigna a "principal.user.attribute.labels".

principal_group_attribute_labels_kv se asigna a "principal.group.attribute.labels".

principal_user_userid se asigna a "principal.user.userid".

principal_group_product_object_id se asigna a "principal.group.product_object_id".

security_description se asigna a "security_result.description"

metadata_description se asigna a "metadata.description"

metadata.product_name" se establece en "FLUENTD"

metadata.vendor_name" se establece en "FLUENTD"

var/log/samba/log.winbindd messaging_dgm_init: bind failed: No space left on device {user_id}: {desc} ACTUALIZACIÓN DE ESTADO

metadata.product_name" se establece en "FLUENTD"

metadata.vendor_name" se establece en "FLUENTD"

user_id se asigna a principal.user.userid

desc se asigna a metadata.description

/var/log/mail.log Jul 16 11:40:56 Ubuntu18 sendmail[9341]: 22G6AtwH009341: from=<fluentd@Ubuntu18>, size=377, class=0, nrcpts=1, metadata_descriptionid=<202203160610.22G6AtwH009341@Ubuntu18.cdsys.local>, proto=SMTP, daemon=MTA-v4, relay=localhost [192.0.2.1] {timestamp} {target_hostname} {application}[{pid}]: <message_text>:{KV} ACTUALIZACIÓN DE ESTADO

target_hostname se asigna a target.hostname

La aplicación se asigna a target.application

pid se asigna a target.process.pid

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

/var/log/mail.log 7 de julio, 13:44:01 prod postfix/pickup[22580]: AE4271627DB: uid=0 from=<root> {timestamp} {target_hostname} {application}[{pid}]: <message_text>{KV} EMAIL_UNCATEGORIZED

target_hostname se asigna a target.hostname

La aplicación se asigna a target.application

pid se asigna a target.process.pid

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

/var/log/mail.log 7 de julio, 13:44:01, prod postfix/cleanup[23434]: AE4271627DB: message-id=<20150207184401.AE4271627DB@server.hostname.01> {timestamp} {target_hostname} {application}[{pid}]: <message_text> message-id=<{resource_name}> ACTUALIZACIÓN DE ESTADO

target_hostname se asigna a target.hostname

La aplicación se asigna a target.application

pid se asigna a target.process.pid

resource_name se asigna a target.resource.name

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

/var/log/mail.log 7 de julio, 13:44:01, prod postfix/qmgr[3539]: AE4271627DB: from=<root@server.hostname.01>, size=565, nrcpt=1 (queue active) {timestamp} {target_hostname} {application}[{pid}]: <message_text>{KV} EMAIL_UNCATEGORIZED

target_hostname se asigna a target.hostname

La aplicación se asigna a target.application

pid se asigna a target.process.pid

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

/var/log/mail.log 7 de julio, 13:44:01, prod postfix/smtp[23436]: connect to gmail-smtp-in.l.example.com[2607:xxxx:xxxx:xxx::xx]:25: Network is unreachable {timestamp} {target_hostname} {application}[{pid}]: <message_text>{KV} ACTUALIZACIÓN DE ESTADO

target_hostname se asigna a target.hostname

La aplicación se asigna a target.application

pid se asigna a target.process.pid

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

/var/log/mail.log 7 de julio, 13:44:02, prod postfix/local[23439]: E62521627DC: to=<root@server.hostname.01>, relay=local, delay=0.01, delays=0/0.01/0/0, dsn=2.0.0, status=sent (delivered to mailbox) {timestamp} {target_hostname} {application}[{pid}]: <message_text>{KV} EMAIL_UNCATEGORIZED

target_hostname se asigna a target.hostname

La aplicación se asigna a target.application

pid se asigna a target.process.pid

metadata.vendor_name se establece en "FLUENTD"

metadata.product_name se establece en "FLUENTD"

Auditoría

Campos de registro de auditoría a campos de UDM

En la siguiente tabla, se enumeran los campos de registro del tipo de registro de auditoría y sus campos de UDM correspondientes.

Campo de registro Campo de UDM
acct target.user.user_display_name
addr principal.ip
arco about.labels.key/value
auid target.user.userid
cgroup principal.process.file.full_path
cmd target.process.command_line
com target.application
cwd target.file.full_path
datos about.labels.key/value
devmajor about.labels.key/value
devminor about.labels.key/value
egid target.group.product_object_id
euid target.user.userid
exe target.process.file.full_path
exit target.labels.key/value
familia network.ip_protocol se establece en "IP6IN4" si "ip_protocol" == 2; de lo contrario, se establece en "UNKNOWN_IP_PROTOCOL".
filetype target.file.mime_type
fsgid target.group.product_object_id
fsuid target.user.userid
gid target.group.product_object_id
Nombre de host target.hostname
icmptype network.ip_protocol está establecido en "ICMP".
id Si [audit_log_type] == "ADD_USER", target.user.userid se establece en "%{id}".

Si [audit_log_type] == "ADD_GROUP", target.group.product_object_id se establece en "%{id}".

De lo contrario, target.user.attribute.labels.key/value se establece en id.

inodo target.resource.product_object_id
clave security_result.detection_fields.key/value
list security_result.about.labels.key/value
Standard target.resource.attribute.permissions.name

target.resource.attribute.permissions.type

nombre target.file.full_path
new-disk target.resource.name
new-mem target.resource.attribute.labels.key/value
new-vcpu target.resource.attribute.labels.key/value
new-net pincipal.mac
new_gid target.group.product_object_id
oauid target.user.userid
ocomm target.process.command_line
opid target.process.pid
oses network.session_id
ouid target.user.userid
obj_gid target.group.product_object_id
obj_role target.user.attribute.role.name
obj_uid target.user.userid
obj_user target.user.user_display_name
ogid target.group.product_object_id
ouid target.user.userid
path target.file.full_path
perm target.asset.attribute.permissions.name
pid target.process.pid
ppid target.parent_process.pid
protocolo Si [ip_protocol] == 2, network.ip_protocol se establece en "IP6IN4".

De lo contrario, network.ip_protocol se establece en "UNKNOWN_IP_PROTOCOL".

res security_result.summary
Resultado security_result.summary
saddr security_result.detection_fields.key/value
sauid target.user.attribute.labels.key/value
ses network.session_id
sgid target.group.product_object_id
sig security_result.detection_fields.key/value
subj_user target.user.user_display_name
correcto Si success=='yes', security_result.summary se establece en 'system call was successful'. De lo contrario, se establece en 'systemcall was failed'.
suid target.user.userid
syscall about.labels.key/value
terminal target.labels.key/value
tty target.labels.key/value
uid Si [audit_log_type] está en [SYSCALL, SERVICE_START, ADD_GROUP, ADD_USER, MAC_IPSEC_EVENT, MAC_UNLBL_STCADD, OBJ_PID, CONFIG_CHANGE, SECCOMP, USER_CHAUTHTOK, USYS_CONFIG, DEL_GROUP, DEL_USER, USER_CMD, USER_MAC_POLICY_LOAD], el UID se establece en principal.user.userid.

De lo contrario, uid se establece en target.user.userid.

vm target.resource.name

Tipos de registros de auditoría y tipos de eventos del UDM

En la siguiente tabla, se enumeran los tipos de registros de auditoría y sus tipos de eventos de UDM correspondientes.

Tipo de registro de auditoría Tipo de evento de UDM Descripción
ADD_GROUP GROUP_CREATION Se activa cuando se agrega un grupo de espacio del usuario.
ADD_USER USER_CREATION Se activa cuando se agrega una cuenta de usuario del espacio del usuario.
ANOM_ABEND GENERIC_EVENT / PROCESS_TERMINATION Se activa cuando un proceso finaliza de forma anormal (con una señal que podría causar un volcado de memoria, si está habilitado).
AVC GENERIC_EVENT Se activó para registrar una verificación de permisos de SELinux.
CONFIG_CHANGE USER_RESOURCE_UPDATE_CONTENT Se activa cuando se modifica la configuración del sistema de auditoría.
CRED_ACQ USER_LOGIN Se activa cuando un usuario adquiere credenciales de espacio del usuario.
CRED_DISP USER_LOGOUT Se activa cuando un usuario descarta credenciales del espacio del usuario.
CRED_REFR USER_LOGIN Se activa cuando un usuario actualiza sus credenciales de espacio de usuario.
CRYPTO_KEY_USER USER_RESOURCE_ACCESS Se activa para registrar el identificador de clave criptográfica que se usa con fines criptográficos.
CRYPTO_SESSION PROCESS_TERMINATION Se activa para registrar los parámetros establecidos durante el establecimiento de una sesión de TLS.
CWD SYSTEM_AUDIT_LOG_UNCATEGORIZED Se activa para grabar el directorio de trabajo actual.
DAEMON_ABORT PROCESS_TERMINATION Se activa cuando se detiene un daemon debido a un error.
DAEMON_END PROCESS_TERMINATION Se activa cuando se detiene correctamente un daemon.
DAEMON_RESUME PROCESS_UNCATEGORIZED Se activa cuando el daemon auditd reanuda el registro.
DAEMON_ROTATE PROCESS_UNCATEGORIZED Se activa cuando el daemon auditd rota los archivos de registro de auditoría.
DAEMON_START PROCESS_LAUNCH Se activa cuando se inicia el daemon auditd.
DEL_GROUP GROUP_DELETION Se activa cuando se borra un grupo de espacio del usuario.
Pendiente USER_DELETION Se activa cuando se borra un usuario del espacio del usuario.
EXECVE PROCESS_LAUNCH Se activa para registrar los argumentos de la llamada al sistema execve(2).
MAC_CONFIG_CHANGE GENERIC_EVENT Se activa cuando se cambia un valor booleano de SELinux.
MAC_IPSEC_EVENT SYSTEM_AUDIT_LOG_UNCATEGORIZED Se activa para registrar información sobre un evento de IPSec cuando se detecta uno o cuando cambia la configuración de IPSec.
MAC_POLICY_LOAD GENERIC_EVENT Se activa cuando se carga un archivo de política de SELinux.
MAC_STATUS GENERIC_EVENT Se activa cuando cambia el modo de SELinux (aplicación forzosa, permisivo, desactivado).
MAC_UNLBL_STCADD SYSTEM_AUDIT_LOG_UNCATEGORIZED Se activa cuando se agrega una etiqueta estática cuando se usan las capacidades de etiquetado de paquetes del kernel proporcionado por NetLabel.
NETFILTER_CFG GENERIC_EVENT Se activa cuando se detectan modificaciones en la cadena de Netfilter.
OBJ_PID SYSTEM_AUDIT_LOG_UNCATEGORIZED Se activa para registrar información sobre un proceso al que se envía un signal.
RUTA FILE_OPEN/GENERIC_EVENT Se activa para registrar la información de la ruta de acceso del nombre de archivo.
SELINUX_ERR GENERIC_EVENT Se activa cuando se detecta un error interno de SELinux.
SERVICE_START SERVICE_START Se activa cuando se inicia un servicio.
SERVICE_STOP SERVICE_STOP Se activa cuando se detiene un servicio.
SYSCALL GENERIC_EVENT Se activa para registrar una llamada al sistema del kernel.
SYSTEM_BOOT STATUS_STARTUP Se activa cuando se inicia el sistema.
SYSTEM_RUNLEVEL STATUS_UPDATE Se activa cuando cambia el nivel de ejecución del sistema.
SYSTEM_SHUTDOWN STATUS_SHUTDOWN Se activa cuando se apaga el sistema.
USER_ACCT SETTING_MODIFICATION Se activa cuando se modifica una cuenta de usuario del espacio del usuario.
USER_AUTH USER_LOGIN Se activa cuando se detecta un intento de autenticación en el espacio del usuario.
USER_AVC USER_UNCATEGORIZED Se activa cuando se genera un mensaje de AVC del espacio del usuario.
USER_CHAUTHTOK USER_RESOURCE_UPDATE_CONTENT Se activa cuando se modifica un atributo de la cuenta de usuario.
USER_CMD USER_COMMUNICATION Se activa cuando se ejecuta un comando de shell del espacio del usuario.
USER_END USER_LOGOUT Se activa cuando finaliza una sesión de espacio del usuario.
USER_ERR USER_UNCATEGORIZED Se activa cuando se detecta un error de estado de la cuenta de usuario.
USER_LOGIN USER_LOGIN Se activa cuando un usuario accede a su cuenta.
USER_LOGOUT USER_LOGOUT Se activa cuando un usuario sale de su cuenta.
USER_MAC_POLICY_LOAD RESOURCE_READ Se activa cuando un daemon del espacio del usuario carga una política de SELinux.
USER_MGMT USER_UNCATEGORIZED Se activa para registrar datos de administración del espacio del usuario.
USER_ROLE_CHANGE USER_CHANGE_PERMISSIONS Se activa cuando se cambia el rol de SELinux de un usuario.
USER_START USER_LOGIN Se activa cuando se inicia una sesión de espacio del usuario.
USYS_CONFIG USER_RESOURCE_UPDATE_CONTENT Se activa cuando se detecta un cambio en la configuración del sistema del espacio del usuario.
VIRT_CONTROL STATUS_UPDATE Se activa cuando se inicia, detiene o pausa una máquina virtual.
VIRT_MACHINE_ID USER_RESOURCE_ACCESS Se activa para registrar la vinculación de una etiqueta a una máquina virtual.
VIRT_RESOURCE USER_RESOURCE_ACCESS Se activa para registrar la asignación de recursos de una máquina virtual.

Correo electrónico

Campos de registro de correo electrónico a campos de UDM

En la siguiente tabla, se enumeran los campos de registro del tipo de registro de correo y sus campos de UDM correspondientes.

Campo de registro Campo de UDM
Clase about.labels.key/value
Ctladdr principal.user.user_display_name
De network.email.from
Msgid network.email.mail_id
Proto network.application_protocol
Relay intermediary.hostname

intermediary.ip

Tamaño network.received_bytes
Estadística security_result.summary
a network.email.to

Tipos de registros de correo electrónico y su correspondencia con el tipo de evento de UDM

En la siguiente tabla, se enumeran los tipos de registros de correo y sus tipos de eventos correspondientes del UDM.

Tipo de registro de correo Tipo de evento de UDM
sendmail ACTUALIZACIÓN DE ESTADO
pickup EMAIL_UNCATEGORIZED
cleanup ACTUALIZACIÓN DE ESTADO
qmgr EMAIL_UNCATEGORIZED
smtp ACTUALIZACIÓN DE ESTADO
local EMAIL_UNCATEGORIZED

¿Qué sigue?

¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.