Recopila registros de Cisco eStreamer

Versión del analizador: 5.0

Compatible con:

En este documento, se explica cómo puedes transferir registros de Cisco eStreamer a Google Security Operations con Bindplane.
El analizador extrae campos de los registros con formato syslog de Cisco eStreamer con pares clave-valor. Utiliza grok o kv para analizar el mensaje de registro y, luego, asigna estos valores al Modelo de datos unificados (UDM). También establece valores de metadatos predeterminados para la fuente y el tipo de evento.

Antes de comenzar

Asegúrate de cumplir con los siguientes requisitos previos:

  • Es una instancia de Google SecOps.
  • Windows Server 2016 o versiones posteriores, o host de Linux con systemd.
  • Si se ejecuta detrás de un proxy, asegúrate de que los puertos de firewall estén abiertos según los requisitos del agente de Bindplane.
  • Acceso con privilegios al Cisco Firepower Management Center (FMC)
  • Un sistema Linux para ejecutar el cliente de la CLI de eNcore

Obtén el archivo de autenticación de transferencia de Google SecOps

  1. Accede a la consola de Google SecOps.
  2. Ve a Configuración de SIEM > Agente de recopilación.
  3. Descarga el archivo de autenticación de transferencia.
    • Guarda el archivo de forma segura en el sistema en el que se instalará Bindplane.

Obtén el ID de cliente de Google SecOps

  1. Accede a 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.

Instala el agente de BindPlane

Instala el agente de Bindplane en tu sistema operativo Windows o Linux según las siguientes instrucciones.

Instalación en Windows

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

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

Instalación en Linux

  1. Abre una terminal con privilegios de administrador o sudo.
  2. Ejecuta el comando siguiente:

    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 obtener más opciones de instalación, consulta esta guía de instalación.

Configura el agente de Bindplane para transferir Syslog y enviarlo a Google SecOps

  1. Accede al archivo de configuración:

    • Ubica el archivo config.yaml. Por lo general, se encuentra en el directorio /observiq-otel-collector/ en Linux o en el directorio "C:\Archivos de programa\observIQ OpenTelemetry Collector" 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:5514"
    
    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Adjust the path to the credentials file you downloaded in Step 1
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        # Replace with your actual customer ID from Step 2
        customer_id: YOUR_CUSTOMER_ID
        endpoint: malachiteingestion-pa.googleapis.com
        # Add optional ingestion labels for better organization
        log_type: 'CISCO_ESTREAMER'
        raw_log_field: body
        ingestion_labels:
    
    service:
      pipelines:
        logs/source0__chronicle_w_labels-0:
          receivers:
            - udplog
          exporters:
            - chronicle/chronicle_w_labels
    
  • Reemplaza el puerto y la dirección IP según sea necesario en tu infraestructura.
  • Reemplaza YOUR_CUSTOMER_ID por el ID de cliente real.
  • Actualiza /path/to/ingestion-authentication-file.json a la ruta de acceso al archivo en la que se guardó el archivo de autenticación en el paso 1.

Reinicia el agente de Bindplane para aplicar los cambios

Para reiniciar el agente de Bindplane en Linux, haz lo siguiente:

  1. Ejecuta el comando siguiente:

    sudo systemctl restart observiq-otel-collector
    
  2. Verifica que el servicio esté en ejecución:

    sudo systemctl status observiq-otel-collector
    
  3. Revisa los registros en busca de errores:

    sudo journalctl -u observiq-otel-collector -f
    

Para reiniciar el agente de Bindplane en Windows, haz lo siguiente:

  1. Elige una de las siguientes opciones:

    • Símbolo del sistema o PowerShell como administrador:
    net stop observiq-otel-collector && net start observiq-otel-collector
    
    • Consola de Services:
      1. Presiona Win+R, escribe services.msc y presiona Intro.
      2. Busca observIQ OpenTelemetry Collector.
      3. Haz clic con el botón derecho y selecciona Reiniciar.
  2. Verifica que el servicio esté en ejecución:

    sc query observiq-otel-collector
    
  3. Revisa los registros en busca de errores:

    type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
    

Configura el reenvío de Syslog en Cisco eStreamer

Configura eStreamer en Firepower Management Center

  1. Accede a Firepower Management Center.
  2. Ve a Sistema > Integración > eStreamer.
  3. Haz clic en eStreamer para acceder a la configuración de eventos de eStreamer.
  4. Selecciona las casillas de verificación junto a los tipos de eventos que deseas registrar:
    • Intrusion Events: Para eventos de detección de intrusiones
    • Intrusion Event Packet Data: Para capturas de paquetes asociadas con eventos de intrusión
    • Eventos de conexión: Para datos de conexión de red
    • Eventos de inteligencia de seguridad: Para datos de inteligencia sobre amenazas
    • Eventos de archivo: Para eventos de análisis de archivos
    • Malware Events: Para eventos de detección de software malicioso
  5. Haz clic en Guardar.

Crea un cliente de eStreamer

  1. En la página eStreamer, haz clic en Create Client.
  2. Proporciona los siguientes detalles de configuración:
    • Nombre de host: Ingresa la dirección IP del sistema Linux en el que se ejecutará el cliente de eNcore.
    • Contraseña: Ingresa una contraseña para encriptar el archivo de certificado.
  3. Haz clic en Guardar.
  4. Descarga el archivo de certificado PKCS12 generado y transfiérelo a tu sistema cliente de eNcore.

