Compartir:
Nota 132
3
minutos

Tácticas de Evasión en Ciberataques: Cómo los Defensores Pueden Detectarlas

En el dinámico panorama de la ciberseguridad actual, los ciberdelincuentes emplean tácticas cada vez más sofisticadas para infiltrarse sin ser detectados. Una estrategia común es el uso de herramientas y procesos legítimos del sistema operativo para ocultar actividades maliciosas, lo que representa un desafío significativo para los equipos de defensa. Estas técnicas de evasión permiten a los atacantes operar bajo el radar, comprometiendo sistemas y datos sensibles sin levantar sospechas inmediatas.

Para los equipos de seguridad defensiva (Blue Team), la detección y neutralización de estas tácticas es esencial. Requiere una comprensión profunda de las técnicas empleadas por los atacantes y la implementación de soluciones avanzadas de monitoreo y análisis. Este artículo explora las tácticas de evasión más utilizadas y ofrece estrategias efectivas para que los defensores puedan identificarlas y contrarrestarlas, fortaleciendo así la postura de seguridad de sus organizaciones.

Técnicas Comunes de Evasión
En este artículo exploraremos tres técnicas de evasión frecuentemente empleadas por los ciberdelincuentes para eludir las defensas de las organizaciones: Process Hollowing, DLL Sideloading y el Uso de Registros de Eventos para Persistencia.
Process Hollowing
Esta es una técnica en la que los ciberdelincuentes crean un proceso legítimo en el sistema y, una vez iniciado, reemplazan su memoria interna con código malicioso. Esto permite que el código malicioso se ejecute bajo la apariencia de un proceso confiable, dificultando su detección.

Algunos ejemplos:

  • Creación de un proceso suspendido: El atacante inicia un proceso legítimo en estado suspendido utilizando funciones como CreateProcess con la bandera CREATE_SUSPENDED.
  • Asignación de memoria maliciosa: Se utiliza ZwUnmapViewOfSection para desvincular la memoria original del proceso y VirtualAllocEx para asignar nueva memoria en el espacio del proceso objetivo.
  • Inyección de código malicioso: Mediante WriteProcessMemory, se escribe el código malicioso en la memoria asignada.
  • Reanudación del proceso: Finalmente, se ajusta el puntero de instrucción con SetThreadContext y se reanuda el proceso con ResumeThread, ejecutando así el código malicioso bajo la identidad del proceso legítimo.

Detección por parte del Blue Team

  • Monitoreo de llamadas a API sospechosas: Vigilar el uso de funciones como ZwUnmapViewOfSection, VirtualAllocEx y WriteProcessMemory en procesos que normalmente no las emplean.
  • Análisis de discrepancias en imágenes de procesos: Utilizar herramientas que comparen la imagen en disco del proceso con la cargada en memoria para identificar modificaciones no autorizadas.
  • Registro de eventos de creación de procesos: Configurar sistemas de monitoreo para alertar sobre la creación de procesos en estado suspendido o cambios inesperados en la memoria de procesos activos.

DLL Sideloading
La Tecnica DLL Sideloading implica que los ciberdelincuentes colocan una biblioteca de enlace dinámico (DLL) maliciosa en el mismo directorio que una aplicación legítima. Cuando la aplicación se ejecuta, carga la DLL maliciosa en lugar de la legítima debido a la prioridad en el orden de búsqueda de DLLs, permitiendo la ejecución de código no autorizado.

Algunos Ejemplos:

  • Preparación de la DLL maliciosa: El atacante crea una DLL con el mismo nombre que una legítima que la aplicación objetivo carga durante su ejecución.
  • Colocación estratégica de la DLL: La DLL maliciosa se coloca en el directorio de la aplicación legítima, aprovechando que Windows busca primero en el directorio de la aplicación antes de buscar en otros lugares.
  • Ejecución de la aplicación: Al iniciar la aplicación legítima, esta carga la DLL maliciosa, otorgando al atacante la capacidad de ejecutar código con los mismos privilegios que la aplicación.

Detección por parte del Blue Team

  • Monitoreo de cargas de DLLs: Implementar herramientas que registren qué DLLs son cargadas por cada aplicación y alerten sobre cargas inusuales o inesperadas.
  • Verificación de firmas digitales: Comprobar que todas las DLLs cargadas estén firmadas digitalmente por proveedores confiables y coincidan con las firmas esperadas.
  • Control de integridad de archivos: Utilizar sistemas que detecten cambios o adiciones de archivos en directorios críticos de aplicaciones, especialmente aquellos que contienen ejecutables y sus DLLs asociadas.

