Integrar ArcSight con Google SecOps

En este documento se describe cómo integrar ArcSight con Google Security Operations (Google SecOps).

Versión de integración: 42.0

Requisitos previos del conector de eventos de seguridad

Este conector funciona con los informes que se generan automáticamente en ArcSight. El conector descarga el informe generado, extrae los IDs de evento y, a continuación, usa la API de ArcSight para obtener más detalles sobre los eventos.

Configurar el conector de eventos de seguridad

  1. Inicia sesión en la consola de ArcSight.

  2. Vaya a la pestaña Informes y, a continuación, a la sección Consulta.

  3. Para crear una consulta, introduce el siguiente nombre: Google SecOps SOAR Security Events Connector Query.

    Presta atención a los parámetros Hora de inicio y Hora de finalización. Te recomendamos que consultes los datos en intervalos de una hora, pero puedes aumentar el intervalo si es necesario.

    Ejemplo de configuración:

    • Nombre: Google SecOps SOAR Security Events Connector Query
    • Consulta sobre: evento
    • Hora de inicio: $Now - 1h
    • Hora de finalización: $Now
    • Usar como marca de tiempo: hora de finalización
    • Límite de filas: 5000
  4. Define los campos de la consulta. En cuanto a los campos, debes tener lo siguiente:

    • ID de evento
    • Nombre
    • Hora de inicio
    • Hora de finalización
    • Prioridad

    Asegúrate de que la columna Ordenar por tenga el valor Hora de finalización (ascendente).

  5. Defina las condiciones. Aquí puedes proporcionar tu propio filtro.

  6. Guarda la consulta.

  7. Vaya a la sección Informes y cree uno. Para especificar el informe, introduce el siguiente nombre: Google SecOps SOAR Security Events Connector Report. Usa el mismo nombre para el parámetro Nombre del informe de la configuración del conector.

  8. En la pestaña Datos, seleccione la consulta que se creó en los pasos anteriores como Fuente de datos.

  9. En la pestaña Parámetros, cambia el Formato del informe a csv para cumplir los requisitos del conector.

  10. Guarda el informe.

  11. Proporcione el nombre del informe en la configuración del conector del parámetro Nombre del informe.

  12. Haz una prueba para asegurarte de que el conector funciona correctamente.

Configurar la carpeta compartida de Google SecOps para ArcSight

Servidor de Google SecOps

  1. Busca UID y GID en el archivo /etc/passwd:

    cat /etc/passwd | grep scripting

    El resultado de ejemplo del comando es el siguiente:

    scripting:x:1001:1001:/home/scripting:/bin/bash

    UID es el tercer campo y GID es el cuarto en la salida del comando.

  2. Crea la secuencia de comandos:

    1. Crea un archivo y llámalo configure_smp_nfs.sh.

    2. Copia el siguiente contenido en ese archivo.

      #!/bin/bash
      
      #Declare the variables:
      uid=SCRIPTING_USER_UID
      gid=SCRIPTING_USER_GID
      arcsight_ip=ARCSIGHT_IP
      
      #Install nfs-utils
      yum install nfs-utils -y
      #Create the directory that will be shared
      mkdir /opt/Correlations
      #Change the permissions
      chmod -R 755 /opt/Correlations/
      chown -R scripting:scripting /opt/Correlations/
      #Start the services and enable them to be started at boot time
      systemctl enable rpcbind
      systemctl enable nfs-server
      systemctl enable nfs-lock
      systemctl enable nfs-idmap
      systemctl start rpcbind
      systemctl start nfs-server
      systemctl start nfs-lock
      systemctl start nfs-idmap
      
      #Edit the exports file as follows
      echo "/opt/Correlations/ $arcsight_ip(rw,sync,all_squash,anonuid=$uid,anongid=$gid)">>/etc/exports
      #Restart the NFS service and export the path
      systemctl restart nfs-server
      exportfs -a
      #If FirewallD is running add the next rules:
      firewall-cmd --permanent --zone=public --add-service=nfs
      firewall-cmd --permanent --zone=public --add-service=mountd
      firewall-cmd --permanent --zone=public --add-service=rpc-bind
      firewall-cmd --reload
      setsebool -P nfs_export_all_rw 1
      
    3. Declara las variables uid, gid y arcisght_ip según tu entorno.

    4. Concede los permisos:

      chmod +x configure_smp_nfs.sh

    5. Ejecuta la secuencia de comandos:

      ./configure_smp_nfs.sh

