Recopilar registros de Cisco VCS

Disponible en:

En este documento se explica cómo ingerir registros de Cisco VCS (Video Communication Service), controlado a través de ExpressWay, en Google Security Operations mediante Bindplane. El analizador extrae campos de los mensajes syslog, los normaliza en un modelo de datos unificado (UDM) y clasifica el tipo de evento en función de los detalles extraídos, como direcciones IP, puertos y acciones. Gestiona varios formatos de registro, extrae pares clave-valor y asigna niveles de gravedad a valores estandarizados para el análisis de seguridad.

Antes de empezar

Asegúrate de que cumples los siguientes requisitos previos:

  • Instancia de Google SecOps
  • Un host Windows 2016 o 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 Cisco ExpressWay

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

Instala el agente de Bindplane en tu sistema operativo Windows o Linux siguiendo las instrucciones que se indican a continuación.

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_file_path: '/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
            log_type: 'CISCO_VCS'
            raw_log_field: body
            ingestion_labels:
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    

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 Syslog para Cisco ExpressWay

  1. Inicia sesión en la interfaz web de Cisco ExpressWay.
  2. Ve a Mantenimiento > Registro.
  3. Introduce las direcciones IP del agente de Bindplane como Servidor syslog remoto.
  4. Haz clic en Opciones.
  5. Proporcione los siguientes detalles de configuración:
    • Transporte: selecciona UDP.
    • Puerto: introduce el número de puerto del agente de Bindplane.
    • Formato del mensaje: selecciona BSD. La otra opción posible es IETF.
    • Filtrar por gravedad: selecciona Informativa.
  6. Haz clic en Guardar.

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
Acción read_only_udm.security_result.action_details Valor del campo Action del registro sin procesar.
Código read_only_udm.network.http.response_code Valor del campo Code del registro sin procesar, convertido en número entero. Se usa cuando no está presente Response-code.
Detalles read_only_udm.security_result.description Valor del campo Detail del registro sin procesar.
Dst-ip read_only_udm.target.ip Valor del campo Dst-ip del registro sin procesar. Se usa cuando Action no es Received.
Dst-port read_only_udm.target.port Valor del campo Dst-port del registro sin procesar, convertido en número entero. Se usa cuando Action no es Received.
Evento read_only_udm.metadata.product_event_type Valor del campo Event del registro sin procesar.
Nivel read_only_udm.security_result.severity_details Valor del campo Level del registro sin procesar.
Nivel read_only_udm.security_result.severity Se asigna en función del valor del campo Level del registro sin procesar:
- 9, 10, VERY-HIGH: CRÍTICO
- error, warning, 7, 8, HIGH: ALTO
- notice, 4, 5, 6, MEDIUM: MEDIO
- information, info, 0, 1, 2, 3, LOW: BAJO
Local-ip read_only_udm.principal.ip Valor del campo Local-ip del registro sin procesar. Se usa cuando Action no es Received.
Local-ip read_only_udm.target.ip Valor del campo Local-ip del registro sin procesar. Se usa cuando Action es Received.
Puerto local read_only_udm.principal.port Valor del campo Local-port del registro sin procesar, convertido en número entero. Se usa cuando Action no es Received.
Puerto local read_only_udm.target.port Valor del campo Local-port del registro sin procesar, convertido en número entero. Se usa cuando Action es Received.
Método read_only_udm.network.http.method Valor del campo Method del registro sin procesar.
Módulo read_only_udm.additional.fields.value.string_value Valor del campo Module del registro sin procesar.
Node read_only_udm.additional.fields.value.string_value Valor del campo Node del registro sin procesar.
Protocolo read_only_udm.network.ip_protocol El valor del campo Protocol del registro sin procesar, analizado y asignado al nombre del protocolo IP correspondiente mediante la lógica parse_ip_protocol.include.
Response-code read_only_udm.network.http.response_code Valor del campo Response-code del registro sin procesar, convertido en número entero.
Src-ip read_only_udm.principal.ip Valor del campo Src-ip del registro sin procesar. Se usa cuando Action es Received.
Src-ip read_only_udm.principal.ip Valor del campo Src-ip del registro sin procesar. Se usa cuando Action no es Received y Local-ip no está presente.
Puerto de origen read_only_udm.principal.port Valor del campo Src-port del registro sin procesar, convertido en número entero. Se usa cuando Action es Received.
Puerto de origen read_only_udm.principal.port Valor del campo Src-port del registro sin procesar, convertido en número entero. Se usa cuando Action no es Received y Local-port no está presente.
página read_only_udm.target.application Valor del campo application del registro sin procesar.
description read_only_udm.security_result.description Valor del campo description del registro sin procesar.
inner_msg read_only_udm.security_result.description Valor del campo inner_msg del registro sin procesar. Se usa cuando se produce inner_msg_grok_failure.
principal_hostname read_only_udm.principal.hostname Valor del campo principal_hostname del registro sin procesar.
timestamp read_only_udm.metadata.event_timestamp.seconds Marca de tiempo de la época extraída del campo timestamp del registro sin procesar.
timestamp read_only_udm.events.timestamp.seconds Marca de tiempo de la época extraída del campo timestamp del registro sin procesar.
read_only_udm.additional.fields.key Valor codificado: Module, Node
read_only_udm.metadata.log_type Valor codificado: CISCO_VCS
read_only_udm.metadata.product_name Valor codificado: CISCO VCS
read_only_udm.metadata.vendor_name Valor codificado: CISCO VCS
read_only_udm.metadata.event_type Se determina en función de los valores de los campos Action, Src-ip, principal_hostname, Local-ip y Dst-ip:
- NETWORK_CONNECTION: si se cumple alguna de estas condiciones: (Action es Received y Local-ip está presente) o (Action no es Received y Dst-ip está presente)
- STATUS_UPDATE: en caso contrario

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