Recopila registros de Cohesity

Compatible con:

Descripción general

Este analizador extrae campos de los mensajes de syslog del software de copia de seguridad de Cohesity con patrones de grok. Controla los mensajes de syslog estándar y los registros con formato JSON, asignando campos extraídos a la UDM y asignando de forma dinámica un event_type según la presencia de identificadores principales y de destino.

Antes de comenzar

  • Asegúrate de tener una instancia de Google SecOps.
  • Asegúrate de tener acceso con privilegios a la administración de Cohesity.

Configura un feed en Google SecOps para transferir los registros de Cohesity

  1. Ve a Configuración de SIEM > Feeds.
  2. Haz clic en Agregar nueva.
  3. En el campo Nombre del feed, ingresa un nombre para el feed (por ejemplo, Registros de Cohesity).
  4. Selecciona Webhook como el Tipo de origen.
  5. Selecciona Cohesity como el Tipo de registro.
  6. Haz clic en Siguiente.
  7. Opcional: Especifica valores para los siguientes parámetros de entrada:
    • Delimitador de división: Es el delimitador que se usa para separar las líneas de registro, como \n.
    • Espacio de nombres de recursos: Es el espacio de nombres de recursos.
    • Etiquetas de transferencia: Es la etiqueta que se aplica a los eventos de este feed.
  8. Haz clic en Siguiente.
  9. Revisa la configuración del feed en la pantalla Finalizar y, luego, haz clic en Enviar.
  10. Haz clic en Generate Secret Key para generar una clave secreta que autentique este feed.
  11. Copia y almacena la clave secreta. No podrás volver a ver esta clave secreta. Si es necesario, puedes volver a generar una clave secreta nueva, pero esta acción hace que la clave secreta anterior quede obsoleta.
  12. En la pestaña Detalles, copia la URL del extremo del feed del campo Información del extremo. Debes especificar esta URL de extremo en tu aplicación cliente.
  13. Haz clic en Listo.

Crea una clave de API para el feed de webhook

  1. Ve a consola de Google Cloud > Credenciales.

    Ir a Credenciales

  2. Haz clic en Crear credenciales y selecciona Clave de API.

  3. Restringe el acceso de la clave de API a la API de Chronicle.

Especifica la URL del extremo

  1. En tu aplicación cliente, especifica la URL del extremo HTTPS que se proporciona en el feed de webhook.
  2. Habilita la autenticación especificando la clave de API y la clave secreta como parte del encabezado personalizado en el siguiente formato:

    X-goog-api-key = API_KEY
    X-Webhook-Access-Key = SECRET
    

    Recomendación: Especifica la clave de API como un encabezado en lugar de hacerlo en la URL.

  3. Si tu cliente de webhook no admite encabezados personalizados, puedes especificar la clave de API y la clave secreta con parámetros de consulta en el siguiente formato:

    ENDPOINT_URL?key=API_KEY&secret=SECRET
    

    Reemplaza lo siguiente:

    • ENDPOINT_URL: Es la URL del extremo del feed.
    • API_KEY: Es la clave de API para autenticar en Google SecOps.
    • SECRET: Es la clave secreta que generaste para autenticar el feed.

