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.

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 Intrusión 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

ElementoDetalle
AmenazaRedLine Stealer — Info-stealer modular
Alerta inicialSistema comprometido detectado por el equipo azul
ImpactoRobo de credenciales + evasión de NIDS + comunicación C2
EvidenciaMemory dump (MemoryDump.mem) capturado del sistema comprometido
HerramientasVolatility 3, Excel para análisis, PowerShell, strings
MisiónIdentificar proceso malicioso, analizar jerarquías, protecciones de memoria, C2 y TTPs

0x02 — Análisis

Q1

¿Cómo se llama el proceso sospechoso?

Lo primero: ¿qué proceso está haciendo cosas raras? Para esto, Volatility 3 y su plugin windows.pstree son mis primeras herramientas. Te muestran el árbol de procesos padre-hijo, y ahí es donde salen los fantasmas.

Si un proceso legítimo tiene un hijo que no debería tener, ahí tienes la anomalía.

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 Q1

Respuesta: oneetx.exe

Q2

¿Cuál es el nombre del proceso secundario del proceso sospechoso?

Ya tenemos oneetx.exe marcado como sospechoso. Ahora toca ver qué ha spawneado. Volvemos al árbol de procesos y miramos sus hijos.

La regla es simple: si un proceso legítimo del sistema genera un ejecutable desconocido desde una ruta rara, tienes un problema.

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 Q2

Respuesta: rundll32.exe

Q3

¿Cuál es la protección de memoria aplicada a la región de memoria del proceso sospechoso?

Memory forensics no es solo ver qué proceso corre. Hay que mirar qué permisos tiene en memoria. Una región con PAGE_EXECUTE_READWRITE (RWX) es bandera roja: significa que puede escribir y ejecutar código en la misma zona, algo que el malware necesita para inyectar payloads.

Los permisos legítimos son de solo lectura o lectura/escritura. RWX en un proceso que no es un compilador JIT o un debugger? Sospechoso.

Para ver esto, Volatility tiene el plugin windows.vadinfo:

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 Q3

Respuesta: PAGE_EXECUTE_READWRITE

Q4

¿Cómo se llama el proceso responsable de la conexión VPN?

El atacante estaba usando una VPN para ocultar el tráfico malicioso. Para ver qué proceso maneja el túnel, volvemos al árbol de procesos y buscamos procesos relacionados con VPN.

Ahí aparece tun2socks.exe, que traduce tráfico SOCKS a paquetes IP. Pero tun2socks no trabaja solo, tiene un padre que lo controla.

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 Q4

Respuesta: outline.exe

Q5

¿Cuál es la dirección IP del atacante?

Toca identificar la IP del atacante. Sacamos las conexiones de red del memory dump con windows.netscan de Volatility y filtramos por los procesos que ya conocemos:

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 Q5

Respuesta: 77.91.124.20

Q6

¿Cuál es la URL completa del archivo PHP que visitó el atacante?

Ya tenemos la IP del atacante (77.91.124.20). Ahora buscamos la URL completa del C2 dentro del memory dump. La idea es buscar la IP como string dentro del volcado y ver qué URL aparece asociada.

Con PowerShell y Select-String podemos buscar la IP en el archivo 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 Q6

Respuesta: http://77.91.124.20/store/games/index.php

Q7

¿Cuál es la ruta completa del ejecutable malicioso?

Para cerrar, buscamos la ruta completa del ejecutable malicioso. Volatility tiene windows.filescan para escanear archivos referenciados en el memory dump. Filtramos por oneetx.exe:

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 Q7

Respuesta: C:\Users\Tammam\AppData\Local\Temp\c3912af058\oneetx.exe

0x03 — Cadena de Ataque

FaseAcciónDetalle técnico / Artefacto
1. Ejecución inicialoneetx.exe se ejecuta en sistemaRuta: C:\Users\Tammam\AppData\Local\Temp\c3912af058\Generado por: svchost.exe (PID parent)
2. Inyección de códigoMemoria con permisos RWXPAGE_EXECUTE_READWRITEIndicador de shellcode/code injection
3. Ejecución DLLGenera rundll32.exe como hijoLiving off the land binary (LOLBin)Proceso hijo malicioso de oneetx.exe
4. Evasión NIDSVPN activa para ocultar tráficooutline.exe → tun2socks.exeTunnel hacia 38.121.43.65:443
5. Comunicación C2Conexión a servidor del atacanteIP: 77.91.124.20:80URL: http://77.91.124.20/store/games/index.php
6. ExfiltraciónRedLine roba credenciales y datosPasswords, cookies, wallets cryptoEnviados 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.

  1. 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.

  1. 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.

  1. 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.

  1. 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.

  1. 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”