Recoger registros de CrowdStrike Falcon
En este documento se explica cómo ingerir registros de CrowdStrike Falcon en Google Security Operations de la siguiente manera:
- Recoge registros de CrowdStrike Falcon configurando un feed de Google Security Operations.
- Mapea los campos de registro de CrowdStrike Falcon con los campos del modelo de datos unificado (UDM) de Google SecOps.
- Familiarízate con los tipos de registros y eventos de CrowdStrike Falcon admitidos.
Para obtener más información, consulta la descripción general de la ingestión de datos en Google SecOps.
Antes de empezar
Asegúrate de que cumples los siguientes requisitos previos:
- Derechos de administrador en la instancia de CrowdStrike para instalar el sensor de host de CrowdStrike Falcon
- Todos los sistemas de la arquitectura de implementación están configurados en la zona horaria UTC.
- El dispositivo de destino tiene un sistema operativo compatible
- Debe ser un servidor de 64 bits
- Microsoft Windows Server 2008 R2 SP1 es compatible con la versión 6.51 o posterior del sensor de host de CrowdStrike Falcon.
- Las versiones antiguas del SO deben admitir la firma de código SHA-2.
 
- El archivo de cuenta de servicio de Google SecOps y tu ID de cliente del equipo de Asistencia de Google SecOps
Desplegar CrowdStrike Falcon con la integración de feeds de Google SecOps
Una implementación típica consta de CrowdStrike Falcon, que envía los registros, y el feed de Google SecOps, que los obtiene. Tu implementación puede variar ligeramente en función de tu configuración.
La implementación suele incluir los siguientes componentes:
- CrowdStrike Falcon Intelligence: el producto de CrowdStrike del que recoges los registros.
- Feed de CrowdStrike. El feed de CrowdStrike que obtiene registros de CrowdStrike y los escribe en Google SecOps.
- CrowdStrike Intel Bridge: el producto de CrowdStrike que recoge indicadores de amenazas de la fuente de datos y los reenvía a Google SecOps.
- Google SecOps: la plataforma que conserva, normaliza y analiza los registros de detección de CrowdStrike.
- Un analizador de etiquetas de ingestión que normaliza los datos de registro sin procesar en formato UDM. La información de este documento se aplica a los analizadores de CrowdStrike Falcon con las siguientes etiquetas de ingestión:
- CS_EDR
- CS_DETECTS
- CS_IOCEl analizador de indicadores de compromiso (IoC) de CrowdStrike admite los siguientes tipos de indicadores:- domain
- email_address
- file_name
- file_path
- hash_md5
- hash_sha1
- hash_sha256
- ip_address
- mutex_name
- url
 
- CS_ALERTSEl analizador de alertas de CrowdStrike admite los siguientes tipos de productos:- epp
- idp
- overwatch
- xdr
- mobile
- cwpp
- ngsiem
 
 
Configurar un feed de Google SecOps para los registros de EDR de CrowdStrike
Para configurar el feed, debes seguir los procedimientos que se indican a continuación.
Cómo configurar CrowdStrike
Para configurar un feed de Falcon Data Replicator, sigue estos pasos:
- Inicia sesión en la consola de CrowdStrike Falcon.
- Ve a Aplicaciones de asistencia > Falcon Data Replicator.
- Haga clic en Añadir para crear un nuevo feed de Falcon Data Replicator y generar los siguientes valores:
- Feed
- Identificador de S3
- URL de SQS
 
