Cómo crear un Laboratorio de Ingeniería de Detección — Parte 1

Configurar un laboratorio te permite simular TTPs (Tácticas, Técnicas y Procedimientos) del mundo real en un entorno seguro, lo que facilita probar, construir y ajustar la lógica de detección.

Estoy escribiendo este blog con el objetivo de ayudar a las personas que trabajan en el campo de operaciones de seguridad, ingeniería de detección o que están interesadas en la ciberseguridad y desean explorar y ampliar sus conocimientos teóricos y prácticos.

 

Estoy estructurando el laboratorio de manera que pueda funcionar como un entorno de ingeniería de detección, pero también puede ser utilizado para probar otros propósitos relacionados con las operaciones de seguridad, como la creación de paneles, configuración de alertas, etc.

 

Por qué?

Configurar un laboratorio te permite imitar TTPs reales (Tácticas, Técnicas y Procedimientos) en un entorno seguro, lo que facilita probar, desarrollar y ajustar la lógica de detección. Tener experiencia práctica en la configuración de este tipo de entorno de prueba también es una valiosa adición a tu currículum durante entrevistas de trabajo.
Y, por supuesto, es divertido

 

Breve introducción sobre la ingeniería de detección en general

Un entorno de detección (o de ingeniería de detección) generalmente ayuda a proteger activos mediante el desarrollo de lógica que funciona como, lo que me gusta describir a mis amigos no técnicos, "alarmas digitales".

Los actores de amenazas que se mueven lateralmente a través de una red deben ser detectados en algún momento durante su actividad maliciosa — idealmente lo antes posible — después de lo cual se generan alertas, el equipo de seguridad interviene... todo eso.

 

Sin embargo, para crear la lógica que detecte actividades maliciosas, “nosotros” como defensores necesitamos telemetría o registros (logs). Los sistemas de TI generan todo tipo de registros (del sistema, seguridad, endpoint, red, etc.). Recopilar las fuentes de registros correctas es crucial para encontrar actividad anómala o la aguja en el pajar. Este no es un blog sobre cuáles son las fuentes de registro esenciales, aunque puedo dedicar otro artículo exclusivamente a este tema.

 

La mayoría de las veces, los registros se envían a un servidor central de registros (que puede formar parte de una solución SIEM) donde se recopilan; a partir de diversas fuentes de registros y telemetría, se pueden desarrollar detecciones, monitorear y configurar alertas.

 

Alcance

El alcance de nuestra “infraestructura” será:

  • Elastic Stack
  • Docker
  • Digital Ocean (proveedor de servicios en la nube)


Elegí una solución en la nube principalmente por su facilidad de acceso. Me gusta poder acceder a la interfaz web de Kibana en cualquier momento, sin la complicación de gestionar mi propio servidor o configurar algo localmente. Estoy usando Docker porque ofrece flexibilidad al implementar y gestionar aplicaciones de manera consistente. También es una excelente manera de ganar experiencia con la contenedorización.

Por supuesto, esta es solo mi preferencia personal.

 

Requisitos

Para esta parte no hay requisitos técnicos, ya que alojaremos la infraestructura en la nube. Sin embargo, en la parte 2 también configuraremos una máquina virtual que tendrá algunos requisitos mínimos. Instalaremos el agente Elastic en la máquina virtual para que funcione como el primer host con reenvío de eventos configurado.

 

Elastic Stack

Elasticsearch se desarrolla junto con el motor de recopilación y análisis de datos Logstash, la plataforma de visualización y análisis Kibana, y la colección de agentes ligeros llamados Beats. Los cuatro productos están diseñados para usarse como una solución integrada, conocida como el “Elastic Stack”. Otro componente del Elastic Stack es el servidor Fleet, que se utiliza para gestionar de forma centralizada los agentes Elastic.

 

Elastic es de código abierto y fácil de configurar usando Docker y el complemento Docker-compose. Docker simplifica cualquier procedimiento de configuración y mantenimiento de servidores u otros sistemas operativos mediante la virtualización.

 

Consulta la arquitectura general contenedorizada a continuación para tener una idea del objetivo final del entorno. En azul se muestra lo que está dentro del alcance de nuestra configuración.

Arquitectura general del entorno del laboratorio

 

Bien, ahora vamos a empezar


Paso 1: Configurar tu cuenta de Digital Ocean

Configuraremos un Droplet de Digital Ocean para alojar nuestros contenedores Docker. Los Droplets de Digital Ocean son máquinas virtuales (VM) basadas en Linux que se ejecutan sobre hardware virtualizado. Cada Droplet que creas es un nuevo servidor que puedes usar, ya sea de forma independiente o como parte de una infraestructura más grande basada en la nube.

Si ya tienes una cuenta de Digital Ocean, pasa al paso 2.

  • Ve a: https://www.digitalocean.com/
  • Haz clic en “Sign up” en la esquina superior derecha;
  • Puedes elegir continuar a través de Google, Github o correo electrónico;
  • Sigue y finaliza los pasos de registro.


Debes seleccionar una opción de pago ya que alojaremos nuestros contenedores Docker en la nube. Digital Ocean es mi opción preferida debido a que es muy fácil de configurar y ofrece soluciones muy asequibles. Hablaré un poco más sobre los precios más adelante.

 

Paso 2: Crear un nuevo proyecto

  • Ve a: https://www.digitalocean.com/
  • Inicia sesión en tu cuenta;
  • En la parte superior izquierda, haz clic en: “+New project” y elige cómo quieres nombrar tu proyecto (por ejemplo, “Entorno de laboratorio”) y elige cómo completar las otras dos opciones.

Suscríbete

0
Feed