5 beneficios de la detección como código


TL;RD:

Adopte una metodología moderna basada en pruebas para proteger su organización con la detección como código.

Durante la última década, la detección de amenazas se ha vuelto crítica para el negocio y aún más complicada. A medida que las empresas se trasladan a la nube, los procesos manuales de detección de amenazas ya no pueden mantenerse al día. ¿Cómo pueden los equipos automatizar el análisis de seguridad a escala y abordar los desafíos que amenazan los objetivos comerciales? La respuesta radica en tratar las detecciones de amenazas como software o detección como código.

Vea el seminario web bajo demanda de Panther: Escalamiento de la seguridad con detección como código con Cedar para descubrir cómo Cedar usa Panther para aprovechar la detección como código para crear alertas de señal alta.

Detección como código: un nuevo (esperanza) paradigma Las detecciones definen la lógica para analizar los datos de registro de seguridad para identificar los comportamientos de los atacantes. Cuando se coincide con una regla, se envía una alerta a su equipo para su contención o investigación.

¿Qué es la detección como código?

La detección como código es un enfoque moderno, flexible y estructurado para escribir detecciones que aplican las mejores prácticas de ingeniería de software a la seguridad. Al adoptar este nuevo paradigma, los equipos pueden crear procesos escalables para escribir y fortalecer las detecciones para identificar amenazas sofisticadas en entornos de rápida expansión.

Beneficios de adoptar un flujo de trabajo basado en código

Los programas de detección de amenazas que están ajustados para entornos y sistemas específicos son los más impactantes. Al tratar las detecciones como código bien escrito que se puede probar, verificar en el control de código fuente y revisar el código por pares, los equipos pueden producir alertas de mayor calidad que reducen la fatiga y señalan rápidamente actividades sospechosas.

