Threat Hunting y análisis de malware táctico

Colaboradores:
Un agradecimiento especial a nuestros colaboradores:

¿Cuáles son los fundamentos de Threat Hunting y el análisis de malware? Nuestros expertos buscaron responder esta pregunta candente en un episodio reciente de Tradecraft Tuesday, con la participación del líder de Threat Hunting de Huntress Anthony Smith y el investigador de seguridad sénior David Carter.

Tanto el Threat Hunting como el análisis de malware trabajan de la mano para dar una mejor comprensión del nivel de riesgo de un entorno, los lugares que explorar al revisar un sistema y dónde podría estar oculta una amenaza. Analicemos cada uno.

Los fundamentos de Threat Hunting

Threat Hunting es una función crítica para la seguridad proactiva que combina múltiples entradas de datos para formar una hipótesis que permita descubrir amenazas desconocidas y brechas de seguridad en tu entorno. Las entradas de datos pueden ser cualquier combinación de inteligencia de amenazas externa o interna, alertas de herramientas de seguridad o registros de numerosas fuentes. La información de entrada ayuda a determinar qué tipo de búsqueda debes realizar:

  • Impulsada por inteligencia: usa inteligencia de varias fuentes
  • Impulsada por datos: usa fuentes de datos internas sobre alertas de menor prioridad
  • Impulsada por conocimiento: usa datos agregados sobre tácticas, técnicas y procedimientos (TTPs) de los adversarios
  • Híbrida: usa una combinación de las tres anteriores para acotar el alcance de la búsqueda

Una búsqueda de amenazas puede ser estructurada o no estructurada. La diferencia entre ambas es que la búsqueda estructurada se basa en una hipótesis respaldada por una investigación sólida. En cambio, la búsqueda no estructurada es más impulsada por datos y oportunista, y suele surgir de una corazonada.

El enfoque de búsqueda más eficiente y recomendado es el estructurado. En el proceso de búsqueda estructurada, se dedica tiempo a formar una hipótesis bien delimitada que dará lugar a las búsquedas e investigaciones más útiles. El enfoque no estructurado tiende a generar una búsqueda ineficiente que podría desperdiciar incontables horas persiguiendo ideas a medio formar y siguiendo hipótesis preliminares.

¿Por qué deberías hacer Threat Hunting?

La importancia de Threat Hunting se reduce a un hecho simple: los detectores solo pueden encontrar amenazas conocidas. Por lo general, los detectores se crean después de que se descubre una nueva amenaza en un entorno o a partir de información compartida públicamente. Pero Threat Hunting ocupa el espacio entre las amenazas desconocidas y los detectores. Responde preguntas como:

  • ¿Cuáles son las TTPs comunes de los actores de amenazas conocidos?
  • ¿Qué motiva a los hackers? ¿Dinero, extorsión de datos o caos general?
  • ¿Qué podría hacer un actor de amenazas a continuación?

Estas evaluaciones ayudan a cubrir brechas de seguridad que de otro modo no se habrían considerado o priorizado. El objetivo general es poder evaluar qué amenazas (si acaso) fueron pasadas por alto por las medidas de seguridad actuales.

Definición del análisis táctico de malware

¿Qué es malware? La definición más simple es un programa, proceso o servicio que hace algo que no debería hacer. Existen incontables variaciones de malware, algunas muy sigilosas y otras más evidentes si sabes qué comportamientos buscar.

El análisis de malware táctico consiste en analizar un sistema para descubrir malware y actividad de un adversario usando herramientas y capacidades integradas del sistema.

La siguiente lista no cubre todas las TTP que el malware puede usar, pero es un buen punto de partida para una búsqueda. Si ves algo que hace al menos dos de estas tres cosas, considéralo un comportamiento extraño y una gran señal de alerta:

  • El proceso consume una gran cantidad de los recursos de tu sistema
  • El proceso envía y recibe comunicaciones de red, pero normalmente no debería hacerlo
  • El proceso realiza acciones que lo ayudan a ocultarse en tu sistema

Herramientas para el análisis de malware táctico

