Recoger registros de BlueCat DDI

Disponible en:

Este analizador gestiona los mensajes syslog con formato LEEF y sin formato LEEF de Bluecat DDI (DNS, DHCP, IPAM). Extrae campos de varios tipos de registros (por ejemplo, named, dhcpd, audit y CRON) mediante patrones grok y lógica condicional, los asigna al modelo de datos unificado en función del tipo de registro y rellena los campos relacionados con DNS, DHCP o usuarios según corresponda.

Antes de empezar

  • Asegúrate de que tienes una instancia de Google Security Operations.
  • Asegúrate de que usas Windows 2016 o una versión posterior, o un host Linux con systemd.
  • Si se ejecuta a través de un proxy, asegúrate de que los puertos del cortafuegos estén abiertos.
  • Asegúrate de que tienes acceso con privilegios a Bluecat.

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.

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

  1. Para instalar en Windows, ejecuta la siguiente secuencia de comandos:
    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
  2. Para instalar Linux, ejecuta la siguiente secuencia de comandos:
    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
  3. Puedes consultar otras opciones de instalación en esta guía de instalación.

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

  1. Accede al equipo en el que está instalado Bindplane.
  2. Edita el archivo config.yaml de la siguiente manera:

    receivers:
        tcplog:
            # Replace the below port <54525> and IP <0.0.0.0> with your specific values
            listen_address: "0.0.0.0:54525" 
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the creds location below according the placement of the credentials file you downloaded
            creds: '{ json file for creds }'
            # Replace <customer_id> below with your actual ID that you copied
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # You can apply ingestion labels below as preferred
            ingestion_labels:
            log_type: SYSLOG
            namespace: bluceat_ddi
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Reinicia el agente de Bindplane para aplicar los cambios:

    sudo systemctl restart bindplane
    

Configurar Syslog en Bluecat DDI

  1. Inicia sesión en Bluecat Address Manager (BAM).
  2. En el menú Configuración, selecciona una configuración.
  3. Selecciona la pestaña Servidores.
  4. En Servidores, haz clic en el nombre de un BDDS.
  5. Debería abrirse la pestaña Detalles del servidor.
  6. Haz clic en el menú nombre del servidor.
  7. Selecciona Configuración de servicio.
  8. Haz clic en Tipo de servicio > Syslog (el gestor de direcciones consulta el servidor y devuelve los valores actuales).
  9. En General, define los siguientes valores:
    • Servidor Syslog: la dirección IP de tu servidor Syslog (Bindplane).
    • Puerto Syslog: el puerto de tu servidor Syslog (Bindplane).
    • Transporte Syslog: selecciona TCP o UDP (en función de tu configuración de Bindplane).
  10. Haz clic en Añadir.
    • El servidor syslog recién añadido aparecerá en la lista.
  11. Haz clic en Actualizar.

Configurar los ajustes de Syslog en BlueCat DDI

  1. Inicia sesión en BlueCat Address Manager.
  2. Vaya a Configuración > Ajustes del sistema > Registro.
  3. En Logging Settings (Configuración de registro), busca la sección Syslog Servers (Servidores Syslog).
  4. Haz clic en Añadir servidor Syslog.
  5. Proporciona los valores necesarios:
    • Nombre del servidor: un nombre único para el servidor syslog (por ejemplo, BindplaneServer).
    • Dirección IP: la dirección IP o el nombre de host del servidor syslog.
    • Protocolo: selecciona TCP, UDP (predeterminado) o TLS (en función de la configuración de syslog).
    • Puerto: especifica el puerto para la comunicación de syslog (predeterminado: 514 para UDP/TCP y 6514 para TLS).
  6. Configura Nivel de registro. Elige el nivel adecuado en función de tus necesidades. Entre las opciones disponibles se incluyen las siguientes:
    • Urgencia: problemas críticos que requieren atención inmediata
    • Alerta: alertas que requieren una acción inmediata.
    • Crítico: condiciones críticas
    • Error: eventos de error
    • Advertencia: eventos de advertencia
    • Aviso: eventos normales pero significativos
    • Información: mensajes informativos
    • Depuración: información de depuración detallada.
  7. Opcional: Añada una instalación Syslog personalizada para clasificar los registros (por ejemplo, local0 o local1).
  8. Guarda la configuración.