Instala y configura el cliente de la CLI de eNcore

  1. En tu sistema Linux, descarga el cliente de la CLI de eStreamer eNcore de Cisco.
  2. Extrae el paquete de eNcore:

    tar -xzf eStreamer-eNcore-*.tar.gz
    cd eStreamer-eNcore-*
    
  3. Ejecuta la secuencia de comandos de configuración:

    ./encore.sh setup
    
  4. Cuando se te solicite, elige el formato de salida para los pares clave-valor (compatible con los sistemas SIEM).

  5. Ingresa la dirección IP del FMC y la contraseña del certificado PKCS12.

  6. Configura el archivo estreamer.conf para que genere mensajes de syslog en tu agente de BindPlane:

    • Abre el archivo estreamer.conf en un editor de texto.
    • Busca la sección de salida y configúrala para enviar syslog a tu agente de Bindplane:
    {
      "handler": {
        "outputters": [
          {
            "name": "syslog",
            "adapter": "kvpair",
            "enabled": true,
            "stream": {
              "uri": "udp://BINDPLANE_AGENT_IP:5514"
            }
          }
        ]
      }
    }
    
  7. Reemplaza BINDPLANE_AGENT_IP por la dirección IP de tu agente de Bindplane.

Cómo iniciar el cliente de eNcore

  1. Prueba la conexión en modo de primer plano:

    ./encore.sh foreground
    
  2. Una vez que se verifique, inicia eNcore como un servicio en segundo plano:

    ./encore.sh start
    

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
additional_deviceInboundInterface additional.fields Combinado
additional_deviceOutboundInterface additional.fields Combinado
additional_start additional.fields Combinado
has_target extensions.auth.type Asignado: trueAUTHTYPE_UNSPECIFIED
dvchost intermediary.asset.hostname Asignado directamente
hostname intermediary.asset.hostname Asignado directamente
dvchost intermediary.hostname Asignado directamente
hostname intermediary.hostname Asignado directamente
dvcpid intermediary.process.pid Asignado directamente
ts metadata.event_timestamp Se analizó como MMM d HH:mm:ss
has_principal metadata.event_type Valores asignados (5 en total, p. ej., trueNETWORK_HTTP, trueNETWORK_DNS, true → `NETW…
has_target metadata.event_type Asignado: trueUSER_UNCATEGORIZED
product_event_type metadata.product_event_type Asignado directamente
product_name metadata.product_name Asignado directamente
version metadata.product_version Asignado directamente
vendor_name metadata.vendor_name Asignado directamente
app network.application_protocol Asignado directamente
src network.dhcp.ciaddr Asignado directamente
deviceDirection network.direction Asignado: 0INBOUND, 1OUTBOUND
dns_question network.dns.questions Combinado
requestClientApplication network.http.user_agent Asignado directamente
ip_protocol_out network.ip_protocol Asignado directamente
bytesIn network.received_bytes Asignado directamente
bytesOut network.sent_bytes Asignado directamente
deviceExternalId principal.asset.asset_id Asignado directamente
src principal.asset.ip Combinado
src principal.ip Combinado
spt principal.port Asignado directamente
security_result_action security_result.action Combinado
act security_result.action_details Asignado directamente
category security_result.category Combinado
cat security_result.category_details Combinado
cs5 security_result.description Asignado directamente
blockLength_label security_result.detection_fields Combinado
blockType_label security_result.detection_fields Combinado
cs1_var security_result.detection_fields Combinado
cs2_var security_result.detection_fields Combinado
cs3_var security_result.detection_fields Combinado
cs4_var security_result.detection_fields Combinado
cs5_var security_result.detection_fields Combinado
cs6_var security_result.detection_fields Combinado
suser_var security_result.detection_fields Combinado
cs6 security_result.rule_id Asignado directamente
severity security_result.severity_details Asignado directamente
outcome security_result.summary Asignado directamente
destinationDnsDomain target.asset.hostname Asignado directamente
dst target.asset.ip Combinado
fname target.file.full_path Asignado directamente
fileType target.file.mime_type Asignado directamente
fileHash target.file.sha256 Asignado directamente
fsize target.file.size Asignado directamente
destinationDnsDomain target.hostname Asignado directamente
host target.hostname Asignado directamente
dst target.ip Combinado
dpt target.port Asignado directamente
request target.url Asignado directamente
N/A extensions.auth.type Constante: AUTHTYPE_UNSPECIFIED
N/A metadata.event_type Constante: NETWORK_HTTP
N/A network.direction Constante: INBOUND
BLOCK security_result.action Se asignó desde el registro de cambios
SOFTWARE_PUA security_result.category Se asignó desde el registro de cambios
NETWORK_COMMAND_AND_CONTROL security_result.category Se asignó desde el registro de cambios
TOR_EXIT_NODE security_result.category Se asignó desde el registro de cambios
PHISHING security_result.category Se asignó desde el registro de cambios
NETWORK_MALICIOUS security_result.category Se asignó desde el registro de cambios
request network.http.referral_url Se asignó desde el registro de cambios
destinationDnsDomain network.dns.questions.name Se asignó desde el registro de cambios
security_result.action BLOCK Se asignó desde el registro de cambios

Registro de cambios

Consulta el registro de cambios de este analizador

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