1 — Cree detecciones personalizadas y flexibles con un lenguaje de programación

    Escribir detecciones en un lenguaje expresivo, flexible y universalmente reconocido como Python ofrece varias ventajas en lugar de usar lenguajes específicos de dominio (DSL) que son demasiado limitados. Con lenguajes como Python, puede escribir detecciones más sofisticadas y personalizadas para satisfacer las necesidades específicas de su empresa. Estas reglas también tienden a ser más legibles y fáciles de entender a medida que aumenta la complejidad.

    Otro beneficio de este enfoque es utilizar un amplio conjunto de bibliotecas integradas o de terceros desarrolladas por la comunidad de seguridad para interactuar con API o procesar datos, lo que aumenta la efectividad de la detección.

    2 — Desarrollo basado en pruebas (TDD)

      Un control de calidad adecuado para el código de detección puede permitir que los equipos descubran los puntos ciegos de detección desde el principio, cubran las pruebas de alertas falsas y promuevan la eficacia de la detección. Un enfoque TDD permite a los equipos de seguridad pensar como un atacante, documentar ese conocimiento y seleccionar un repositorio interno de información sobre el ciclo de vida del atacante.

      La ventaja de TDD es más que solo la validación de la corrección del código. Un enfoque TDD para escribir detecciones mejora la calidad del código de detección y permite detecciones más modulares, extensibles y flexibles. Los ingenieros pueden realizar cambios fácilmente en su detección sin temor a romper alertas o paralizar las operaciones diarias.

      3 Colaboración con Sistemas de Control de Versiones

      Al escribir nuevas detecciones o modificarlas, el control de versiones permite a los equipos volver rápida y fácilmente a estados anteriores. También confirma que los equipos están utilizando la detección más actualizada en lugar de hacer referencia a un código obsoleto o incorrecto. El control de versiones también puede ayudar a brindar el contexto necesario para detecciones específicas que activaron una alerta o ayudar a identificar cuándo se modifican las detecciones.

      A medida que ingresan datos nuevos y adicionales al sistema con el tiempo, las detecciones también deben cambiar. Un proceso de control de cambios es esencial para ayudar a los equipos a abordar y ajustar las detecciones según sea necesario, al tiempo que garantiza que todos los cambios estén bien documentados y revisados.

      4 Flujos de trabajo automatizados para detecciones confiables

      Una canalización de integración continua/implementación continua (CI/CD) puede ser beneficiosa para los equipos de seguridad que durante mucho tiempo han querido mover la seguridad más hacia la izquierda. El uso de una canalización de CI/CD ayuda a lograr los siguientes dos objetivos:

      • Elimine los silos entre los equipos mientras trabajan juntos en una plataforma común, revisan el código del trabajo de los demás y se mantienen organizados.
      • Proporcione pruebas automatizadas y canalizaciones de entrega para sus detecciones de seguridad. Los equipos pueden mantenerse ágiles centrándose en crear detecciones precisas. En lugar de probar, implementar y garantizar manualmente que las detecciones no estén demasiado ajustadas, lo que podría desencadenar alertas falsas.

      5 Código reutilizable

      Por último, pero no menos importante, la detección como código puede promover la reutilización del código en un gran conjunto de detecciones. A medida que los equipos escriben una gran cantidad de detecciones a lo largo del tiempo, comienzan a ver cómo surgen patrones específicos. Los ingenieros pueden reutilizar el código existente para realizar la misma función o una muy similar en diferentes detecciones sin comenzar desde cero.

      La reutilización del código puede ser una parte vital de la escritura de detección que permite a los equipos compartir funciones entre detecciones o modificar y adaptar detecciones para casos de uso específicos. Por ejemplo, suponga que necesita repetir un conjunto de listas Permitir/Denegar (digamos para la administración de acceso) o una lógica de procesamiento particular en varios lugares. En ese caso, puede usar ayudantes en lenguajes como Python para compartir funciones entre detecciones.

      Introducción a Pantera

      Panther es una plataforma de análisis de seguridad diseñada para aliviar los problemas de los SIEM tradicionales. Panther está diseñado para ingenieros de seguridad, por ingenieros de seguridad. En lugar de inventar otro lenguaje propietario para expresar la lógica de detección, Panther ofrece a los equipos de seguridad un motor de reglas de Python para escribir una detección de amenazas expresiva y automatizar la detección y la respuesta a escala de la nube. El enfoque modular y abierto de Panther ofrece integraciones sencillas y detecciones flexibles para ayudarlo a construir una canalización de operaciones de seguridad moderna.

      Flujo de trabajo de detección como código en Panther

      Pantera ofrece detecciones fiables y resistentes que pueden facilitar:

      • Escriba detecciones expresivas y flexibles en Python para las necesidades específicas de su empresa.
      • Estructure y normalice los registros en un esquema estricto que permita detecciones con Python y consultas con SQL.
      • Realice la detección de amenazas en tiempo real y las investigaciones de potencia contra volúmenes masivos de datos de seguridad.
      • Benefíciese de más de 200 detecciones preconstruidas asignadas a amenazas específicas, actividad sospechosa y marcos de seguridad como MITRE ATT&CK.

      Flujo de trabajo de detección como código en Panther

      Un ejemplo de detección en Panther

      Al escribir una detección en Pantera, comienza con una función rule() que identifica un comportamiento específico para identificar. Por ejemplo, supongamos que desea una alerta cuando se sospecha de un inicio de sesión Okta de fuerza bruta. La siguiente detección puede ayudar a identificar este comportamiento con Panther:

      Regla de inicio de sesión Okta Brute Force en Panther

      En el ejemplo anterior:

      • La función rule() toma un argumento de ‘evento’ y devuelve un valor booleano.
      • La función title() controla el mensaje de alerta generado que se envía a los analistas. Los valores de los eventos se pueden interpolar para agregar contextos útiles.

      Las reglas se pueden habilitar y probar directamente en la interfaz de usuario de Panther, o se pueden modificar y cargar mediante programación con la herramienta Panther Analysis, que le permite probar, empaquetar e implementar detecciones a través de la interfaz de línea de comandos (CLI). Y para ayudar con la clasificación de incidentes, las reglas de Panther contienen metadatos como gravedad, tipos de registro, pruebas unitarias, runbooks y más.

      Empezar

      ¿Está aprovechando al máximo todos sus datos de seguridad para detectar amenazas y actividades sospechosas? Aprenda a proteger su nube, red, aplicaciones y terminales con Panther Enterprise. Solicite una demostración hoy.



      ttn-es-57