Recoger registros de Lacework Cloud Security

Disponible en:

Información general

Este analizador extrae campos de los registros JSON de Lacework Cloud Security y los transforma en formato UDM. Asigna campos de registro sin procesar a campos de UDM, gestiona varios tipos de datos y enriquece el evento con contexto adicional de las etiquetas. Por último, clasifica el tipo de evento en función de la presencia de información principal y de destino.

Antes de empezar

Asegúrate de que cumples los siguientes requisitos previos:

  • Instancia de Google Security Operations.
  • Acceso privilegiado a FortiCNAPP Lacework.

Configurar feeds

Para configurar un feed, sigue estos pasos:

  1. Ve a Configuración de SIEM > Feeds.
  2. Haz clic en Añadir feed.
  3. En la página siguiente, haga clic en Configurar un solo feed.
  4. En el campo Nombre del feed, introduce un nombre para el feed (por ejemplo, Registros de Lacework).
  5. Selecciona Webhook como Tipo de fuente.
  6. Seleccione Lacework como Tipo de registro.
  7. Haz clic en Siguiente.
  8. Opcional: Especifica los valores de los siguientes parámetros de entrada:
    • Delimitador de división: el delimitador que se usa para separar las líneas de registro, como \n.
  9. Haz clic en Siguiente.
  10. Revise la configuración del feed en la pantalla Finalizar y, a continuación, haga clic en Enviar.
  11. Haz clic en Generar clave secreta para generar una clave secreta que autentique este feed.
  12. Copia y guarda la clave secreta. No podrás volver a ver esta clave secreta. Si es necesario, puedes volver a generar una clave secreta, pero esta acción hará que la clave secreta anterior quede obsoleta.
  13. En la pestaña Detalles, copia la URL del endpoint del feed del campo Información del endpoint. Debes especificar esta URL de endpoint en tu aplicación cliente.
  14. Haz clic en Listo.

Crear una clave de API para la feed de webhook

  1. Ve a la consolaGoogle Cloud > Credenciales.

    Ir a Credenciales

  2. Haz clic en Crear credenciales y, a continuación, selecciona Clave de API.

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

Especificar la URL del endpoint

  1. En tu aplicación cliente, especifica la URL del endpoint HTTPS proporcionada en el feed de webhook.
  2. Para habilitar la autenticación, especifica la clave de API y la clave secreta como parte del encabezado personalizado con el siguiente formato:

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

    Recomendación: Especifica la clave de API como 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 mediante parámetros de consulta con el siguiente formato:

    ENDPOINT_URL?key=API_KEY&secret=SECRET
    

    Haz los cambios siguientes:

    • ENDPOINT_URL: URL del endpoint del feed.
    • API_KEY: la clave de API para autenticarte en Google SecOps.
    • SECRET: la clave secreta que has generado para autenticar el feed.