Aplicar ajustes de Syslog a los dispositivos DDI

  1. Ve a Servidores > Gestionar servidores.
  2. Selecciona los servidores DNS o DHCP en los que se debe habilitar syslog.
  3. Haz clic en Editar servidor.
  4. En la sección Registro:
    • Selecciona el servidor syslog que has configurado anteriormente.
    • Habilita el registro de servicios específicos (por ejemplo, consultas DNS o asignaciones DHCP).
    • Guarda los cambios.

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
client_ip network.dhcp.ciaddr Extraído del mensaje DHCPREQUEST. Solo se rellena en los mensajes DHCPREQUEST.
client_mac principal.mac Extraída de mensajes DHCP (DHCPDISCOVER, DHCPREQUEST y DHCPRELEASE).
client_mac target.mac Extraído de mensajes DHCP (DHCPOFFER y DHCPNAK).
client_mac network.dhcp.chaddr Extraída de mensajes DHCP (DHCPREQUEST, DHCPOFFER, DHCPACK, DHCPNAK y DHCPRELEASE).
cmd target.process.command_line Extraído de los registros de CRON. Se eliminan las "y" y los espacios.
description metadata.description Se extrae de varios tipos de registros para proporcionar contexto adicional.
description metadata.description Extraído de los registros de syslog-ng, que proporciona contexto adicional.
file_path target.file.full_path Se extrae de varios tipos de registros y representa la ruta completa a un archivo.
file_path target.process.file.full_path Extraído de los registros de agetty, que representa la ruta completa de un archivo relacionado con un proceso.
inner_message metadata.description Se usa como descripción de GENERIC_EVENTs cuando no se define el tipo de operación y para los registros MEM-MON.
metadata.event_type Determinado por el analizador en función del tipo de registro y del contenido. Entre los posibles valores se incluyen los siguientes: NETWORK_DNS, NETWORK_DHCP, USER_LOGIN, USER_LOGOUT, USER_UNCATEGORIZED, GENERIC_EVENT, STATUS_UPDATE y NETWORK_CONNECTION. Siempre "BLUECAT_DDI".
metadata.vendor_name Siempre "Bluecat Networks".
metadata.product_name Siempre "Bluecat DDI".
metadata.event_timestamp Copiado de la marca de tiempo analizada de la entrada de registro.
network.protocol Selecciona "DNS" para los registros de DNS o "DHCP" para los registros de DHCP.
network.dns.answers Una matriz que contiene registros de respuestas. El campo data de answers se rellena con el target_ip, si está presente.
network.dns.questions Una matriz que contiene registros de preguntas. El campo name se rellena con el valor target_host, el campo type se obtiene de los campos query_type o question_type, y el campo class se obtiene del campo qclass.
network.dns.recursive Se define como "true" si rec_flag es "+".
qclass network.dns.questions.class Se extrae de los registros de consultas DNS y se asigna a un valor entero mediante el archivo dns_query_class_mapping.include.
query_type network.dns.questions.type Se extrae de los registros de consultas DNS y se asigna a un valor entero mediante el archivo dhcp_qtype_mapping.include.
relay_ip intermediary.ip Extraída de los registros de DNS y DHCP, que representa la dirección IP de un servidor de retransmisión o intermediario.
server_host target.hostname Se extrae de varios tipos de registros y representa el nombre de host del servidor.
server_host network.dhcp.sname Extraído de los registros DHCP, que representa el nombre de host del servidor.
server_host principal.hostname Extraído de systemd, agetty y algunos registros de auditoría, que representa el nombre de host del principal.
server_ip target.ip Extraído de los registros con formato LEEF, que representa la dirección IP del servidor.
src_ip principal.ip Se extrae de varios tipos de registros y representa la dirección IP de origen.
src_ip network.dhcp.yiaddr Se usa en los mensajes DHCPINFORM para rellenar el campo yiaddr.
src_port principal.port Se extrae de varios tipos de registros y representa el puerto de origen.
src_user principal.user.userid Se extrae de los registros CRON y de auditoría, y representa el ID de usuario.
target_host target.hostname Se extrae de varios tipos de registros y representa el nombre de host de destino.
target_host network.dns.questions.name Se usa en los registros de DNS para rellenar el nombre de la pregunta.
target_ip target.ip Extraído de varios tipos de registros, que representa la dirección IP de destino.
target_ip network.dhcp.ciaddr Se usa en los mensajes BOOTREQUEST para rellenar el campo ciaddr.
target_ip network.dns.answers.data Se usa en los registros de DNS para rellenar los datos de respuesta.
tgt_port target.port Extraído de los registros de syslog-ng, que representa el puerto de destino.

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