Servidor ArcSight

  1. Crea la secuencia de comandos:

    1. Crea un archivo y llámalo configure_smp_nfs.sh.

    2. Copia el siguiente contenido en ese archivo.

      #!/bin/bash
      #Declare the variables:
      siemplify_ip=SIEMPLIFY_IP
      
      #Install nfs-utils
      yum install nfs-utils -y
      #Start the services and enable them to be started at boot time
      systemctl enable rpcbind
      systemctl enable nfs-server
      systemctl enable nfs-lock
      systemctl enable nfs-idmap
      systemctl start rpcbind
      systemctl start nfs-server
      systemctl start nfs-lock
      systemctl start nfs-idmap
      #If FirewallD is running add the next rules:
      firewall-cmd --permanent --zone=public --add-service=nfs
      firewall-cmd --permanent --zone=public --add-service=mountd
      firewall-cmd --permanent --zone=public --add-service=rpc-bind
      firewall-cmd --reload
      #Create the NFS directory mount point
      mkdir -p /mnt/nfs/var/SiemShare
      #Add the values:
      echo "$siemplify_ip:/opt/Correlations /mnt/nfs/var/SiemShare nfs defaults 0 0">>/etc/fstab
      mount -a
      
    3. Declara la variable siemplify_ip según tu entorno.

Nota para los clientes que usan la ruta antigua

El instalador del paquete de revisiones sobrescribe el permiso de la carpeta /opt/siemplify/Correlations a siemplifyadmin.

Si estás usando la ruta antigua y vas a aplicar la actualización, debes volver a cambiar el permiso al usuario de scripting siguiendo estos pasos:

  1. Antes de iniciar la actualización, detén el servicio del servidor NFS:

    _systemctl stop nfs-server_

  2. Una vez que se haya completado la actualización, cambia los permisos de la carpeta:

    _chmod -R 755 /opt/siemplify/Correlations/_

    _chown -R scripting:scripting/opt/siemplify/Correlations/_

    _systemctl start nfs-server_

    _exportfs -a_

  3. Para confirmar que el servidor NFS funciona correctamente después de los cambios, comprueba su estado:

    _systemctl status nfs-server_

Crear y configurar un usuario para acceder a la API

  1. Inicia sesión en la consola de ArcSight.

  2. Crea un Google_SecOps_API grupo de usuarios y añade un Google_SecOps_API usuario a él. Google SecOps usará este usuario a través de la API de ArcSight ESM.

    1. Ve a la pestaña Atributos y asigna el valor Normal User al atributo Tipo de usuario.

    2. En la pestaña Recursos, haz clic con el botón derecho en el grupo de usuarios que has creado.

    3. En el menú, elige Editar control de acceso.

    4. En la ventana Inspeccionar/Editar del editor de LCA, haz lo siguiente:

      1. En la pestaña Eventos, añade el filtro que has creado anteriormente. Google_SecOps_Correlations_Filter También puede añadir cualquier filtro de origen para conceder acceso a Google SecOps.

      2. Usa la configuración predeterminada para las demás pestañas.

      3. Haz clic en Añadir, selecciona Sistema ArcSight > Core y marca la casilla Todos los eventos.

        Es importante verificar que la casilla Todos los eventos esté marcada. El requisito mínimo es incluir todos los eventos de correlación que se ingieran en Google SecOps.

