// RedLine — Análisis del ladrón de información
// Memory Forensics · Volatility Framework
// Dificultad: Easy
// Categoría: Endpoint Forensics
DISCLAIMER
Este writeup tiene fines educativos y de práctica profesional. Las respuestas corresponden al laboratorio público de CyberDefenders. Los datos del memory dump, procesos maliciosos, direcciones IP, URLs de C2 y rutas de archivos mostrados pertenecen al escenario controlado del reto.
SERIE // CyberDefenders Labs #10
0x00 — Introducción
Décimo post de la serie de laboratorios de CyberDefenders.
En esta ocasión analizamos RedLine, un laboratorio de Endpoint Forensics donde investigamos un sistema comprometido por RedLine Stealer, un info-stealer modular que roba credenciales, datos bancarios y criptomonedas.
El escenario comienza cuando el equipo de Security Blue detecta un compromiso en un sistema.
Nuestra misión es analizar un volcado de memoria (memory dump) utilizando Volatility y Redline para rastrear los pasos del atacante, identificar cómo eludió el NIDS (Network Intrusion Detection System), determinar la familia de malware empleada y mitigar cualquier rastro dejado por el atacante.
A lo largo de la investigación utilizaremos Volatility 3 para extraer procesos, examinar jerarquías padre-hijo, analizar regiones de memoria con protecciones sospechosas, identificar conexiones de red activas, extraer URLs de C2 desde la memoria y localizar ejecutables maliciosos.
Este análisis cubre las fases de ejecución, persistencia, evasión de defensas y comunicación con servidores de comando y control.
0x01 — El Escenario
| Elemento | Detalle |
|---|---|
| Amenaza | RedLine Stealer — Info-stealer modular |
| Alerta inicial | Sistema comprometido detectado por el equipo azul |
| Impacto | Robo de credenciales + evasión de NIDS + comunicación C2 |
| Evidencia | Memory dump (MemoryDump.mem) capturado del sistema comprometido |
| Herramientas | Volatility 3, Excel para análisis, PowerShell, strings |
| Misión | Identificar proceso malicioso, analizar jerarquías, protecciones de memoria, C2 y TTPs |
0x02 — Análisis
¿Cómo se llama el proceso sospechoso?
El análisis de memoria es un aspecto central de la forense digital y permite a los investigadores extraer y analizar datos volátiles que revelan información crítica sobre procesos en ejecución, actividad de red, controladores cargados e incluso código malicioso oculto en memoria.
Para esta investigación, utilizamos Volatility 3, un framework forense de memoria de código abierto ampliamente utilizado.
Volatility 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.
Una parte fundamental del análisis implica examinar la lista de procesos utilizando el plugin windows.pstree.
Este plugin muestra los procesos en un formato de árbol jerárquico, mostrando las relaciones padre-hijo entre procesos.
Esta visión es esencial para identificar anomalías en el comportamiento del proceso.
python vol.py -f "MemoryDump.mem" windows.pstree
La salida generada 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.
Para facilitar el análisis, también podemos exportar esta información a Excel para filtrado y búsqueda más eficiente.
Al examinar el árbol de procesos, un proceso destaca como sospechoso oneetx.exe.
Varios factores contribuyen a esta identificación:
- El ejecutable se encuentra en el directorio Local\Temp, una ubicación comúnmente utilizada por malware para evadir detección
- El proceso principal de oneetx.exe es svchost.exe, un proceso de sistema legítimo
- 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
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 la generación inesperada de un proceso como oneetx.exe por svchost.exe, justifica una mayor investigación.
Respuesta: oneetx.exe
¿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.
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.
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 sospechosa porque oneetx.exe en sí se encuentra en el directorio Local\Temp, una ubicación utilizada frecuentemente por malware.
El spawn de rundll32.exe como su proceso secundario sugiere más actividad maliciosa, ya que los atacantes a menudo utilizan herramientas como rundll32.exe para cargar DLLs maliciosas o ejecutar scripts.
Este análisis destaca cómo los atacantes encadenan procesos para lograr sus objetivos mientras intentan evadir la detección.
La jerarquía maliciosa típica consiste en un ejecutable inicial que genera herramientas legítimas de Windows para ejecutar payloads de segunda etapa.
Respuesta: rundll32.exe
¿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 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 — Restringe el acceso a la memoria solo para lectura
- PAGE_READWRITE — Permite leer y escribir
- PAGE_EXECUTE_READWRITE — Permite ejecución, lectura y escritura (altamente sospechoso)
- PAGE_EXECUTE_WRITECOPY — Mecanismo copy-on-write para memoria compartida
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 injection 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.
Para analizar las protecciones de memoria aplicadas al proceso sospechoso oneetx.exe, podemos usar el plugin windows.vadinfo de Volatility.
Este plugin proporciona detalles sobre las regiones de memoria asociadas con un proceso, incluido su tamaño, atributos y protecciones:
python vol.py -r csv -f "MemoryDump.mem" windows.vadinfo --pid 5896 > vadinfo_5896.csv
La salida de este comando enumera todas las regiones de memoria asociadas con el proceso oneetx.exe.
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 en la memoria y ejecutarla directamente.
Los atacantes utilizan con frecuencia estos atributos para ejecutar cargas útiles maliciosas, a menudo como parte de inyección de DLL reflexiva u otras técnicas de ejecución de código dinámico.
PAGE_EXECUTE_READWRITE permite escr ibir 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) y suele ser benigno.
Respuesta: PAGE_EXECUTE_READWRITE
¿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.
Durante el análisis de memoria, la salida del árbol de procesos identificó un proceso llamado tun2socks.exe.
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.
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, delegando tareas específicas a tun2socks.exe.
El análisis de la actividad de la red respalda este hallazgo.
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.
Esta relación es importante para la investigación forense, ya que permite distinguir el tráfico legítimo de VPN del tráfico malicioso.
En este escenario, el atacante probablemente estaba utilizando la VPN para evadir detección y ocultar la comunicación con el servidor C2.
Respuesta: outline.exe
¿Cuál es la dirección IP del atacante?
Para identificar la dirección IP del atacante, nos centramos en analizar las conexiones de red activas del sistema comprometido.
Utilizamos el plugin windows.netscan de Volatility para extraer todas las conexiones de red presentes en el volcado de memoria:
vol.exe -f "MemoryDump.mem" windows.netscan | findstr "oneetx outline tun2socks"
Durante el análisis, identificamos dos direcciones IP remotas de interés: 77.91.124.20 y 38.121.43.65.
Es crucial distinguir entre actividad legítima y maliciosa:
77.91.124.20 está conectada a través del puerto TCP 55462 y está asociada 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 esta IP sugiere una posible actividad del atacante, ya que podría representar un servidor de comando y control (C2) u otro punto final involucrado en la orquestación del ataque.
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.
Esta conexión es característica 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 actividad maliciosa y justifica una mayor investigación.
Por el contrario, la conexión con 38.121.43.65 es administrada por outline.exe, identificado como el proceso responsable de la conexión VPN legítima.
Respuesta: 77.91.124.20
¿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 comunicación HTTP.
Específicamente, esto implica localizar referencias a la dirección IP del atacante y las solicitudes HTTP asociadas.
Podemos utilizar el comando Select-String en PowerShell para buscar la IP del atacante en el volcado de memoria.
Select-String -Path "MemoryDump.mem" -Pattern "77\.91\.124\.20" -Context 0,1
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 al servidor de comando y control.
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á asociada con la URL https://upload.wikimedia.org/wikipedia/commons/d/d9/Example_bank_phishing_email.svg.
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 robados, recibir comandos adicionales o descargar módulos adicionales del malware.
La estructura de la URL (/store/games/index.php) es típica de infraestructura C2 que intenta camuflarse como sitios web legítimos, utilizando rutas aparentemente inocentes para ocultar su verdadera naturaleza maliciosa.
Respuesta: http://77.91.124.20/store/games/index.php
¿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 de archivos.
Adicionalmente, podemos utilizar el plugin windows.filescan de Volatility para buscar específicamente el ejecutable malicioso en el volcado de memoria:
vol.exe -f "MemoryDump.mem" windows.filescan | findstr /i "oneetx.exe"
El proceso oneetx.exe, previamente marcado como sospechoso, aparece claramente en el scan de archivos.
Al inspeccionar sus detalles, la ruta revela que reside en el directorio Temp, específicamente dentro de la carpeta de datos de la aplicación local del usuario.
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.
El subdirectorio c3912af058 parece ser generado aleatoriamente, una técnica común utilizada por malware para dificultar la detección basada en rutas estáticas y complicar la limpieza manual del sistema.
Respuesta: C:\Users\Tammam\AppData\Local\Temp\c3912af058\oneetx.exe
0x03 — Cadena de Ataque
| Fase | Acción | Detalle técnico / Artefacto |
|---|---|---|
| 1. Ejecución inicial | oneetx.exe se ejecuta en sistema | Ruta: C:\Users\Tammam\AppData\Local\Temp\c3912af058\ Generado por: svchost.exe (PID parent) |
| 2. Inyección de código | Memoria con permisos RWX | PAGE_EXECUTE_READWRITE Indicador de shellcode/code injection |
| 3. Ejecución DLL | Genera rundll32.exe como hijo | Living off the land binary (LOLBin) Proceso hijo malicioso de oneetx.exe |
| 4. Evasión NIDS | VPN activa para ocultar tráfico | outline.exe → tun2socks.exe Tunnel hacia 38.121.43.65:443 |
| 5. Comunicación C2 | Conexión a servidor del atacante | IP: 77.91.124.20:80 URL: http://77.91.124.20/store/games/index.php |
| 6. Exfiltración | RedLine roba credenciales y datos | Passwords, cookies, wallets crypto Enviados vía HTTP al C2 |
0x04 — Lecciones Aprendidas
1. Volatility 3 como herramienta fundamental de memory forensics
El análisis de volcados de memoria permite descubrir evidencia que no está presente en el disco.
Los plugins windows.pstree, windows.vadinfo, windows.netscan y windows.filescan son esenciales para reconstruir el ataque completo.
Exportar resultados a CSV/Excel facilita el análisis y correlación de artefactos.
2. Relaciones padre-hijo como indicador de compromiso
Procesos legítimos del sistema como svchost.exe no deberían generar ejecutables desde directorios temporales del usuario.
La jerarquía svchost.exe → oneetx.exe → rundll32.exe es claramente anómala.
Los atacantes abusan de procesos legítimos (LOLBins) como rundll32.exe para ejecutar payloads mientras evaden detección.
3. PAGE_EXECUTE_READWRITE como bandera roja crítica
Las regiones de memoria con permisos RWX (lectura, escritura y ejecución) son altamente sospechosas fuera de contextos legítimos (JIT compilers, debuggers).
Este permiso es el sello distintivo de inyección de código, reflective DLL injection y shellcode execution.
Monitorizar asignaciones de memoria con estos permisos es crucial para detección de malware avanzado.
4. VPN como técnica de evasión de NIDS
El atacante utilizó Outline VPN para ocultar el tráfico malicioso y evadir la detección del NIDS.
Distinguir entre tráfico VPN legítimo (outline.exe → 38.121.43.65:443) y tráfico malicioso (oneetx.exe → 77.91.124.20:80) requiere correlacionar procesos con conexiones de red.
El uso de VPN por malware es cada vez más común para bypass de controles de seguridad.
5. URLs de C2 camufladas como sitios legítimos
La URL http://77.91.124.20/store/games/index.php intenta parecer un sitio de juegos legítimo.
Los atacantes disfrazan la infraestructura C2 con rutas aparentemente inocentes para evadir detección por URL filtering y análisis superficial.
Extraer strings de memory dumps puede revelar estas URLs incluso si el tráfico de red no fue capturado.
6. Directorios temporales con subdirectorios aleatorios
La ruta C:\Users\Tammam\AppData\Local\Temp\c3912af058\oneetx.exe muestra cómo el malware utiliza subdirectorios generados aleatoriamente dentro de %TEMP% para dificultar la detección basada en rutas estáticas.
Los EDR/XDR deben monitorizar ejecuciones desde directorios temporales independientemente de la ruta específica.
La telemetría de ejecución de archivos desde AppData\Local\Temp debe generar alertas de alta prioridad.
[EOF] "Memory holds the truth — even when the disk lies"