- Secreto de cliente. Guarda estos valores para configurar un feed en Google SecOps.
Para obtener más información, consulta Cómo configurar el feed de replicador de datos de Falcon.
Configurar feeds
Hay dos puntos de entrada diferentes para configurar feeds en la plataforma Google SecOps:
- Configuración de SIEM > Feeds > Añadir nuevo feed
- Centro de contenido > Paquetes de contenido > Empezar
Cómo configurar el feed de CrowdStrike Falcon
- Haz clic en el paquete CrowdStrike.
- En el tipo de registro CrowdStrike Falcon, especifique los valores de los siguientes campos: - Fuente: Amazon SQS
- Región: la región de S3 asociada al URI.
- Nombre de la cola: nombre de la cola de SQS de la que se van a leer los datos de registro.
- URI de S3: el URI de origen del segmento de S3.
- Número de cuenta: el número de cuenta de SQS.
- ID de clave de acceso a la cola: ID de clave de acceso a la cuenta de 20 caracteres. Por ejemplo, AKIAOSFOODNN7EXAMPLE.
- Clave de acceso secreta de la cola: clave de acceso secreta de 40 caracteres. Por ejemplo, wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY.
- Opción de eliminación de la fuente: opción para eliminar archivos y directorios después de transferir los datos.
 - Opciones avanzadas - Nombre del feed: un valor rellenado automáticamente que identifica el feed.
- Espacio de nombres de recursos: espacio de nombres asociado al feed.
- Etiquetas de ingestión: etiquetas aplicadas a todos los eventos de este feed.
 