Google Security Operations utiliza los siguientes métodos principales al usar la API de ArcSight ESM:

  • Servicio principal: Login, GetSession

  • Servicio de administrador: GetSecurityEvents

Acceso a la red con ArcSight ESM

Para acceder desde Google SecOps a ArcSight ESM, permite el tráfico a través de los puertos 443 (HTTPS) y 8443 (API a través de SSL), o según se haya configurado en tu entorno.

Para acceder de ArcSight ESM a Google SecOps, permite el tráfico a través de los puertos 445 y 139 (SMB/SAMBA/CIFS) o según se haya configurado en tu entorno.

Función Puertos Dirección Protocolo
NFS 111, 1039, 1047, 1048 y 2049 Salientes y entrantes UDP
NFS 111, 1039, 1047, 1048 y 2049 Salientes y entrantes TCP

Parámetros de integración

Para obtener instrucciones detalladas sobre cómo configurar una integración en Google SecOps, consulta Configurar integraciones.

Usa los siguientes parámetros para configurar la integración:

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Nombre de la instancia Cadena N/A No Nombre de la instancia en la que quiere configurar la integración.
Descripción Cadena N/A No Descripción de la instancia.
Raíz de la API Cadena https://{IP}:{PORT} Dirección del servidor de la instancia de ArcSight.
Nombre de usuario Cadena N/A Nombre de usuario de la cuenta de ArcSight.
Contraseña Contraseña N/A Contraseña de la cuenta de ArcSight.
Ejecutar de forma remota Casilla Desmarcada No Marca el campo para ejecutar la integración configurada de forma remota. Una vez marcada, aparece la opción para seleccionar al usuario remoto (agente).

Acciones

Añadir entradas a la lista activa

Descripción

Proporciona un mecanismo para obtener información de tendencias fuera de los informes y, además, Las listas activas actualizadas por tendencias admiten vistas de resumen de la información de varias tendencias.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Columnas Cadena N/A Ejemplo: Mensaje;NombreDeUsuario
Entradas Cadena N/A Ejemplo: prueba1|Yo1;Prueba|Yo2
UUID de la lista activa Cadena N/A Ejemplo: HCN75QGABABCZXCOdT9P51w==

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de la secuencia de comandos
Nombre del resultado del script Opciones de valor Ejemplo
is_succeed Verdadero o falso is_succeed:False

Cambiar fase del caso

Descripción

Cambiar la fase de un caso. Las fases válidas son INITIAL, QUEUED, CLOSED, FINAL y FOLLOW_UP.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Nombre del caso Cadena N/A El nombre del caso que se va a actualizar.
Fase Cadena N/A La fase del caso. Ejemplo: CLOSED, INITIAL

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de la secuencia de comandos
Nombre del resultado del script Opciones de valor Ejemplo
correcto Verdadero o falso success:False

Get Activelist Entries

Descripción

Recupera las entradas de la lista activa de ArcSight y devuelve la salida en formato CSV.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
UUID de la lista activa Cadena N/A Ejemplo: HTcILQWABABCr553ieI0Xmw==

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de la secuencia de comandos
Nombre del resultado del script Opciones de valor Ejemplo
Success_Indicator N/A N/A
Resultado de JSON
[
"12346e4d96f0a72c42015d69aaf0e8ab ,
 file.txt",
 "0e0776034e5e096704cd28cbd40cdbb5 ,
 Test.config"
]

Obtener resultados de consultas

Descripción

Obtiene los resultados de una consulta por su ID. Una consulta se puede usar como fuente de datos principal de un informe o como tendencia (basada en una consulta) que se puede usar como fuente de datos de otra consulta que refine aún más el resultado de la consulta inicial.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
ID de consulta Cadena N/A El ID de la consulta.
Número máximo de elementos que se devolverán Entero 100 No Especifica cuántos elementos quieres que se devuelvan en la respuesta.

Casos prácticos

