Optimiza el volumen de la transferencia

En esta guía, se explica cómo optimizar el volumen de transferencia enfocándose en la configuración de las canalizaciones de procesamiento de datos de Google Security Operations. Esta capacidad proporciona una forma unificada de filtrar, transformar y ocultar datos antes de que se ingieran por completo, independientemente de la fuente. Este método mejora la calidad de los datos y la eficiencia de la detección de amenazas.

La guía está dirigida a ingenieros de seguridad, analistas de Google SecOps y administradores de la nube que administran la transferencia de registros a Google SecOps.

Transferir grandes volúmenes de registros sin filtrar puede agotar tu presupuesto y tus recursos. Esto genera un aumento de los costos, capacidades de búsqueda y análisis más lentas, y una mayor probabilidad de que los analistas de seguridad pasen por alto alertas críticas en medio de una gran cantidad de datos irrelevantes. El filtrado eficaz es fundamental para una implementación de Google SecOps rentable y eficiente.

Antes de comenzar

Asegúrate de tener o hacer lo siguiente:

  • Un rol de Identity and Access Management (IAM): Ya sea el rol predefinido de la API de Chronicle Admin (roles/chronicle.admin) o un rol personalizado que contenga uno de estos permisos:
    • chronicle.logProcessingPipelines.*
    • chronicle.logTypes.get
    • chronicle.logTypes.list
    • chronicle.feeds.get
    • chronicle.feeds.list
    • chronicle.logs.list
  • Versión de Bindplane: Necesitas la versión 1.96.4 o posterior de la consola de Bindplane Server.
  • En Bindplane Cloud, se admite la federación de identidades para cargas de trabajo (WIF) para la autenticación. Las implementaciones de Bindplane alojadas por el usuario requieren credenciales de clave JSON de la cuenta de servicio.
  • Acceso a la consola de administración de Bindplane o a las APIs de Google SecOps Data Pipeline para configurar los nodos del procesador
  • Identifica los campos, los tipos de registros y las condiciones precisos que se necesitan para configurar los procesadores Filter, Transform y Redact para reducir el volumen.
  • Define las entradas de transmisión de la canalización haciendo coincidir los tipos de registros específicos, los IDs de recopiladores (para las fuentes de Bindplane) o los nombres de los feeds (para los feeds de datos) asociados con tus métodos de transferencia.
  • Si ingieres registros de Google Cloud , define los filtros de exportación de Logging necesarios para implementar el filtrado upstream y lograr el máximo ahorro de costos antes de que los datos lleguen a la canalización de SecOps.
  • Comprende tus datos de registro:
    • Identifica los registros de gran volumen o bajo valor: Analiza tus métricas de transferencia actuales para identificar qué tipos y fuentes de registros contribuyen más al volumen y al costo. Para obtener más información, consulta la Descripción general de las métricas de transferencia.
    • Determina los criterios de filtrado: Determina los campos, valores, patrones (regex) o condiciones específicos que identifican de manera confiable los registros que se deben descartar, transformar o censurar.
    • Conoce tus métodos de transferencia: Comprende cómo se transfiere cada fuente del archivo de registro de destino (Directo, Bindplane, Feed, API), ya que esto afecta la forma en que configuras el flujo de la canalización.

Terminología clave

  • Canalizaciones de procesamiento de datos: Es una capacidad que se usa para filtrar, transformar y ocultar datos de registro a medida que llegan, antes de que se almacenen y se indexen.
  • Filtro/filtrado: Es la capacidad principal para la optimización del volumen, que define condiciones para descartar de forma selectiva los eventos que no son necesarios para el análisis de seguridad.
  • Transformar: Es una capacidad que se usa para modificar los formatos de registro y mejorar la usabilidad, por ejemplo, quitar nombres de dominio completamente calificados (FQDN) o borrar campos detallados dentro de los eventos.
  • Redact: Es una función para enmascarar o quitar por completo la información sensible de los registros antes de que se almacenen, lo que ayuda con el cumplimiento y la privacidad.
  • Agente de BindPlane: Es un método de transferencia para los registros recopilados de sistemas locales o de otros sistemas en la nube.
  • Feeds: Es un método de transferencia para los datos que se importan de fuentes, como Cloud Storage, Amazon S3 o APIs de terceros.
  • APIs de transferencia: Es un método para enviar datos de registro personalizados que permite el filtrado del servidor con canalizaciones de procesamiento de datos.
  • Filtrado upstream: Es la práctica recomendada para filtrar los registros Google Cloud en la fuente con filtros de exportación de Logging para optimizar el ahorro de costos.
  • Flujos: Es un flujo específico de datos, definido por el tipo de registro y la fuente de transferencia (como un feed o una API), que sirve como entrada para una canalización de procesamiento de datos.
  • Nodo de procesador: Es un componente dentro de una canalización que contiene uno o más procesadores (acciones de filtrado, transformación o redacción) que manipulan los datos de forma secuencial.
  • Destino: Es el extremo de la canalización de procesamiento de datos, que suele ser la instancia de Google SecOps a la que se envían los datos procesados para su análisis y transferencia final.