Configurar un webhook de Lacework para Google SecOps

  1. Inicia sesión en la consola de Lacework FortiCNAPP con privilegios de administrador.
  2. Ve a Ajustes > Notificaciones > Canales de alerta.
  3. Haga clic en + Añadir.
  4. Selecciona Webhook.
  5. Haz clic en Siguiente.
  6. Especifica un nombre único para el canal (por ejemplo, Google SecOps).
  7. URL del webhook: introduce <ENDPOINT_URL> seguido de <API_KEY> y <SECRET>.
  8. Haz clic en Guardar.
  9. Selecciona Reglas de alerta y configura los detalles de la ruta de alerta que necesites.

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
AGENT_VERSION metadata.product_version Se asigna directamente desde el campo AGENT_VERSION.
CREATED_TIME metadata.event_timestamp Se asigna directamente desde el campo CREATED_TIME y se convierte en una marca de tiempo.
FILEDATA_HASH target.file.sha256 Se asigna directamente desde el campo FILEDATA_HASH.
FILE_PATH target.file.full_path Se asigna directamente desde el campo FILE_PATH.
IP_ADDR principal.ip Se asigna directamente desde el campo IP_ADDR.
OS target.platform Asignado desde el campo OS. Logic convierte varias cadenas de SO (Linux, Windows y Mac) en valores de enumeración de UDM (LINUX, WINDOWS y MAC). El valor predeterminado es UNKNOWN_PLATFORM si no se encuentra ninguna coincidencia.
STATUS additional.fields[].key:"STATUS", value.string_value Se asigna directamente desde el campo STATUS como campo adicional.
TAGS.Account metadata.product_deployment_id Se asigna directamente desde el campo TAGS.Account.
TAGS.AmiId additional.fields[].key:"AmiId", value.string_value Se asigna directamente desde el campo TAGS.AmiId como campo adicional.
TAGS.ExternalIp target.ip Se asigna directamente desde el campo TAGS.ExternalIp.
TAGS.Hostname principal.hostname Se asigna directamente desde el campo TAGS.Hostname.
TAGS.InstanceId target.asset_id Se asigna directamente desde el campo TAGS.InstanceId, con el prefijo "ID de instancia de dispositivo: ".
TAGS.LwTokenShort additional.fields[].key:"LwTokenShort", value.string_value Se asigna directamente desde el campo TAGS.LwTokenShort como campo adicional.
TAGS.MID additional.fields[].key:"MID", value.string_value Se asigna directamente desde el campo MID como campo adicional.
TAGS.MODE additional.fields[].key:"MODE", value.string_value Se asigna directamente desde el campo MODE como campo adicional.
TAGS.Name additional.fields[].key:"Name", value.string_value Se asigna directamente desde el campo TAGS.Name como campo adicional.
TAGS.QSConfigName-vfzg0 additional.fields[].key:"QSConfigName", value.string_value Se asigna directamente desde el campo TAGS.QSConfigName-vfzg0 como campo adicional.
TAGS.ResourceType target.resource.resource_subtype Se asigna directamente desde el campo TAGS.ResourceType.
TAGS.SubnetId target.resource.attribute.labels[].key:"Subnet Id", value Se asigna directamente desde el campo TAGS.SubnetId como una etiqueta en target.resource.attribute.
TAGS.VmInstanceType target.resource.attribute.labels[].key:"VmInstanceType", value Se asigna directamente desde el campo TAGS.VmInstanceType como una etiqueta en target.resource.attribute.
TAGS.VmProvider target.resource.attribute.labels[].key:"VmProvider", value Se asigna directamente desde el campo TAGS.VmProvider como una etiqueta en target.resource.attribute.
TAGS.VpcId target.resource.product_object_id Se asigna directamente desde el campo TAGS.VpcId.
TAGS.Zone target.cloud.availability_zone Se asigna directamente desde el campo TAGS.Zone.
TAGS.alpha.eksctl.io/nodegroup-name additional.fields[].key:"eksctl_nodegroup_name", value.string_value Se asigna directamente desde el campo TAGS.alpha.eksctl.io/nodegroup-name como campo adicional.
TAGS.alpha.eksctl.io/nodegroup-type additional.fields[].key:"eksctl_nodegroup_type", value.string_value Se asigna directamente desde el campo TAGS.alpha.eksctl.io/nodegroup-type como campo adicional.
TAGS.arch principal.platform_version Se asigna directamente desde el campo TAGS.arch.
TAGS.aws:autoscaling:groupName additional.fields[].key:"autoscaling_groupName", value.string_value Se asigna directamente desde el campo TAGS.aws:autoscaling:groupName como campo adicional.
TAGS.aws:ec2:fleet-id additional.fields[].key:"ec2_fleetid", value.string_value Se asigna directamente desde el campo TAGS.aws:ec2:fleet-id como campo adicional.
TAGS.aws:ec2launchtemplate:id additional.fields[].key:"ec2launchtemplate_id", value.string_value Se asigna directamente desde el campo TAGS.aws:ec2launchtemplate:id como campo adicional.
TAGS.aws:ec2launchtemplate:version additional.fields[].key:"ec2launchtemplate_ver", value.string_value Se asigna directamente desde el campo TAGS.aws:ec2launchtemplate:version como campo adicional.
TAGS.aws:eks:cluster-name additional.fields[].key:"eks_cluster_name", value.string_value Se asigna directamente desde el campo TAGS.aws:eks:cluster-name como campo adicional.
TAGS.enableCrowdStrike additional.fields[].key:"enableCrowdStrike", value.string_value Se asigna directamente desde el campo TAGS.enableCrowdStrike como campo adicional.
TAGS.falconx.io/application additional.fields[].key:"io/application", value.string_value Se asigna directamente desde el campo TAGS.falconx.io/application como campo adicional.
TAGS.falconx.io/environment additional.fields[].key:"io/environment", value.string_value Se asigna directamente desde el campo TAGS.falconx.io/environment como campo adicional.
TAGS.falconx.io/managedBy additional.fields[].key:"io/managedBy", value.string_value Se asigna directamente desde el campo TAGS.falconx.io/managedBy como campo adicional.
TAGS.falconx.io/project additional.fields[].key:"io/project", value.string_value Se asigna directamente desde el campo TAGS.falconx.io/project como campo adicional.
TAGS.falconx.io/proxy-type additional.fields[].key:"io/proxy_type", value.string_value Se asigna directamente desde el campo TAGS.falconx.io/proxy-type como campo adicional.
TAGS.falconx.io/service additional.fields[].key:"io/service", value.string_value Se asigna directamente desde el campo TAGS.falconx.io/service como campo adicional.
TAGS.falconx.io/team additional.fields[].key:"io/team", value.string_value Se asigna directamente desde el campo TAGS.falconx.io/team como campo adicional.
TAGS.k8s.io/cluster-autoscaler/enabled additional.fields[].key:"k8s_autoscaler_enabled", value.string_value Se asigna directamente desde el campo TAGS.k8s.io/cluster-autoscaler/enabled como campo adicional.
TAGS.k8s.io/cluster-autoscaler/falcon additional.fields[].key:"k8s_cluster_autoscaler", value.string_value Se asigna directamente desde el campo TAGS.k8s.io/cluster-autoscaler/falcon como campo adicional.
TAGS.kubernetes.io/cluster/falcon additional.fields[].key:"kubernetes_io_cluster", value.string_value Se asigna directamente desde el campo TAGS.kubernetes.io/cluster/falcon como campo adicional.
TAGS.lw_KubernetesCluster additional.fields[].key:"lw_KubernetesCluster", value.string_value Se asigna directamente desde el campo TAGS.lw_KubernetesCluster como campo adicional.
LAST_UPDATE additional.fields[].key:"LAST_UPDATE", value.string_value Se asigna directamente desde el campo LAST_UPDATE como campo adicional. Codificado como "LACEWORK". Codificado como "Lacework Cloud Security".
metadata.event_type metadata.event_type Determinado por la lógica. Se asigna el valor "NETWORK_CONNECTION" si están presentes principal.ip y target.ip, "STATUS_UPDATE" si solo está presente principal.ip y "GENERIC_EVENT" en los demás casos.

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