Añade una limitación sobre el número de resultados que se devolverán.

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de la secuencia de comandos
Nombre del resultado del script Opciones de valor Ejemplo
correcto Verdadero o falso success:False
Resultado de JSON
[
    {
        "Target User Name": "user",
        "Attacker Address": "192.0.2.1",
        "External ID": "127",
        "Name": "A Kerberos authentication ticket (TGT) was requested.",
        "Target Address": "192.0.2.1"
    },{
        "Target User Name": "user",
        "Attacker Address": "192.0.2.1",
        "External ID": "127",
        "Name": "A Kerberos authentication ticket (TGT) was requested.",
        "Target Address": "192.0.2.1"
    }
]

Ver el informe

Descripción

Obtener un informe con campos dinámicos. Un informe es un recurso de ArcSight que vincula datos de una consulta o una tendencia a una plantilla de informe. Una vez ejecutado, los resultados de un informe se pueden ver en el panel de visualización de las consolas de ArcSight, guardar (archivar) o exportar en varios formatos. Los informes se pueden programar para que se generen a intervalos regulares y se pueden ejecutar bajo demanda según sea necesario.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Ruta completa del informe (URI) Cadena N/A El URI del informe pertinente.
Campo 2 Cadena N/A No Los campos dinámicos de la consulta para generar el informe.
Campo 3 Cadena N/A No Los campos dinámicos de la consulta para generar el informe.
Campo 4 Cadena N/A No Los campos dinámicos de la consulta para generar el informe.
Campo 6 Cadena N/A No Los campos dinámicos de la consulta para generar el informe.
Campo 6 Cadena N/A No Los campos dinámicos de la consulta para generar el informe.
Campo 7 Cadena N/A No Los campos dinámicos de la consulta para generar el informe.
Campo 8 Cadena N/A No Los campos dinámicos de la consulta para generar el informe.
Campo 9 Cadena N/A No Los campos dinámicos de la consulta para generar el informe.
Campo 10 Cadena N/A No Los campos dinámicos de la consulta para generar el informe.

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de la secuencia de comandos
Nombre del resultado del script Opciones de valor Ejemplo
json_report N/A N/A

Is Value in Activelist Column

Descripción

Comprueba si un valor específico está en la lista activa .

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
UUID de la lista activa Cadena N/A UUID de la lista activa. Ejemplo: cuser.
Nombre de la columna Cadena N/A Nombre de la columna. Por ejemplo, sourceUserName.

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de la secuencia de comandos
Nombre del resultado del script Opciones de valor Ejemplo
Success_Indicator N/A N/A

Ping

Descripción

Prueba de conectividad.

Parámetros

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de la secuencia de comandos
Nombre del resultado del script Opciones de valor Ejemplo
is_succeed Verdadero o falso is_succeed:False

Descripción

Puedes iniciar una búsqueda en el centro de comandos de ArcSight desde el canal de eventos de la consola. La búsqueda de eventos completados busca el atributo asociado, que se almacena en varios campos (por ejemplo, abc). La búsqueda de eventos busca un valor (por ejemplo, abc) almacenado en el campo especificado (por ejemplo, en el campo de nombre solamente).

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Consulta de búsqueda Cadena N/A La consulta de búsqueda.
Número máximo de elementos que se devolverán Entero 100 No Especifica cuántos elementos quieres que se devuelvan en la respuesta.

Casos prácticos

Añade una limitación sobre el número de resultados que se devolverán.

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de la secuencia de comandos
Nombre del resultado del script Opciones de valor Ejemplo
correcto Verdadero o falso success:False
Resultado de JSON
[
    {
        "score": 1.2440307,
        "uuid": "UUID",
        "uri": "/All_Fields/ArcSight_Foundation/Variables_Library/IPv6/Attacker_IPv6_Address",
        "name": "Attacker IPv6 Address"
    }, {
        "score": 1.2440307,
        "uuid": "UUID",
        "uri": "/All_Fields/ArcSight_Foundation/Variables_Library/IPv6/Attacker_IPv6_Address",
        "name": "Attacker IPv6 Address"
    }
]