Usa canalizaciones de procesamiento de datos para la optimización

Las canalizaciones de procesamiento de datos en Google SecOps ofrecen un control sólido previo al análisis sobre tu proceso de transferencia de datos. Te permiten definir reglas y acciones que se aplican a los registros a medida que llegan, antes de que se almacenen y se indexen. Para obtener más información, consulta Configura y administra canalizaciones de procesamiento de datos.

Funciones clave

  • Filtro: Es el enfoque principal para la optimización del volumen. Puedes definir condiciones con contenido de registro sin procesar, atributos o expresiones regulares para descartar de forma selectiva los eventos que no se requieren para el análisis de seguridad. Esto es fundamental para reducir el ruido y los costos.
  • Transformar: Modifica los formatos de registro para mejorar la usabilidad o quitar los datos innecesarios dentro de los eventos. Entre los ejemplos, se incluyen quitar los FQDN de los nombres de host, analizar y reestructurar las cargas útiles de JSON, o bien borrar los campos detallados, pero irrelevantes.
  • Ocultar: Enmascara o quita por completo la información sensible, como la información de identificación personal (PII), de los registros antes de que se almacenen, lo que ayuda a cumplir con los requisitos de privacidad y cumplimiento.

Aplicabilidad universal

Una ventaja clave de las canalizaciones de procesamiento de datos es que se pueden aplicar a datos de cualquier método de transferencia. Esto proporciona una capa de filtrado coherente para lo siguiente:

  • Registros integrados deGoogle Cloud
  • Registros recopilados con el agente de BindPlane
  • Datos obtenidos a través de Feeds
  • Registros personalizados enviados a través de las APIs de transferencia

Para obtener más información, consulta la sección Estrategias de filtrado específicas del método en esta guía.

Implementa el filtrado con canalizaciones de procesamiento de datos

Paso 1: Configura tu canalización

Puedes configurar y administrar canalizaciones de procesamiento de datos a través de la consola de administración de Bindplane o con las APIs públicas de Google SecOps Data Pipeline. Te permiten definir transmisiones (entradas), configurar nodos de procesador (Filter, Transform, Redact) y administrar la implementación de la canalización.

Para obtener instrucciones de configuración completas, consulta Configura y administra canalizaciones de procesamiento de datos.

Paso 2: Configura los procesadores para el filtrado

Dentro de una canalización, puedes agregar procesadores a un nodo. Para reducir el volumen, debes usar principalmente procesadores de filtros. Puedes configurar estos procesadores para descartar registros según condiciones o expresiones regulares. Puedes configurar condiciones y sentencias de canalización personalizadas con la sintaxis de OTTL (lenguaje de transformación de OpenTelemetry).

  • Condiciones: Evalúan campos o atributos en los datos de registro.
  • Expresiones regulares: Patrones coincidentes dentro del mensaje de registro sin procesar.
  • Ejemplo de OTTL: Un ejemplo de instrucción sería set(attributes["labels.myLabel.value"], "myValue").

Si bien el filtrado es clave, también puedes considerar usar procesadores de Transformación para quitar campos grandes e innecesarios de los registros que conserves, y usar procesadores de Redacción para anular los datos sensibles.

Paso 3: Estrategias de filtrado específicas para cada método

En las siguientes secciones, se explica cómo abordar el filtrado con las canalizaciones de procesamiento de datos para cada tipo de transferencia principal.

Registros deGoogle Cloud

  • Filtrado upstream (práctica recomendada): Para optimizar el ahorro de costos, Google recomienda filtrar los registros Google Cloud en la fuente con filtros de exportación de Cloud Logging. Esto evita que se envíen registros no deseados a Google SecOps. Si es necesario, puedes usar canalizaciones de procesamiento de datos para realizar filtrados adicionales. Para obtener más información, consulta la guía de datos de Ingest Google Cloud , en especial la sección Personaliza la configuración del filtro de exportación.

  • Aplicación de canalización: Configura una canalización de procesamiento de datos y selecciona el Google Cloud tipo de registro y el método de transferencia adecuados, ya sea Directo o Nativo de Cloud. Define procesadores de filtros para descartar los registros no deseados según el contenido.

