Recoger registros de Varonis

Disponible en:

En este documento se explica cómo ingerir registros de Varonis en Google Security Operations mediante Bindplane. El analizador extrae campos de los registros (SYSLOG + KV [CEF], LEEF) mediante patrones grok, que gestionan específicamente CEF, LEEF y otros formatos específicos de Varonis. Después, asigna los campos extraídos al modelo de datos unificado (UDM), gestionando varios formatos de datos y casos límite para asegurar una representación coherente.

Antes de empezar

Asegúrate de que cumples los siguientes requisitos previos:

  • Instancia de Google SecOps
  • Windows 2016 o una versión posterior, o un host Linux con systemd
  • Si se ejecuta a través de un proxy, los puertos del cortafuegos están abiertos
  • Acceso privilegiado a Varonis

Obtener el archivo de autenticación de ingestión de Google SecOps

  1. Inicia sesión en la consola de Google SecOps.
  2. Ve a Configuración de SIEM > Agentes de recogida.
  3. Descarga el archivo de autenticación de ingestión. Guarda el archivo de forma segura en el sistema en el que se instalará Bindplane.

Obtener el ID de cliente de Google SecOps

  1. Inicia sesión en la consola de Google SecOps.
  2. Ve a Configuración de SIEM > Perfil.
  3. Copia y guarda el ID de cliente de la sección Detalles de la organización.

Instalar el agente de Bindplane

Instalación de ventanas

  1. Abre el símbolo del sistema o PowerShell como administrador.
  2. Ejecuta el siguiente comando:

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

Instalación de Linux

  1. Abre un terminal con privilegios de superusuario o sudo.
  2. Ejecuta el siguiente comando:

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

Recursos de instalación adicionales

Para ver más opciones de instalación, consulta la guía de instalación.

Configurar el agente de BindPlane para ingerir Syslog y enviarlo a Google SecOps

  1. Accede al archivo de configuración:
    • Busca el archivo config.yaml. Normalmente, se encuentra en el directorio /etc/bindplane-agent/ en Linux o en el directorio de instalación en Windows.
    • Abre el archivo con un editor de texto (por ejemplo, "nano", "vi" o Bloc de notas).
  2. Edita el archivo config.yaml de la siguiente manera:

    receivers:
        udplog:
            # Replace the port and IP address as required
            listen_address: "0.0.0.0:514"
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the path to the credentials file you downloaded in Step 1
            creds: '/path/to/ingestion-authentication-file.json'
            # Replace with your actual customer ID from Step 2
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # Add optional ingestion labels for better organization
            ingestion_labels:
                log_type: 'VARONIS'
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Sustituye el puerto y la dirección IP según sea necesario en tu infraestructura.

  4. Sustituye <customer_id> por el ID de cliente real.

  5. Actualiza /path/to/ingestion-authentication-file.json a la ruta en la que se guardó el archivo de autenticación en la sección Obtener el archivo de autenticación de ingestión de Google SecOps.

Reinicia el agente de Bindplane para aplicar los cambios

  • Para reiniciar el agente de Bindplane en Linux, ejecuta el siguiente comando:

    sudo systemctl restart bindplane-agent
    
  • Para reiniciar el agente de Bindplane en Windows, puedes usar la consola Servicios o introducir el siguiente comando:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configurar la exportación de Syslog en Varonis

  1. Inicia sesión en la interfaz de usuario web de Varonis.
  2. Ve a Herramientas > DatAlert > Seleccionar DatAlert.
  3. Selecciona Configuración.
  4. Proporcione los siguientes detalles de configuración:
    • Dirección IP del mensaje Syslog: introduce la dirección IP del agente de Bindplane.
    • Puerto: introduce el número de puerto del agente Bindplane (por ejemplo, 514 para UDP).
    • Nombre del centro: selecciona un centro.
  5. Haz clic en Aplicar.