Conectores

Para obtener instrucciones detalladas sobre cómo configurar un conector en Google SecOps, consulta el artículo Configurar el conector.

Conector de Arcsight ESM

Esta guía hace referencia a las versiones 6.9.1 y posteriores de ArcSight ESM.

Regla de ESM o reenvío de casos a Google SecOps

Trabajar con reglas o correlaciones activadas

Deberás configurar ArcSight ESM para que reenvíe los objetos de correlación más recientes a Google SecOps mientras configuras Google SecOps para que funcione en ArcSight ESM como proveedor de SIEM. También deberás proporcionar acceso a la API a ArcSight ESM a través de un usuario autorizado.

Esta función permite a Google SecOps recuperar cualquier regla activada en ArcSight ESM casi en tiempo real y reenviarla para que se traduzca y se contextualice como alerta para los casos.

Flujo de datos entre Google SecOps y ArcSight ESM

Google SecOps indexa y contextualiza automáticamente las correlaciones que se han reenviado a Google SecOps y que se han activado en ArcSight ESM a través del módulo ArcSight Forwarding Connector y del acceso a la API.

Priorización de la gravedad de los conectores

El conector asigna la gravedad con los siguientes valores de priorización:

  • 1 y 2: muy baja
  • 3 y 4 - bajo
  • 5 y 6 - Medio
  • 7 y 8 - alto
  • 9 y 10: crítico

Entradas de conectores

Utiliza los siguientes parámetros para configurar el conector:

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Entorno DDL N/A

Selecciona el entorno que quieras, por ejemplo, Cliente 1.

Si el campo de entorno de la alerta está vacío, la alerta se inyectará en este entorno.

Ejecutar cada Entero 0:0:0:10 No Selecciona la hora a la que quieres que se ejecute la conexión.
Nombre del campo de producto Cadena device_product No

Nombre del campo en el que se almacena el nombre del producto.

El valor predeterminado es device_product.

El nombre del producto influye principalmente en la asignación. Para optimizar y mejorar el proceso de asignación del conector, el valor predeterminado device_product se resuelve en un valor de reserva al que se hace referencia desde el código. Cualquier entrada no válida para este parámetro se resuelve en un valor de reserva de forma predeterminada.

Nombre del campo de evento Cadena name No Nombre del campo que se usa para determinar el nombre del evento (subtipo).
Tiempo de espera de secuencia de comandos (segundos) Cadena 500 No El límite de tiempo de espera (en segundos) del proceso de Python que ejecuta la secuencia de comandos actual.
Dirección del servidor Cadena N/A https://{IP}:{PORT}
Nombre de usuario Cadena N/A Nombre de usuario de la cuenta de ArcSight.
Contraseña Contraseña N/A La contraseña de la cuenta de ArcSight.
Límite de recuento de eventos Entero 15 Introduce el número máximo de eventos que se deben obtener por correlación. Limita el número de eventos (por ejemplo, 10).
Ruta de la carpeta de casos Cadena I:\SiemShare\CorrelationSource

La ubicación de los archivos del caso, como I:\SiemShare\CorrelationSource

Nota: El parámetro Ruta de la carpeta de casos se puede cambiar de un cliente a otro.

Ruta completa. Ejemplo: C:\Desktop\CorrelationSource

Límite de recuento de alertas Entero 10 Número máximo de alertas que se pueden procesar por ciclo de conector. Por ejemplo, 10.
Nombre del campo de entorno Cadena event.customerURI Nombre del campo para obtener el entorno del caso. Por ejemplo, event.customerUri.
Campo de producto del dispositivo secundario Cadena N/A No Sustituya el campo de producto original (de DeviceProductField del conector) por el valor del campo de producto secundario. Ejemplo: CustomDeviceString2
Nombres de campos personalizados de alerta Cadena N/A No Extrae valores de campos personalizados de ArcSight en la alerta, como baseEventCount, agent_address y device_assetId.
Días de conservación de archivos completados Entero 3 Número de días que se conservará cada archivo CSV DONE.
Días de conservación de los archivos de error Entero 14 Número de días que se conservará cada archivo CSV de ERROR.
Dirección del servidor proxy Cadena N/A No Dirección del servidor proxy que se va a usar.
Nombre de usuario del proxy Cadena N/A No Nombre de usuario del proxy para autenticarse.
Contraseña del proxy Contraseña N/A No La contraseña del proxy para autenticarte.

