Configura analizadores personalizados
En este documento, se proporciona orientación para crear analizadores personalizados en los casos en que no hay un analizador compilado previamente disponible o cuando deseas tener más control. Los analizadores personalizados aparecen en la lista de analizadores, junto con los analizadores prediseñados.
Los casos de uso comunes incluyen los siguientes:
Ingiere datos de registro para un tipo de registro que no tiene un analizador compilado previamente.
Usa uno de los siguientes métodos:
Crea un analizador personalizado para omitir las actualizaciones del analizador compilado previamente.
Limitaciones y operaciones no admitidas
Cuando crees y administres analizadores personalizados, ten en cuenta los siguientes límites operativos:
- Sintaxis del analizador en comparación con las reglas de detección de YARA-L: Los analizadores de transferencia y las extensiones de analizador usan la sintaxis de configuración y Grok de Logstash con filtros (por ejemplo,
grok,mutate,json,dateybase64) en el momento de la transferencia para analizar los registros sin procesar en el modelo de datos unificado (UDM). Los analizadores no pueden usar la sintaxis de YARA-L, los bloques de resultados ni las funciones de generador (comoyield). YARA-L 2.0 es estrictamente un lenguaje de consultas del motor de detección que se evalúa de forma posterior en eventos de UDM normalizados para las alertas de amenazas y no puede analizar registros sin procesar, mutar campos de UDM ni descartar el tráfico de registros entrante. - Modelo de transferencia 1:1: Los analizadores personalizados de Google SecOps operan estrictamente en una relación 1:1. Los analizadores personalizados no pueden separar por lotes, repetir ni dividir una sola entrada de registro que contenga varios eventos incorporados (como arrays JSON o cadenas concatenadas) en eventos de UDM separados. Debes dividir las cargas útiles de varios eventos antes de la transferencia con canalizaciones de recopilación de registros, como BindPlane OP, OpenTelemetry Collector, Fluent Bit o una función de Cloud Run previa a la transferencia.
- Comportamiento del filtro
drop {}: El filtrodrop {}en un analizador solo suprime la generación de eventos de UDM. Cuando un analizador descarta un registro, Google SecOps no crea un registro de UDM y las reglas de detección no pueden evaluar el evento. Sin embargo, Google SecOps conserva el registro sin procesar original en el repositorio sin procesar inmutable para el cumplimiento y la retención de auditorías. El registro sin procesar se puede seguir buscando a través de la Búsqueda de registros sin procesar. Para descartar los registros antes del almacenamiento, configura el filtrado de forma ascendente en tu reenviador o recopilador. - Análisis solo hacia adelante de forma predeterminada: Cuando activas un analizador personalizado, este se aplica solo a los registros que se transfieren recientemente desde el momento de la activación. Si existe una necesidad comercial crítica de aplicar asignaciones de analizador personalizadas a los registros históricos existentes, puedes solicitar una tarea de reproducción de registros de backend. Para obtener más información, consulta Cómo volver a analizar datos históricos (repetición de registros).
Crea un analizador personalizado basado en instrucciones de asignación
Puedes crear un analizador personalizado escribiendo código que convierta el registro sin procesar original en un registro de UDM.
Lecturas adicionales:
- Para obtener más información sobre la estructura de un analizador, consulta Descripción general del análisis de registros.
- Para obtener más información sobre la sintaxis del analizador, consulta la referencia de sintaxis del analizador.
Cuando crees un analizador, intenta completar la mayor cantidad posible de campos importantes del UDM.
Ve a Configuración.
Ve a Configuración de SIEM.
Haz clic en Create Parser.
Selecciona una fuente de registro adecuada en la lista Fuente de registro.
Selecciona Comienza solo con registros sin procesar para crear un analizador nuevo según tus requisitos.
Haz clic en Crear.
Ingresa tu código en la terminal de código del analizador. Para obtener más información, consulta Cómo crear una instrucción de asignación de fragmentos de código.
Nota: Asegúrate de que la lógica de tu analizador personalizado asigne y genere correctamente marcas de tiempo válidas y actuales. Si un analizador personalizado asigna de forma incorrecta las marcas de tiempo a una fecha fuera de tu período de retención estándar, los datos se transferirán correctamente, pero no se podrán buscar en la interfaz de usuario. Dado que las funciones de búsqueda dependen de las marcas de tiempo de los eventos para filtrar, los datos asignados a una fecha incorrecta son efectivamente invisibles a pesar de que se hayan transferido correctamente.
Opcional: Haz clic en Editar para editar el registro sin procesar existente o la copia.
Opcional: Haz clic en Cargar para cargar el registro sin procesar más reciente.
Haz clic en Vista previa para ver el resultado del UDM. Si el código es incorrecto, se mostrará un mensaje de error.
En la vista previa, puedes usar el complemento de filtro statedump para validar el estado interno de un analizador. Para obtener más información, consulta Valida datos con el complemento statedump.
Haz clic en Validar para validar el analizador personalizado.
El proceso de validación puede tardar unos minutos, por lo que te recomendamos que primero obtengas una vista previa del analizador personalizado, realices los cambios necesarios y, luego, lo valides.
Haz clic en Enviar.
El analizador se activa para el proceso de normalización después de 20 minutos.
Crea un analizador personalizado basado en un analizador existente
Usa un analizador existente como plantilla para crear un nuevo analizador personalizado. Este método solo admite el enfoque basado en código. Para comenzar, sigue estos pasos:
En el menú de la aplicación, selecciona Configuración > Analizadores.
Haz clic en Create Parser.
Selecciona una fuente de registro adecuada en la lista Fuente de registro.
Selecciona Comienza con un analizador predefinido existente para usar un analizador existente como base para crear un nuevo analizador personalizado.
Haz clic en Crear.
Edita tu código en la terminal de código del analizador. Para obtener más información, consulta Cómo crear una instrucción de asignación de fragmentos de código.
Opcional: Haz clic en Editar para editar el registro sin procesar.
Opcional: Haz clic en Actualizar para actualizar el registro sin procesar.
A medida que agregues código para compilar el analizador, haz clic en Vista previa para ver el resultado del UDM. Si el código es incorrecto, se mostrará un mensaje de error.
En la vista previa, puedes usar el complemento de filtro statedump para validar el estado interno de un analizador. Para obtener más información, consulta Cómo validar datos con el complemento statedump.
Haz clic en Validar para validar el analizador personalizado.
El proceso de validación puede tardar unos minutos, por lo que te recomendamos que primero obtengas una vista previa del analizador personalizado, realices los cambios necesarios y, luego, valides el analizador personalizado.
Haz clic en Enviar.
El analizador se activa para el proceso de normalización después de 20 minutos.
Cómo desactivar un analizador personalizado
En el menú de la aplicación, selecciona Configuración > Analizadores.
Haz clic en Menú junto al analizador que deseas inhabilitar y selecciona Inhabilitar en la lista.
Aparecerá el diálogo Make parser inactive.
Haz clic en Inactivar.
El analizador personalizado se desactiva y la versión actual del analizador precompilado se activa después de 20 minutos. El analizador compilado previamente ahora se convierte en el analizador predeterminado.
Cómo borrar un analizador personalizado
En el menú de la aplicación, selecciona Configuración > Analizadores.
Haz clic en Menú junto al analizador personalizado que deseas borrar y selecciona Borrar en la lista. Nota: No puedes borrar un analizador sintáctico prediseñado.
Aparecerá el diálogo Borrar el analizador personalizado.
Haz clic en Borrar.
El analizador personalizado se borra y se activa la versión actual del analizador precompilado después de 20 minutos.
Crea una extensión
Las extensiones de analizador proporcionan una forma flexible de extender las capacidades de los analizadores personalizados existentes. No reemplazan a los analizadores personalizados. En cambio, permiten la extracción sin problemas de campos adicionales del registro sin procesar original en el registro del UDM. Una extensión de analizador es diferente de un analizador personalizado.
Para crear una extensión de analizador, consulta Cómo usar extensiones de analizador.
Estado de validación
En la columna Validación, se muestra el estado de la prueba de validación para el analizador personalizado o para la extensión del analizador.
- Error del analizador: No se pudo realizar la validación del analizador personalizado
- Se validó el analizador: Se realizó correctamente la validación del analizador personalizado
- Omitido: No se validó el analizador personalizado
- Se omitió para la extensión: No se validó la extensión del analizador
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.