Uso de Registros de Eventos para Persistencia
En esta técnica, los ciberdelincuentes manipulan los registros de eventos del sistema operativo para almacenar código malicioso o comandos que se ejecutarán posteriormente, logrando persistencia en el sistema comprometido. Al ocultar código en lugares destinados al registro de eventos, es menos probable que se detecte actividad sospechosa.

Algunos Ejemplos:

  • Inyección en registros de eventos: Utilizando herramientas como wevtutil, el atacante puede escribir datos maliciosos en registros de eventos personalizados o poco monitoreados.
  • Ejecución mediante suscripción a eventos: Se crean suscripciones a eventos que, al activarse, ejecutan scripts o comandos maliciosos previamente almacenados en los registros de eventos.
  • Uso de registros para almacenar payloads: El código malicioso se almacena en los datos de eventos y se recupera y ejecuta mediante scripts que leen estos registros.

Detección por parte del Blue Team

  • Monitoreo de cambios en registros de eventos: Configurar alertas para detectar modificaciones inusuales en los registros de eventos, especialmente en aquellos que rara vez cambian.
  • Revisión de suscripciones a eventos: Auditar regularmente las suscripciones a eventos para identificar configuraciones que ejecuten comandos o scripts inesperados.
  • Análisis de contenido de eventos: Inspeccionar los datos almacenados en los registros de eventos en busca de patrones que indiquen la presencia de código o comandos maliciosos.

Cómo los Blue Teams pueden detectar estas tácticas
Para contrarrestar estas amenazas, los equipos de defensa deben adoptar estrategias proactivas y herramientas especializadas que permitan identificar actividades sospechosas y responder eficazmente.

Implementación de Sistemas de Detección de Intrusiones (IDS)
Los IDS son fundamentales para monitorear el tráfico de red y detectar actividades anómalas. Estos sistemas analizan los paquetes de datos en busca de patrones que coincidan con firmas de ataques conocidos o comportamientos inusuales, alertando a los equipos de seguridad sobre posibles intrusiones. Es esencial mantener actualizadas las bases de datos de firmas y ajustar las configuraciones para minimizar falsos positivos y negativos.

Uso de Herramientas de Monitoreo Avanzado
Para detectar técnicas como Process Hollowing o DLL Sideloading, es crucial emplear herramientas que proporcionen una visibilidad profunda del sistema:

  • Sysmon: Esta utilidad de Microsoft Windows permite registrar eventos detallados del sistema, como la creación de procesos y la carga de módulos, facilitando la identificación de comportamientos sospechosos.
  • EDR (Endpoint Detection and Response): Estas soluciones ofrecen monitoreo continuo de los endpoints, detectando y respondiendo a actividades maliciosas en tiempo real.

Creación de Reglas de Detección Personalizadas
Desarrollar reglas específicas para identificar patrones de comportamiento asociados con técnicas de evasión es vital:

  • YARA: Permite crear reglas para identificar archivos maliciosos basados en patrones específicos.
  • Sigma: Un lenguaje estándar para compartir reglas de detección de eventos en diferentes plataformas SIEM, facilitando la identificación de actividades sospechosas.

Análisis de Comportamiento y Anomalías
Implementar soluciones que utilicen inteligencia artificial y aprendizaje automático para analizar el comportamiento de usuarios y sistemas ayuda a identificar desviaciones que podrían indicar actividades maliciosas. Estas herramientas pueden detectar patrones inusuales que las firmas tradicionales podrían pasar por alto.

Formación y Concienciación de los Colaboradores
Los colaboradores son una línea de defensa crucial. Proporcionar formación regular sobre las técnicas de ingeniería social y las tácticas de evasión utilizadas por los ciberdelincuentes aumenta la capacidad de la organización para detectar y prevenir ataques.

Conclusión
Las tácticas de evasión empleadas por los ciberdelincuentes representan un desafío constante para las organizaciones, ya que buscan eludir las medidas de seguridad establecidas. Para contrarrestar estas amenazas, es esencial que los equipos de seguridad adopten una postura proactiva, implementando herramientas avanzadas de monitoreo y detección, como Sysmon y soluciones EDR. Además, la formación continua de los colaboradores en prácticas de ciberseguridad fortalece la primera línea de defensa contra posibles intrusiones. Al combinar tecnología de vanguardia con una cultura organizacional orientada a la seguridad, las organizaciones pueden mejorar significativamente su capacidad para identificar y mitigar actividades maliciosas, protegiendo así sus activos más valiosos.

Notas
recientes
General
5
minutos

Threat Hunting con predicción de comportamiento

Nos encontramos en la constante búsqueda de elementos que nos ayuden a predecir como seremos atacados y así hacer algo proactivamente para reducir estos riesgos. La Ciber Inteligencia de Amenazas (CTI) es esa disciplina...
ver más ...