Configurar el formato Syslog en Varonis

  1. Ve a Herramientas > DatAlert > Plantillas de alertas.
  2. Haz clic en Editar plantilla de alerta y selecciona Plantilla predeterminada del sistema externo.
  3. En Aplicar a métodos de alerta, selecciona Mensaje Syslog en la lista.
  4. En el menú, selecciona Reglas > Método de alerta.
  5. Selecciona Mensaje de registro del sistema.
  6. Haz clic en Aceptar.

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
act security_result.summary Valor del campo act del mensaje CEF.
cn1 security_result.rule_id Valor del campo cn1 del mensaje CEF.
cs1 network.email.to Valor del campo cs1 del mensaje CEF, concretamente el destinatario del correo.
cs2 security_result.rule_name Valor del campo cs2 del mensaje CEF.
device_version metadata.product_version Valor del campo device_version del mensaje CEF.
dhost principal.hostname Valor del campo dhost del mensaje CEF, que representa el nombre de host principal. Si file_server está presente y no es "DirectoryServices", se sobrescribe este valor.
duser target.user.userid Valor del campo duser del mensaje CEF. Se somete a una transformación gsub para eliminar las barras invertidas y dividirla en target.user.userid y target.administrative_domain.
dvchost target.hostname Valor del campo dvchost del mensaje CEF.
filePath target.file.full_path Valor del campo filePath del mensaje CEF.
rt metadata.event_timestamp Valor del campo rt del mensaje CEF, analizado como una marca de tiempo.
severity security_result.severity Valor del campo severity del mensaje CEF o LEEF. Se ha convertido a mayúsculas. Se asigna a los valores de gravedad de UDM (LOW, INFORMATIONAL, MEDIUM, HIGH y CRITICAL) en función del valor numérico o de la palabra clave.
Acting Object target.user.user_display_name Valor del campo Acting Object de los datos clave-valor. Divide por "\" para extraer el nombre visible.
Acting Object SAM Account Name target.user.userid Valor del campo Acting Object SAM Account Name de los datos clave-valor.
Device hostname target.hostname Valor del campo Device hostname de los datos clave-valor.
Device IP address target.ip Valor del campo Device IP address de los datos clave-valor.
Event Time metadata.event_timestamp Valor del campo Event Time de los datos de clave-valor, analizado como una marca de tiempo.
Event Type target.application, metadata.event_type Valor del campo Event Type de los datos clave-valor. Se usa para derivar metadata.event_type (FILE_OPEN, USER_CHANGE_PERMISSIONS, USER_CHANGE_PASSWORD y USER_UNCATEGORIZED).
File Server/Domain principal.hostname Valor del campo File Server/Domain de los datos clave-valor. Si no es "DirectoryServices", sobrescribe el principal.hostname derivado de dhost.
Path target.file.full_path Valor del campo Path de los datos clave-valor.
Rule Description metadata.description Valor del campo Rule Description de los datos clave-valor.
Rule ID security_result.rule_id Valor del campo Rule ID de los datos clave-valor.
Rule Name security_result.rule_name Valor del campo Rule Name de los datos clave-valor.
intermediary_host intermediary.hostname Valor extraído por grok, que representa el nombre de host intermediario.
log_type metadata.log_type Valor fijo establecido en el código fuente VARONIS.
metadata.event_type metadata.event_type Se deriva de los valores de evt_typ, act y filepath. El valor predeterminado es STATUS_UPDATE si event_type es GENERIC_EVENT y principal_hostname está presente.
metadata.product_name metadata.product_name Codificado de forma rígida como VARONIS, pero se puede sobrescribir con el campo product_name del mensaje LEEF.
metadata.vendor_name metadata.vendor_name Codificado de forma rígida como VARONIS, pero se puede sobrescribir con el campo vendor del mensaje LEEF.
prin_host principal.hostname Valor extraído por grok que representa el nombre de host principal.
product_name metadata.product_name Valor del mensaje LEEF.
security_result.action security_result.action Derivado del campo result o Event Status. Se asigna el valor "ALLOW" si el resultado es Success. De lo contrario, se asigna el valor BLOCK.
timestamp timestamp, metadata.event_timestamp La marca de tiempo del evento se obtiene de varios campos (datetime1, event_time, start_datetime y datetime2) en función de la disponibilidad. El create_time del registro sin procesar se usa como alternativa y se asigna tanto a timestamp como a metadata.event_timestamp si no hay otros campos de marca de tiempo disponibles.
vendor metadata.vendor_name Valor del mensaje LEEF.

¿Necesitas más ayuda? Recibe respuestas de los miembros de la comunidad y de los profesionales de Google SecOps.