Reglas de conectores

El conector admite proxies.

ArcSight - Conector de eventos de seguridad

Extrae correlaciones de ArcSight. Este conector es adecuado para la implementación de SaaS de Google SecOps y es el que se recomienda para usar en producción.

Este conector requiere que se completen los pasos previos.

Entradas de conectores

Utiliza los siguientes parámetros para configurar el conector:

Nombre visible del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Nombre del campo de producto Cadena tipo

Nombre del campo en el que se almacena el nombre del producto.

El valor predeterminado es type.

El nombre del producto influye principalmente en la asignación. Para optimizar y mejorar el proceso de asignación del conector, el valor predeterminado type se resuelve en un valor de reserva al que se hace referencia desde el código. Cualquier entrada no válida para este parámetro se resuelve en un valor de reserva de forma predeterminada.

Nombre del campo de evento Cadena name

Nombre del campo que determina el nombre del evento (subtipo).

Nombre del campo de entorno Cadena "" No

Nombre del campo en el que se almacena el nombre del entorno.

Si falta el campo de entorno, el conector usa el valor predeterminado.

Environment Regex Pattern Cadena .* FALSO No

Patrón de expresión regular que se va a ejecutar en el valor encontrado en el campo Environment Field Name. Este parámetro te permite manipular el campo de entorno mediante la lógica de expresiones regulares.

Usa el valor predeterminado .* para obtener el valor sin formato Environment Field Name necesario.

Si el patrón de expresión regular es nulo o está vacío, o si el valor del entorno es nulo, el resultado final del entorno es el entorno predeterminado.

Tiempo de espera de secuencia de comandos (segundos) Entero 360

El límite de tiempo de espera, en segundos, del proceso de Python que ejecuta la secuencia de comandos actual.

Raíz de la API Cadena https://{ip} La raíz de la API de la instancia de ArcSight.
Nombre de usuario Cadena N/A Nombre de usuario de la cuenta de ArcSight.
Contraseña Contraseña N/A Contraseña de la cuenta de ArcSight.
Nombre del informe Cadena N/A Nombre del informe que se usará para obtener eventos.
Obtener eventos base Casilla Marcada Si se habilita, el conector también obtendrá eventos base.
Prioridad más baja para obtener Entero N/A No Prioridad más baja que se usará para obtener eventos. Los valores posibles están comprendidos entre 1 y 10. Si no se proporciona nada, se ingerirán todos los eventos.
Número máximo de eventos que se van a obtener Entero 100 No Número de alertas que se procesarán por iteración del conector. El máximo permitido es 1000.
Usar una lista dinámica como lista de bloqueo Casilla Marcada

Si se selecciona esta opción, el conector usará la lista dinámica como lista de bloqueo.

Verificar SSL Casilla Desmarcada Si se selecciona, la integración valida el certificado SSL al conectarse al servidor ArcSight.
Dirección del servidor proxy Cadena N/A No Dirección del servidor proxy que se va a usar.
Nombre de usuario del proxy Cadena N/A No Nombre de usuario del proxy para autenticarse.
Contraseña del proxy Contraseña No La contraseña del proxy para autenticarte.

Reglas de conectores

El conector admite proxies.

Empleo

Cerrar casos

El trabajo requiere los siguientes parámetros:

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Dirección del servidor Cadena 192.0.2.1 N/A
Nombre de usuario Cadena N/A N/A
Contraseña Contraseña N/A N/A

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