Agente de BindPlane

Los registros recopilados por el agente de BindPlane, ya sea de sistemas locales o de otros sistemas en la nube, se pueden filtrar con una canalización de procesamiento de datos. Configura el flujo para que coincida con los tipos de registros y los IDs de recopiladores asociados con tus fuentes de Bindplane. Para obtener más información, consulta Usa Bindplane con Google SecOps.

Feeds de datos

En el caso de los datos que se transfieren con Feeds (por ejemplo, desde Cloud Storage, Amazon S3 o APIs de terceros), puedes aplicar filtros de canalización de procesamiento de datos seleccionando el nombre del feed y el tipo de registro cuando configures la transmisión de la canalización. Para obtener más información, consulta la guía Trabaja con feeds.

Métodos de transferencia de la API de Chronicle

Si envías datos con los métodos de transferencia de la API de Chronicle, aún puedes aprovechar las canalizaciones de procesamiento de datos. Configura el flujo de la canalización para que coincida con el tipo de registro que usas en tus llamadas a la API. Esto permite el filtrado del servidor de tus transmisiones de registros personalizadas. Para obtener más información, consulta la guía Métodos de transferencia de datos a la API de Chronicle.

Prácticas recomendadas

  • Filtra los datos de origen cuando sea posible: Como se mencionó para Google Cloud, siempre filtra los registros lo más cerca posible de la fuente. Este es el enfoque más rentable, ya que reduce la sobrecarga del procesamiento y la transferencia de datos.
  • Sé específico: Comienza con filtros estrechos y bien definidos para excluir los registros conocidos de gran volumen y bajo valor. Evita los filtros demasiado amplios que podrían descartar accidentalmente datos útiles.
  • Itera y define mejor: Revisa con regularidad la eficacia de tus filtros. ¿Captan los eventos correctos? ¿Hay ruido nuevo que se deba filtrar?
  • Documenta tus filtros: Mantén un registro de los filtros que se aplican y por qué, especialmente para las expresiones regulares complejas o la lógica condicional.

Verificación y pruebas

  • Pruebas: Primero, debes probar tus filtros en un entorno que no sea de producción o con un subconjunto pequeño de datos.
  • Valida los filtros: Usa las funciones de prueba en el editor de canalizaciones de la consola de Bindplane. Esto te permite ingresar registros de muestra y ver el resultado después de que se apliquen los procesadores, lo que confirma que los filtros funcionan según lo previsto.
  • Supervisa la transferencia: Después de implementar las canalizaciones, supervisa los paneles de transferencia en Google SecOps para observar el impacto en el volumen y los costos de los datos. Para obtener más información, consulta la Descripción general de las métricas de transferencia.
  • Ver configuraciones: Puedes ver todas las configuraciones en la IU de Google SecOps en Configuración del SIEM > Procesamiento de datos.
  • Administración externa: Puedes buscar configuraciones y hacer clic en "Abrir en Bindplane" para ir directamente a la consola de Bindplane y realizar una administración avanzada.

Limitaciones

  • Límites de servicio: Las expresiones regulares demasiado complejas o una gran cantidad de procesadores por canalización pueden afectar el rendimiento o estar sujetos a límites. Consulta los límites de Google SecOps en Límites del servicio.
  • Paquetes de Google SecOps: Asegúrate de conocer las funciones y capacidades de tu paquete de Google SecOps. Para obtener más información, consulta Paquetes de Google SecOps.
  • Reutilización: Si bien es potente, la configuración de una canalización para un tipo o una fuente de registro podría no ser directamente reutilizable para otro sin ajustes.
  • Procesadores máximos: Define un máximo de 10 procesadores por canalización.
  • Rendimiento de regex: Evita la coincidencia excesiva de expresiones regulares, ya que puede provocar que la creación o implementación de la canalización falle debido a tiempos de espera agotados. Es preferible analizar los datos en JSON y filtrarlos por campos específicos.
  • Restricción de asociación de transmisión: Si bien se pueden crear diferentes canalizaciones para diferentes feeds del mismo tipo de registro, la misma definición de transmisión (p.ej., el mismo feed o el mismo tipo de registro general) no se puede asociar con más de una canalización activa. Si configuras un tipo de registro como Todos los métodos de transferencia, se actuará como un receptor de todos los registros y se evitará la configuración de otras canalizaciones para feeds específicos de ese tipo de registro.

¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.