Cómo configurar un webhook en Cohesity para Google SecOps

  1. Accede a la administración del clúster de Cohesity.
  2. Ve a la sección Tareas de protección.
  3. Selecciona el trabajo de protección para el que deseas configurar el webhook.
  4. Haz clic en el menú Acciones (tres puntos verticales) junto al trabajo de protección > Editar.
  5. Selecciona la pestaña Alertas.
  6. Haz clic en + Agregar webhook.
  7. Especifica valores para los siguientes parámetros:
    • Nombre: Proporciona un nombre descriptivo para el webhook (por ejemplo, Google SecOps).
    • URL: Ingresa el <ENDPOINT_URL> de Google SecOps.
    • Método: Selecciona POST.
    • Tipo de contenido: Selecciona application/json.
    • Carga útil: Este campo depende de los datos específicos que deseas enviar.
    • Habilitar webhook: Marca la casilla para habilitar el webhook.
  8. Guarda la configuración: Haz clic en Guardar para aplicar la configuración del webhook al trabajo de protección.

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
ClientIP principal.asset.ip Se asigna directamente desde el campo ClientIP.
ClientIP principal.ip Se asigna directamente desde el campo ClientIP.
description security_result.description Se asigna directamente desde el campo description.
DomainName target.asset.hostname Se asigna directamente desde el campo DomainName.
DomainName target.hostname Se asigna directamente desde el campo DomainName.
EntityPath target.url Se asigna directamente desde el campo EntityPath.
host principal.asset.hostname Se asigna directamente desde el campo host.
host principal.hostname Se asigna directamente desde el campo host. Se copia del campo ts después de que se analiza en una marca de tiempo. Se determina según la lógica del analizador en función de la presencia de principal_mid_present, target_mid_present y principal_user_present. Valores posibles: NETWORK_CONNECTION, USER_UNCATEGORIZED, STATUS_UPDATE, GENERIC_EVENT. Se codifica de forma fija en "Cohesity".
product_event_type metadata.product_event_type Se asigna directamente desde el campo product_event_type. Se codifica de forma fija en "COHESITY".
pid principal.process.pid Se asigna directamente desde el campo pid.
Protocol network.application_protocol Se asigna directamente desde el campo Protocol y se convierte a mayúsculas.
RecordID additional.fields (clave: "RecordID", valor: RecordID) Se asigna directamente desde el campo RecordID, anidado en additional.fields.
RequestType security_result.detection_fields (clave: "RequestType", valor: RequestType) Se asigna directamente desde el campo RequestType, anidado en security_result.detection_fields.
Result security_result.summary Se asigna directamente desde el campo Result.
sha_value additional.fields (clave: "SHA256", valor: sha_value) Se asigna directamente desde el campo sha_value, anidado en additional.fields.
target_ip target.asset.ip Se asigna directamente desde el campo target_ip.
target_ip target.ip Se asigna directamente desde el campo target_ip.
target_port target.port Se asignó directamente desde el campo target_port y se convirtió en número entero.
Timestamp metadata.collected_timestamp Se asigna directamente desde el campo Timestamp después de que se analiza en una marca de tiempo.
ts events.timestamp Se asigna directamente desde el campo ts después de que se analiza en una marca de tiempo.
UserID principal.user.userid Se asigna directamente desde el campo UserID y se convierte en una cadena.
UserName principal.user.user_display_name Se asigna directamente desde el campo UserName.
UserSID principal.user.windows_sid Se asigna directamente desde el campo UserSID.

Cambios

2024-09-24

  • Se quitó "gsub" para dar formato a los registros JSON.

2024-09-10

  • Se agregó "gsub" para quitar caracteres no deseados del registro.
  • Se asignó "prin_ip" a "principal.ip".

2024-07-28

  • Se asignaron "EntityId" y "RegisteredSource.EntityId" a "principal.user.userid".
  • Se asignaron "Description" y "EventMessage" a "metadata.description".
  • Se asignó "IP" a "principal.ip" y "principal.asset.ip".
  • Se asignó "Usuario" a "principal.user.user_display_name".
  • Se asignaron "Action, "Domain, "ServiceContext, "AttributeMap.AttemptNum, "cluster_id, "cluster_name, "ClusterInfo.ClusterId, "ClusterInfo.ClusterName, "TaskId, "EntityName, "EntityType, "BackupJobId, "BackupJobName, "EnvironmentType, "RegisteredSource.EntityName, "RegisteredSource.EntityType, "AttributeMap.BridgeConstituent, "ReplicationTarget.ClusterName y "ReplicationTarget.ClusterId a "additional.fields".

2024-05-16

  • Sin embargo, el analizador se creó recientemente.