Aviso: no realices ninguna de estas acciones durante un incidente activo, ya que podrías comprometer accidentalmente datos forenses. Los artefactos volátiles son rastros digitales temporales que residen en la memoria volátil (RAM) de un sistema y ofrecen información clave sobre su estado operativo durante un compromiso. Sin embargo, interactuar con malware durante la clasificación puede afectar significativamente estos artefactos. Interactuar con malware puede modificar procesos en ejecución y conexiones de red, lo que podría distorsionar la precisión de los hallazgos de la investigación. Una preservación inadecuada antes de reiniciar o apagar el sistema puede provocar la pérdida de datos volátiles, eliminando evidencia vital necesaria para el análisis. Manejar mal el malware durante la clasificación podría desencadenar sin querer más acciones maliciosas, complicando la comprensión del ataque inicial. Las actividades de clasificación tienen el potencial de introducir nuevos rastros en la memoria volátil, dificultando distinguir entre el estado original y el estado posterior a la clasificación. Dados estos riesgos, es esencial realizar una investigación forense completa antes de cualquier forma de clasificación, para garantizar la preservación e interpretación precisas de los artefactos volátiles.

Aprender qué buscar y determinar un comportamiento inusual requiere repetición, un ojo entrenado y las herramientas adecuadas. Por suerte, Microsoft tiene varias herramientas nativas que te ayudan a tener un panorama adecuado.

Un buen punto de partida es la lista de procesos usando la herramienta de línea de comandos tasklist. Ver una lista de procesos puede parecer un poco abrumador al principio, pero una vez que aprendes qué debería estar ahí, se vuelve mucho más fácil detectar lo que no debería. A menudo, el malware intenta hacerse pasar por un proceso normal cambiando el orden de las letras o usando el mismo nombre pero en una ubicación de carpeta diferente. Este también es un buen lugar para ver si un proceso está usando una cantidad inusualmente alta de memoria.

Ahora que revisaste la lista de procesos (ten esa información a la mano), quieres ver las conexiones de red usando la herramienta de línea de comandos netstat y las opciones -anob. Esto te mostrará todas las conexiones, las direcciones IP asociadas y el ID de proceso (PID) o ejecutable que hace la conexión o abre el puerto de escucha. Empieza por buscar procesos que nunca deberían hacer conexiones de red o puertos que parezcan obviamente sospechosos (piensa en 1337). Cuando encuentres uno, anota el PID y vuelve a tu lista de procesos para ver dónde está ubicado el archivo.

Después de revisar la lista de procesos y las conexiones de red, ¿dónde vive realmente el malware? A menos que el malware se ejecute solo en memoria, su ejecutable original y el mecanismo que lo activa se esconden en algún lugar del sistema.

Encontrar la persistencia es posiblemente el paso más difícil en el análisis de malware táctico, pero hay algunos lugares comunes que siempre debes revisar: Servicios, Tareas programadas y el Registro. Si bien los Servicios y las Tareas programadas se pueden ver fácilmente con herramientas de línea de comandos, puede ser más sencillo revisar las tres posibles ubicaciones de persistencia en el Registro usando la aplicación Editor del Registro. Las claves que debes buscar son:

  • "HKLM\SYSTEM\CurrentControlSet\Services"
  • "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache”
  • "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
  • "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce"

Hay muchas, muchas más claves de registro que podrías revisar, pero este es un buen punto de partida. Debes buscar los posibles nombres de malware que encontraste al revisar la lista de procesos y las conexiones de red. Si los encuentras, ¡es posible que hayas hallado la persistencia!

Advertencia: todo en Windows vive en el Registro, así que ten cuidado al interactuar con él y no modifiques nada a menos que sepas lo que haces.

Vale la pena mencionar que, hasta que dediques horas y horas a aprender sobre el sistema Windows, vas a explorar muchas pistas falsas al revisar cosas que en realidad son normales. Esto está bien y también es una buena forma de aprender. Además, este blog ofrece una visión muy general de la caza de amenazas y el análisis de malware táctico, y no pretende ser exhaustivo. Son dos temas que toman años en dominarse, e incluso entonces vas a descubrir que todavía te falta aprender más.

Si tienes curiosidad por aprender más o empezar tu camino, revisa estos recursos a continuación.

Recursos

Un agradecimiento especial a David Carter, Anthony Smith, Kaleigh Slayton y Joe Slowik por sus aportes a este artículo.

¿Quieres una explicación más profunda sobre los fundamentos de la caza de amenazas y el análisis de malware táctico? Mira aquí nuestro episodio de Tradecraft Tuesday bajo demanda.

Si todavía no te registraste, regístrate para la serie hoy mismo.

También te podría interesar