RedLine Lab - CyberDefenders
{width=“6.267716535433071in”
height=“1.4722222222222223in”}
Como miembro del equipo de Security Blue, su tarea es analizar un volcado de memoria utilizando las herramientas Redline y Volatility.
Su objetivo es rastrear los pasos dados por el atacante en la máquina comprometida y determinar cómo logró eludir el Sistema de detección de intrusiones en la red (NIDS).
Su investigación identificará la familia de malware específica empleada en el ataque y sus características. Además, su tarea es identificar y mitigar cualquier rastro o huella dejada por el atacante.
Introducción
Este laboratorio presenta un escenario en el que un sistema ha sido comprometido por un atacante y su tarea como parte del equipo azul es realizar un análisis forense exhaustivo del volcado de memoria.
Aprovechar herramientas como Volatility, investigará indicadores clave de compromiso, identificará procesos sospechosos y rastreará las acciones del atacante.
El análisis requerirá que examine las jerarquías de procesos, la actividad de la red y las regiones de memoria para descubrir cómo el atacante eludir las defensas y ejecutó sus objetivos maliciosos.
El laboratorio enfatiza la importancia de memory forensics al descubrir evidencia que podría no ser visible en el sistema de archivos.
A través de un análisis cuidadoso, identificará artefactos críticos, como ejecutables maliciosos, conexiones de red y posible comunicación de comando y control.
Estos hallazgos ayudarán a reconstruir la secuencia de eventos y brindarán información sobre las tácticas, técnicas y procedimientos (TTP) del atacante.
Este laboratorio no solo desafía sus habilidades técnicas sino que también resalta el pensamiento crítico necesario para reconstruir pistas fragmentadas en una investigación forense.
Al final, habrá desarrollado una comprensión más profunda de cómo operan los atacantes y cómo detectar y mitigar dichas amenazas.
Análisis
P1 ¿Cómo se llama el proceso sospechoso?
Para comenzar este análisis forense, necesitamos aprovechar el poder de la ciencia forense de la memoria para descubrir detalles sobre el estado del sistema durante el tiempo en que se capturó la imagen de la memoria.
El análisis de la memoria es un aspecto central de la ciencia forense digital y permite a los investigadores extraer y analizar datos volátiles de la memoria.
Este enfoque puede revelar información crítica sobre los procesos en ejecución, la actividad de la red, los controladores cargados e incluso el código malicioso oculto en la memoria.
Para esta investigación, nos basamos en Volatility 3, un marco forense de memoria de código abierto ampliamente utilizado.
La volatilidad permite a los analistas procesar volcados de memoria y extraer información procesable, como identificar procesos, relaciones entre padres e hijos y otros artefactos clave que ayudan a reconstruir la actividad del sistema.
Una parte fundamental del análisis implica examinar la lista de procesos utilizando Volatility windows.pstree complemento.
Este complemento muestra los procesos en un formato de árbol jerárquico, mostrando las relaciones padre-hijo entre los procesos.
Esta visión es esencial para identificar anomalías en el comportamiento del proceso.
El comando utilizado para analizar el volcado de memoria en este caso es el siguiente:
python vol.py -f “C:\Users\Sammi De Blas\Downloads\106-RedLine\temp_extract_dir\MemoryDump.mem” windows.pstree
Este comando especifica el archivo de imagen de memoria e invoca el windows.pstree complemento para enumerar y mostrar los procesos en la instantánea de memoria.
La salida generada a partir de este comando enumera todos los procesos y muestra detalles como ID de proceso (PID), tiempos de creación, argumentos de línea de comando y rutas de archivos.
Estos detalles proporcionan la base para analizar el estado del sistema e identificar posibles indicadores de compromiso.
{width=“6.267716535433071in”
height=“5.013888888888889in”}
Al examinar el árbol de procesos, un proceso se destaca como sospechoso: oneetx.exe.
{width=“6.267716535433071in”
height=“3.5277777777777777in”}
Varios factores contribuyen a esta identificación.
Primero, el ejecutable se encuentra en el Local\\Temp directorio.
{width=“6.267716535433071in”
height=“0.7083333333333334in”}
Esta ruta es un indicador bien conocido de actividad potencialmente maliciosa, ya que los atacantes a menudo colocan ejecutables en directorios temporales para evadir la detección.
Además, el proceso principal de oneetx.exe es svchost.exe, un proceso de sistema legítimo.
Sin embargo, en el comportamiento típico del sistema, svchost.exe
No se espera que genere ejecutables personalizados desde rutas accesibles para el usuario. Esta relación inusual genera más sospechas sobre la naturaleza de oneetx.exe.
Para identificar el proceso sospechoso, los investigadores forenses analizan estos detalles y los evalúan frente a patrones conocidos de comportamiento normal del sistema.
Los procesos legítimos generalmente se adhieren a las rutas de archivos esperadas, las relaciones entre padres e hijos y los patrones de uso.
Cualquier desviación, como el surgimiento inesperado de un proceso como oneetx.exe por svchost.exe, justifica una mayor investigación.
Además, analizar el tiempo de ejecución y cualquier argumento de línea de comando asociado proporciona evidencia adicional para determinar si un proceso es legítimo o potencialmente malicioso.
Con base en estas observaciones, el proceso sospechoso en este caso se identifica como oneetx.exe.
Esta conclusión se extrae de su ruta de ejecución anómala, su proceso principal inesperado y el contexto más amplio del análisis de la memoria.
P2 ¿Cuál es el nombre del proceso secundario del proceso sospechoso?
Para responder a la pregunta sobre el proceso hijo del proceso sospechoso, es esencial comprender las relaciones padre-hijo en los procesos de Windows.
En el sistema operativo Windows, los procesos están estructurados jerárquicamente.
Un proceso padre genera procesos hijos y esta relación a menudo se puede rastrear a través de la memoria o el análisis de sistemas en vivo.
Los investigadores analizan estas relaciones para descubrir anomalías que puedan indicar actividades maliciosas.
Por ejemplo, cuando un proceso legítimo del sistema genera un ejecutable desconocido o sospechoso, a menudo sirve como señal de alerta.
Para esta investigación, nos basamos en la ciencia forense de la memoria para explorar la jerarquía de procesos utilizando el marco de volatilidad.
A partir de la vista del árbol de procesos generada durante el análisis, identificamos oneetx.exe como el proceso sospechoso.
Observar su proceso principal y sus procesos secundarios nos permite rastrear su ruta de ejecución y su papel potencial en el ataque.
En este caso, el árbol de procesos muestra que oneetx.exe ha generado un proceso secundario llamado rundll32.exe.
{width=“4.822916666666667in”
height=“0.8333333333333334in”}
El proceso rundll32.exe suele ser una utilidad legítima de Windows utilizada para ejecutar funciones en bibliotecas de enlaces dinámicos (DLL).
Sin embargo, los atacantes también suelen abusar de él con fines maliciosos, como ejecutar cargas útiles maliciosas mientras aparece como un proceso legítimo.
La conexión entre oneetx.exe y rundll32.exe es muy sospechoso porque oneetx.exe en sí se encuentra en el Local\\Temp directorio, una ubicación utilizada frecuentemente por malware.
El desove de rundll32.exe ya que su proceso secundario sugiere más actividad maliciosa, ya que los atacantes a menudo utilizan herramientas como rundll32.exe para cargar DLL maliciosas o ejecutar scripts adicionales.
A partir del análisis de la jerarquía de procesos, el proceso secundario de lo sospechoso oneetx.exe El proceso se identifica como rundll32.exe.
Esta relación proporciona más evidencia de comportamiento malicioso y da una dirección para investigaciones adicionales, como analizar las DLL o comandos específicos ejecutados por rundll32.exe.
Este análisis destaca cómo los atacantes encadenan procesos para lograr sus objetivos mientras intentan evadir la detección.
P3 ¿Cuál es la protección de memoria aplicada a la región de memoria del proceso sospechoso?
Al investigar procesos sospechosos en Windows, comprender las protecciones de la memoria es un aspecto crucial del análisis.
Las protecciones de memoria son atributos asignados a diferentes regiones de memoria para definir cómo se puede acceder a ellas o manipularlas.
Las protecciones comunes incluyen: PAGE_READONLY, que restringe el acceso a la memoria para la lectura; PAGE_READWRITE, que permite leer y escribir; y PAGE_EXECUTE_READWRITE, que permite la ejecución, lectura y escritura.
Entre estos, permisos ejecutables como PAGE_EXECUTE_READWRITE son particularmente preocupantes en las investigaciones forenses, ya que a menudo se explotan en actividades maliciosas como la inyección de código.
Code inyecciones es una técnica comúnmente empleada por los atacantes para insertar y ejecutar código malicioso dentro del espacio de memoria de procesos legítimos.
Los atacantes podrían asignar memoria con permisos ejecutables, escribir su código en este espacio y luego ejecutarlo, secuestrando efectivamente un proceso legítimo.
Este comportamiento es un sello común del malware y se encuentra con frecuencia en ataques avanzados.
Analizar las protecciones de memoria aplicadas al proceso sospechoso oneetx.exe, podemos usar la volatilidad windows.vadinfo complemento.
Este complemento proporciona detalles sobre las regiones de memoria asociadas con un proceso, incluido su tamaño, atributos y protecciones.
El comando utilizado para este análisis es:
python vol.py -r csv -f “C:\Users\Sammi De Blas\Downloads\106-RedLine\temp_extract_dir\MemoryDump.mem” windows.vadinfo —pid 5896 > vadinfo_5896.csv
La salida de este comando enumera todas las regiones de memoria asociadas con el proceso onenetx.exe.
{width=“6.267716535433071in”
height=“2.5694444444444446in”}
Al examinar los detalles, podemos observar una región de memoria que tiene el tipo de protección PAGE_EXECUTE_READWRITE.
Este es un hallazgo significativo, ya que esta protección permite escribir y ejecutar la memoria.
Los atacantes utilizan con frecuencia estos atributos para ejecutar cargas útiles maliciosas, a menudo como parte de la inyección de DLL reflexiva u otras técnicas de ejecución de código dinámico.
PAGE_EXECUTE_READWRITE permite escribir en la memoria y ejecutarla directamente, lo que es un indicador de inyección de código malicioso (por ejemplo, shellcode).
Si bien los compiladores JIT o las herramientas de depuración pueden usarlo legítimamente, encontrar este permiso en ubicaciones inesperadas suele ser sospechoso en el ámbito forense.
Por el contrario, PAGE_EXECUTE_WRITECOPY está vinculado al mecanismo de copia en escritura de Windows para memoria ejecutable compartida (por ejemplo, secciones DLL).
Esta configuración suele ser benigna ya que cualquier operación de escritura crea una copia privada para el proceso, lo que limita una modificación generalizada.
Sin embargo, los atacantes podrían abusar de él parcheando secretamente las DLL, aunque generalmente es menos común y menos abiertamente sospechoso que los permisos de lectura, escritura y ejecución.
Q4 ¿Cómo se llama el proceso responsable de la conexión VPN?
Para determinar el proceso responsable de la conexión VPN, es esencial examinar la relación entre los procesos y sus funciones en la gestión del tráfico de red.
Las VPN (redes privadas virtuales) permiten una comunicación segura y cifrada entre un dispositivo y una red remota, lo que a menudo implica múltiples procesos que trabajan juntos.
Estos procesos normalmente establecen un túnel seguro para la transmisión de datos y gestionan los protocolos de red subyacentes.
Durante el análisis de memoria, la salida del árbol de procesos identificó un proceso llamado tun2socks.exe.
{width=“6.267716535433071in”
height=“1.9861111111111112in”}
Este proceso está asociado con las funcionalidades de VPN y a menudo se utiliza como una utilidad para traducir el tráfico proxy SOCKS en paquetes IP.
Sin embargo, tun2socks.exe no es un proceso independiente.
Opera bajo el control de su proceso principal, que orquesta la conexión VPN.
Una inspección más detallada del árbol de procesos revela que el proceso principal de tun2socks.exe es outline.exe.
{width=“6.267716535433071in”
height=“2.5972222222222223in”}
{width=“6.267716535433071in”
height=“6.819444444444445in”}
Este proceso es parte del software Outline VPN, una herramienta ampliamente utilizada para comunicaciones seguras y evitar restricciones de red. outline.exe es responsable de iniciar y administrar la conexión VPN, incluido el lanzamiento de procesos de utilidad como tun2socks.exe para manejar operaciones de red específicas.
El análisis de la actividad de la red respalda este hallazgo.
{width=“6.267716535433071in”
height=“2.3194444444444446in”}
Las conexiones establecidas por tun2socks.exe son un resultado directo de las instrucciones y configuración establecidas por outline.exe.
Como proceso principal, outline.exe desempeña un papel central en la creación y el mantenimiento del túnel VPN.
Con base en esta investigación, el proceso responsable de la conexión VPN se identifica como outline.exe.
Esta conclusión se deriva de su papel como controlador del proceso principal tun2socks.exe y su asociación con el software Outline VPN, que gestiona la conexión segura.
Q5 ¿Cuál es la dirección IP del atacante?
Para identificar el proceso responsable de la conexión VPN, nos centramos en analizar las dos direcciones IP remotas, 77.91.124.20 y 38.121.43.65.
Estas direcciones remotas
representa
{width=“6.267716535433071in”
height=“1.3194444444444444in”}n puntos finales externos con los que se
comunicó el sistema, y comprender sus asociaciones es crucial para
distinguir la actividad legítima de las acciones potencialmente
maliciosas.
vol.exe -f “C:\Users\Sammi De Blas\Downloads\106-RedLine\temp_extract_dir\MemoryDump.mem” windows.netscan | findstr “oneetx outline tun2socks”
{width=“6.267716535433071in”
height=“1.5138888888888888in”}
La primera IP remota, 77.91.124.20, está conectada a través del puerto TCP 55462 y está asociado con el proceso oneetx.exe.
Este proceso, identificado anteriormente como sospechoso, está vinculado a un directorio temporal, a menudo utilizado por malware.
La comunicación con 77.91.124.20 sugiere una posible actividad del atacante, ya que esta IP podría representar un servidor de comando y control (C2) u otro punto final involucrado en la orquestación del ataque.
La segunda IP remota, 38.121.43.65, está conectado a través del puerto TCP 443, un puerto estándar para tráfico HTTPS seguro, y está asociado con el proceso tun2socks.exe.
Este proceso es una utilidad conocida para gestionar la traducción de red en entornos VPN. Sin embargo, tun2socks.exe opera bajo el control de su proceso principal, outline.exe, que es parte del software Outline VPN.
La conexión con 38.121.43.65 es característico del comportamiento legítimo de VPN, donde se establecen túneles seguros hacia servidores externos para la comunicación cifrada.
Con base en este análisis, la conexión con 77.91.124.20 a través de oneetx.exe indica una posible actividad maliciosa y justifica una mayor investigación.
Por el contrario, la conexión con 38.121.43.65 es administrado por outline.exe, que se identifica como el proceso responsable de la conexión VPN.
Este proceso inicia y supervisa el túnel de comunicación seguro, delegando tareas específicas a tun2socks.exe.
P6 ¿Cuál es la URL completa del archivo PHP que visitó el atacante?
Para identificar la URL completa del archivo PHP que visitó el atacante, la investigación se centra en analizar el volcado de memoria del proceso malicioso y buscar cadenas o patrones asociados con la actividad del atacante.
Específicamente, esto implica localizar referencias a la dirección IP del atacante y las solicitudes HTTP asociadas.
Select-String -Path “C:\Users\Sammi De Blas\Downloads\106-RedLine\temp_extract_dir\MemoryDump.mem” -Pattern “77\.91\.124\.20” -Context 0,1
{width=“6.267716535433071in”
height=“1.5833333333333333in”}
El volcado de memoria contiene una referencia clara a la actividad del atacante. El proceso oneetx.exe, identificado como malicioso anteriormente en el análisis, incluye una cadena de URL HTTP que apunta a un archivo PHP alojado en el servidor remoto.
Esta cadena proporciona evidencia directa de comunicación entre el proceso malicioso y la infraestructura del atacante.
En el volcado de memoria, la dirección IP 77.91.124.20 está asociado con la URL http://77.91.124.20/store/games/index.php.
Esta URL indica que el proceso malicioso accedió a un recurso específico, probablemente alojado en el servidor de comando y control (C2) del atacante, posiblemente para exfiltrar datos, recibir comandos o descargar cargas útiles adicionales.
A partir de esta evidencia, la URL completa que visitó el atacante es [http://77.91.124.20/store/games/index.php]{.underline}.
Q7 ¿Cuál es la ruta completa del ejecutable malicioso?
Para descubrir la ruta completa del ejecutable malicioso, analizamos los datos proporcionados en la salida del árbol de procesos capturados durante el análisis de memoria.
Este resultado brinda información detallada sobre cada proceso que se ejecuta en el sistema, incluido el nombre del ejecutable, su proceso principal y la ruta completa del archivo donde reside en el sistema.
Al examinar estos datos, podemos determinar la ubicación exacta del ejecutable malicioso.
El proceso oneetx.exe, previamente marcado como sospechoso, aparece claramente en el árbol de procesos.
Al inspeccionar sus detalles, la ruta revela que reside en el Temp directorio, específicamente dentro de la carpeta de datos de la aplicación local del usuario.
vol.exe -f “C:\Users\Sammi De Blas\Downloads\106-RedLine\temp_extract_dir\MemoryDump.mem” windows.filescan | findstr /i “oneetx.exe”
{width=“6.267716535433071in”
height=“1.3611111111111112in”}
*Nota no renderiza el compilado
Tiramos del original sin compilar
{width=“6.267716535433071in”
height=“0.7777777777777778in”}
La ruta completa del ejecutable malicioso es
C:\Users\Tammam\AppData\Local\Temp\c3912af058\oneetx.exe.
Esta ruta indica que el ejecutable está almacenado en un directorio no estándar para software legítimo, lo que refuerza aún más su naturaleza maliciosa.
Directorios temporales como este se utilizan normalmente para archivos transitorios, lo que hace que sea muy inusual que un ejecutable legítimo se ejecute desde dicha ubicación.