- Haga clic en Crear feed. 
Para obtener más información sobre cómo configurar varios feeds para diferentes tipos de registros en esta familia de productos, consulta el artículo Configurar feeds por producto.
Configurar un feed de ingestión con un segmento de Amazon S3
Para configurar un feed de ingestión mediante un contenedor de S3, sigue estos pasos:
- Ve a Configuración de SIEM > Feeds.
- Haz clic en Añadir feed.
- En la página siguiente, haga clic en Configurar un solo feed.
- En el campo Nombre del feed, introduce un nombre para el feed; por ejemplo, Registros de Crowdstrike Falcon.
- En Tipo de fuente, selecciona Amazon S3.
- En Tipo de registro, selecciona CrowdStrike Falcon.
- En función de la cuenta de servicio y de la configuración del contenedor de Amazon S3 que hayas creado, especifica los valores de los siguientes campos:
Campo Descripción regionURI de la región de S3. S3 uriURI de origen del segmento de S3. uri is aTipo de objeto al que apunta el URI (por ejemplo, archivo o carpeta). source deletion optionOpción para eliminar archivos y directorios después de transferir los datos. access key idClave de acceso (cadena alfanumérica de 20 caracteres). Por ejemplo, AKIAOSFOODNN7EXAMPLE.secret access keyClave de acceso secreta (cadena alfanumérica de 40 caracteres). Por ejemplo, wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY.oauth client idID de cliente de OAuth público. oauth client secretSecreto de cliente de OAuth 2.0. oauth secret refresh uriURI de actualización del secreto de cliente de OAuth 2.0. asset namespaceEspacio de nombres asociado al feed. 
Configurar un feed de Google SecOps para los registros de CrowdStrike
Para reenviar los registros de monitorización de detecciones de CrowdStrike, sigue estos pasos:
- Inicia sesión en la consola de CrowdStrike Falcon.
- Ve a Aplicaciones de asistencia > Clientes y claves de API .
- Crea un nuevo par de claves de cliente de API en CrowdStrike Falcon. Este par de claves debe tener permisos de READparaDetectionsyAlertsde CrowdStrike Falcon.
Ingerir registros mediante Cloud Storage para los registros de EDR de CrowdStrike
Puedes configurar CrowdStrike para que envíe registros de EDR a un contenedor de Cloud Storage y, a continuación, ingerir estos registros en Google SecOps mediante un feed. Este proceso requiere la coordinación con el equipo de Asistencia de CrowdStrike.
Antes de empezar
- Asegúrate de que tienes una instancia activa de CrowdStrike Falcon.
- Asegúrate de tener un Google Cloud proyecto en el que puedas crear segmentos de Cloud Storage y gestionar permisos de gestión de identidades y accesos.
- Asegúrate de que tienes una instancia de Google SecOps activa.
- Asegúrate de tener derechos de administrador tanto en tu entorno de Google Cloud como en tu instancia de Google SecOps.
Pasos
- Ponte en contacto con el equipo de Asistencia de CrowdStrike: abre una incidencia con CrowdStrike para habilitar y configurar la función que envía los registros de EDR a tu segmento de Cloud Storage. El equipo de Asistencia de CrowdStrike te indicará las configuraciones específicas que necesitas. 
- Crea y asigna permisos al segmento de Cloud Storage: - En la Google Cloud consola, crea un segmento en Cloud Storage.
Anota el nombre del contenedor (por ejemplo, gs://my-crowdstrike-edr-logs/).
- Concede permisos de escritura a la cuenta de servicio o a la entidad proporcionada por CrowdStrike. Sigue las instrucciones del equipo de Asistencia de CrowdStrike para permitir que se escriban archivos de registro en este segmento con este permiso.
 
- En la Google Cloud consola, crea un segmento en Cloud Storage.
Anota el nombre del contenedor (por ejemplo, 
- Configura el feed de Google SecOps: - En tu instancia de Google SecOps, ve a Configuración de SIEM > Feeds.
- Haz clic en Add New (Añadir).
- Introduzca un nombre del feed descriptivo (por ejemplo, CS-EDR-GCS).
- En Tipo de fuente, selecciona Google Cloud Storage V2.
- En Tipo de registro, selecciona CrowdStrike Falcon.
- En la sección de la cuenta de servicio, haz clic en Obtener cuenta de servicio. Copia la dirección de correo única de la cuenta de servicio que se muestra.
- En la Google Cloud consola, vaya a su segmento de Cloud Storage.
Asigna el rol de gestión de identidades y accesos Storage Object Viewera la dirección de correo de la cuenta de servicio que has copiado de la configuración de la feed de Google SecOps. Este permiso permite que el feed lea los archivos de registro.
- Vuelve a la página de configuración de feeds de Google SecOps.
- Introduzca la URL del bucket de almacenamiento con el nombre del bucket que ha creado (por ejemplo, gs://my-crowdstrike-edr-logs/). Esta URL debe terminar con una barra inclinada (/).
- Selecciona una opción de eliminación de la fuente:
- No eliminar archivos nunca: recomendado.
- Eliminar archivos transferidos y directorios vacíos: úsalo con precaución.
 
- Opcional: Especifica un espacio de nombres de recursos.
- Haga clic en Siguiente, revise la configuración y, a continuación, haga clic en Enviar.
 
- Verificar la ingestión de registros: una vez que CrowdStrike confirme que se están enviando los registros, espera un tiempo para que los datos se ingieran en Google SecOps. Busca los registros entrantes con el tipo de registro - CROWDSTRIKE_EDRen Google SecOps.
Si tienes algún problema, revisa los permisos de IAM en el segmento de Cloud Storage y la configuración del feed en Google SecOps. Si los problemas persisten, ponte en contacto con el equipo de Asistencia de SecOps de Google.
Para recibir registros de monitorización de detecciones de CrowdStrike, sigue estos pasos
- Inicia sesión en tu instancia de Google SecOps.
- Ve a Configuración de SIEM > Feeds.
- Haz clic en Añadir feed.
- En la página siguiente, haga clic en Configurar un solo feed.
- En el campo Nombre del feed, introduce un nombre para el feed; por ejemplo, Registros de Crowdstrike Falcon.
- En Tipo de fuente, selecciona API de terceros.
- En Tipo de registro, selecciona Monitorización de detecciones de CrowdStrike.
Si tienes algún problema, ponte en contacto con el equipo de Asistencia de SecOps de Google.
Ingerir registros de IoCs de CrowdStrike en Google SecOps
Para configurar la ingestión de registros de CrowdStrike en Google SecOps para los registros de IoC, siga estos pasos:
- Crea un nuevo par de claves de cliente de API en la consola de CrowdStrike Falcon. Este par de claves permite que Google SecOps Intel Bridge acceda a eventos e información complementaria de CrowdStrike Falcon y los lea. Para obtener instrucciones de configuración, consulta CrowdStrike to Google SecOps Intel Bridge.
- Proporciona permiso READaIndicators (Falcon Intelligence)cuando crees el par de claves.
- Configura Google SecOps Intel Bridge siguiendo los pasos que se indican en CrowdStrike to Google SecOps Intel Bridge (Puente de Intel de CrowdStrike a Google SecOps).
- Ejecuta los siguientes comandos de Docker para enviar los registros de CrowdStrike a Google SecOps, donde - sa.jsones el archivo de la cuenta de servicio de Google SecOps:- docker build . -t ccib:latest docker run -it --rm \ -e FALCON_CLIENT_ID="$FALCON_CLIENT_ID" \ -e FALCON_CLIENT_SECRET="$FALCON_CLIENT_SECRET" \ -e FALCON_CLOUD_REGION="$FALCON_CLOUD" \ -e CHRONICLE_CUSTOMER_ID="$CHRONICLE_CUSTOMER_ID" \ -e GOOGLE_APPLICATION_CREDENTIALS=/ccib/sa.json \ -v ~/my/path/to/service/account/filer/sa.json:/ccib/sa.json \ ccib:latest
- Una vez que el contenedor se ejecute correctamente, los registros de IoC empezarán a enviarse a Google SecOps. 
Configurar un feed de Google SecOps para los registros de alertas de CrowdStrike
Para configurar un feed de ingestión de registros de alertas de CrowdStrike, siga estos pasos:
En la consola de CrowdStrike Falcon:
- Inicia sesión en la consola de CrowdStrike Falcon.
- En la página Clientes y claves de API (Asistencia y recursos > Recursos y herramientas > Clientes y claves de API), haz clic en Crear cliente de API.
- Introduce los detalles para definir tu cliente de API:
- Nombre de cliente
- Descripción
- Permisos de la API : marca las casillas Lectura y Escritura junto al permiso Alertas para habilitar el acceso.
 
- Haz clic en Crear para guardar el cliente de API y generar el ID de cliente y el secreto. Nota: El ID de cliente, el secreto y la URL base se usarán en pasos posteriores.
En la instancia de Google SecOps:
- Inicia sesión en tu instancia de Google SecOps.
- En el menú de Google SecOps, seleccione Configuración y, a continuación, haga clic en Feeds.
- Haz clic en Añadir feed.
- En Tipo de fuente, selecciona API de terceros.
- En Tipo de registro, selecciona API de alertas de CrowdStrike.
- Haz clic en Siguiente y rellena los siguientes campos con los valores recogidos del cliente de la API de CrowdStrike:
- Endpoint de token de OAuth
- ID de cliente de OAuth
- Secreto de cliente de OAuth
- URL base
 
- Haz clic en Siguiente y, a continuación, en Enviar.
Si tienes algún problema, ponte en contacto con el equipo de Asistencia de SecOps de Google.
Delta de asignación de UDM para registros de alertas de CrowdStrike
Referencia de delta de asignación de UDM: CS_ALERTS
En la siguiente tabla se muestra la diferencia entre el analizador predeterminado de CS ALERTS y la versión premium de CS ALERTS.
| Default UDM Mapping | Log Field | Premium Mapping Delta | 
|---|---|---|
| about.resource.product_object_id | cid | Removed mapping to avoid duplication, as the cidlog field is also mapped tometadata.product_deployment_id. | 
| principal.asset.platform_software.platform | platform | If the device.platform_namelog field value is empty and theplatformlog field value is not empty and if theplatformlog field value matches the regular expression pattern(?i)Windowsthen, theprincipal.asset.platform_software.platformUDM field is set toWINDOWS. Else, ifplatformlog field value matches the regular expression pattern(?i)Linuxthen, theprincipal.asset.platform_software.platformUDM field is set toLINUX. Else, ifplatformlog field value matches the regular expression pattern(?i)Macthen, theprincipal.asset.platform_software.platformUDM field is set toMAC. Else, ifplatformlog field value matches the regular expression pattern(?i)iosthen, theprincipal.asset.platform_software.platformUDM field is set toIOS. | 
| security_result.detection_fields[agent_id] | agent_id | If the device.device_idlog field value is empty and thehost_idlog field value is empty and themdm_device_idlog field value is empty then,CS:%{agent_id}log field is mapped to theprincipal.asset_idUDM field.Else, the principal.asset.attribute.labels.keyUDM field is set toagent_idandagent_idlog field is mapped to theprincipal.asset.attribute.labels.valueUDM field. | 
| security_result.detection_fields[idp_policy_account_event_type] | idp_policy_account_event_type | security_result.rule_labels[idp_policy_account_event_type] | 
| security_result.detection_fields[idp_policy_mfa_factor_type] | idp_policy_mfa_factor_type | security_result.rule_labels[idp_policy_mfa_factor_type] | 
| security_result.detection_fields[idp_policy_mfa_provider_name] | idp_policy_mfa_provider_name | security_result.rule_labels[idp_policy_mfa_provider_name] | 
| security_result.detection_fields[idp_policy_mfa_provider] | idp_policy_mfa_provider | security_result.rule_labels[idp_policy_mfa_provider] | 
| security_result.detection_fields[idp_policy_rule_action] | idp_policy_rule_action | security_result.rule_labels[idp_policy_rule_action] | 
| security_result.detection_fields[idp_policy_rule_trigger] | idp_policy_rule_trigger | security_result.rule_labels[idp_policy_rule_trigger] | 
| security_result.detection_fields[idp_policy_rule_id] | idp_policy_rule_id | security_result.rule_id | 
| security_result.detection_fields[idp_policy_rule_name] | idp_policy_rule_name | security_result.rule_name | 
| target.process.file.mime_type | alleged_filetype | If the technique_namelog field value contain one of the following values
 alleged_filetypelog field is mapped to thetarget.file.mime_typeUDM field.Else, alleged_filetypelog field is mapped to thetarget.process.file.mime_typeUDM field. | 
| principal.resource.product_object_id | device.cid | principal.asset.attribute.labels[device_cid] | 
| security_result.detection_fields[active_directory_dn_display] | device.hostinfo.active_directory_dn_display | Iterate through log field device.hostinfo.active_directory_dn_display, thenthe security_result.detection_fields.keyUDM field is set todevice_hostinfo_active_directory_dn_displayanddevice.hostinfo.active_directory_dn_displaylog field is mapped to thesecurity_result.detection_fields.valueUDM field. | 
| principal.asset.platform_software.platform | device.platform_name | If the device.platform_namelog field value is not empty and if thedevice.platform_namelog field value matches the regular expression pattern(?i)Windowsthen, theprincipal.asset.platform_software.platformUDM field is set toWINDOWS. Else, ifdevice.platform_namelog field value matches the regular expression pattern(?i)Linuxthen, theprincipal.asset.platform_software.platformUDM field is set toLINUX. Else, ifdevice.platform_namelog field value matches the regular expression pattern(?i)Macthen, theprincipal.asset.platform_software.platformUDM field is set toMAC. Else, ifdevice.platform_namelog field value matches the regular expression pattern(?i)iosthen, theprincipal.asset.platform_software.platformUDM field is set toIOS. if theplatformlog field value is not empty and thedevice.platform_namelog field value is equal tothe then, theprincipal.asset.attribute.labels.keyUDM field is set toplatformandplatformlog field is mapped to theprincipal.asset.attribute.labels.valueUDM field. | 
| principal.asset.platform_software.platform_version | device.system_product_name | principal.asset.hardware.model | 
| target.process.file.names | filename | If the technique_namelog field value contain one of the following values
 filenamelog field is mapped to thetarget.file.namesUDM field.Else, filenamelog field is mapped to thetarget.process.file.namesUDM field. | 
| target.file.full_path | filepath | If the technique_namelog field value contain one of the following values
 filepathlog field is mapped to thetarget.file.full_pathUDM field.Else, filepathlog field is mapped to thetarget.process.file.full_pathUDM field.If the productlog field value is equal toeppand thetypelog field value is equal toofpand if themacros.ioc_descriptionlog field value is not empty then,macros.ioc_descriptionlog field is mapped to thetarget.file.full_pathUDM field and thesecurity_result.detection_fields.keyUDM field is set tofilepathandfilepathlog field is mapped to thesecurity_result.detection_fields.valueUDM field. | 
| target.process_ancestors.command_line | grandparent_details.cmdline | target.process.parent_process.parent_process.command_line | 
| target.process_ancestors.file.names | grandparent_details.filename | target.process.parent_process.parent_process.file.names | 
| target.process_ancestors.file.full_path | grandparent_details.filepath | target.process.parent_process.parent_process.file.full_path | 
| target.process_ancestors.file.md5 | grandparent_details.md5 | target.process.parent_process.parent_process.file.md5 | 
| target.process_ancestors.product_specific_process_id | grandparent_details.process_graph_id | If the grandparent_details.process_graph_idlog field value is not empty then,PRODUCT_SPECIFIC_PROCESS_ID: %{grandparent_details.process_graph_id}log field is mapped to thetarget.process.parent_process.parent_process.product_specific_process_idUDM field. | 
| target.process_ancestors.pid | grandparent_details.process_id | target.process.parent_process.parent_process.pid | 
| target.process_ancestors.file.sha256 | grandparent_details.sha256 | target.process.parent_process.parent_process.file.sha256 | 
| security_result.detection_fields[ioc_description] | ioc_context.ioc_description | Iterate through log field ioc_context, thenthe security_result.detection_fields.keyUDM field is set toioc_context_ioc_descriptionandioc_context.ioc_descriptionlog field is mapped to thesecurity_result.detection_fields.valueUDM field. | 
| security_result.detection_fields[ioc_source] | ioc_context.ioc_source | Iterate through log field ioc_context, thenthe security_result.detection_fields.keyUDM field is set toioc_context_ioc_sourceandioc_context.ioc_sourcelog field is mapped to thesecurity_result.detection_fields.valueUDM field. | 
| target.process.file.md5 | md5 | If the technique_namelog field value contain one of the following values
 md5log field is mapped to thetarget.file.md5UDM field.Else, md5log field is mapped to thetarget.process.file.md5UDM field. | 
| target.process.file.sha1 | sha1 | If the technique_namelog field value contain one of the following values
 sha1log field is mapped to thetarget.file.sha1UDM field.Else, sha1log field is mapped to thetarget.process.file.sha1UDM field. | 
| target.file.sha256 | sha256 | If the technique_namelog field value contain one of the following values
 sha256log field is mapped to thetarget.file.sha256UDM field.Else, sha256log field is mapped to thetarget.process.file.sha256UDM field.If the productlog field value is equal toeppand thetypelog field value is equal toofpand if theioc_typelog field value is equal tohash_sha256and themacros.ioc_valuelog field value is not empty then,macros.ioc_valuelog field is mapped to thetarget.file.sha256UDM field and thesecurity_result.detection_fields.keyUDM field is set tosha256andsha256log field is mapped to thesecurity_result.detection_fields.valueUDM field. | 
| target.asset.platform_software.platform | operating_system | If the operating_systemlog field value matches the regular expression pattern(?i)Windowsthen, theprincipal.asset.platform_software.platformUDM field is set toWINDOWS.Else, if operating_systemlog field value matches the regular expression pattern(?i)linuxthen, theprincipal.asset.platform_software.platformUDM field is set toLINUX.Else, if operating_systemlog field value matches the regular expression pattern(?i)iosthen, theprincipal.asset.platform_software.platformUDM field is set toIOS.Else, if operating_systemlog field value matches the regular expression pattern(?i)macthen, theprincipal.asset.platform_software.platformUDM field is set toMAC. | 
| security_result.detection_fields[agent_version] | agent_version | principal.asset.attribute.labels[agent_version] | 
| about.email | enrollment_email | principal.user.email_addresses | 
| principal.asset.type |  | If the mdm_device_idlog field value is not empty or themobile_hardwarelog field value is not empty or themobile_manufacturerlog field value is not empty or themobile_seriallog field value is not empty then, theprincipal.asset.typeUDM field is set toMOBILE. | 
Formatos de registro de CrowdStrike admitidos
El analizador de CrowdStrike admite registros en formato JSON.
¿Necesitas más ayuda? Recibe respuestas de los miembros de la comunidad y de los profesionales de Google SecOps.