Este writeup es con fines educativos y de práctica profesional. Las respuestas mostradas corresponden al laboratorio público de CyberDefenders. Los hashes, IPs y artefactos pertenecen al escenario controlado del reto, no a infraestructura real en producción.
0x00 Introducción
Segundo post de la serie de laboratorios de CyberDefenders.
Esta vez nos enfrentamos a Oski, un laboratorio de Threat Intelligence centrado en el análisis de una campaña maliciosa asociada con la familia de malware Stealc.
El escenario comienza con un correo electrónico sospechoso que contiene un archivo adjunto aparentemente urgente, que activa una alerta de seguridad debido a una descarga potencialmente maliciosa.
Examinando los artefactos proporcionados y aprovechando herramientas como VirusTotal y Any.Run, la investigación descubre el comportamiento, las tácticas y las técnicas empleadas por el malware.
A través del análisis, profundizamos en varios aspectos del malware: su identificación familiar, tiempo de creación, comunicación con un servidor C2, actividades iniciales post-infección, ajustes de configuración y técnicas de evasión.
Se revelan ideas clave, como su uso de la clave de cifrado RC4, su enfoque en el robo de credenciales de los almacenes de contraseñas del navegador y su comportamiento de autoeliminación para evitar la detección.
Cada descubrimiento se alinea con técnicas específicas del framework MITRE ATT&CK.
0x01 El Escenario
| Elemento | Detalle |
|---|---|
| Familia de malware | Stealc (Information Stealer) |
| Vector de entrada | Correo electrónico con adjunto malicioso |
| Evidencia | Artefactos de malware, informes de VirusTotal y Any.Run |
| Misión | Analizar comportamiento del malware, identificar C2, mapear a MITRE ATT&CK |
Herramientas
| Herramienta | Uso |
|---|---|
| VirusTotal | Análisis de hashes, detección de familias de malware, timestamp de creación |
| Any.Run | Sandbox de análisis dinámico, extracción de configuración, mapeo MITRE |
0x02 Análisis
Q1
Determinar el tiempo de creación del malware puede proporcionar información sobre su origen. ¿Cuándo fue el momento de crear el malware?
Lo primero que miro en cualquier muestra: el timestamp de compilación. Dice más que cualquier AV vendor sobre cuándo empezó todo y cuánto tiempo lleva campando a sus anchas.
En este caso, el tiempo de creación del malware se indica como September 28, 2022, at 17:40:46 UTC.
Respuesta: 2022-09-28 17:40:46 UTC
Q2
Identificar el servidor de comando y control (C2) con el que se comunica el malware puede ayudar a rastrear al atacante. ¿Con qué servidor C2 se comunica el malware?
El C2 es el corazón del malware: sin él, no hay exfiltración, no hay beaconing, no hay nada. Encontrar el servidor es lo primero que necesitas para bloquear la campaña.
El servidor C2 identificado está asociado con la dirección IP 171.22.28.221.
Esta IP aparece en múltiples patrones de memoria y está vinculada a URLs a las que el malware intenta conectarse, como rutas que terminan en .php y .exe.
Respuesta: 171.22.28.221
Q3
Identificar las acciones iniciales del malware después de la infección puede proporcionar información sobre sus objetivos principales. ¿Cuál es la primera biblioteca que solicita el malware después de la infección?
Lo primero que hace un stealer tras aterrizar en la máquina no es robar nada: es preparar el terreno. Y eso suele pasar por cargar DLLs que el sistema no necesita.
La primera biblioteca que el malware solicita después de la infección es sqlite3.dll. Tiene todo el sentido del mundo: Stealc va a saquear las bases de datos de credenciales que los navegadores guardan en SQLite.
Respuesta: sqlite3.dll
Q4
Examinando el informe de Any.Run, ¿qué clave RC4 utiliza el malware para descifrar su cadena codificada en base64?
RC4 sigue siendo el cifrado favorito de los stealers: rápido, sin dependencias y suficiente para ocultar strings y configuración de un análisis superficial. Toca sacar la clave del reporte de Any.Run.
El malware utiliza la clave RC4 5329514621441247975720749009. Con esa clave descifra las strings en base64 que usa para construir URLs del C2 y cargar recursos adicionales.
Respuesta: 5329514621441247975720749009
Q5
Examinando las técnicas MITRE ATT&CK mostradas en el informe de sandbox de Any.Run, identifique la técnica MITRE principal (no sub-técnicas) que utiliza el malware para robar la contraseña del usuario.
MITRE ATT&CK no es decoración para el reporte: es el idioma común que entienden SOC, IR y threat intel. Si no mapeas lo que ves a una técnica, es como encontrar un IOC y no compartirlo.
El malware emplea la técnica T1555, conocida como “Credentials from Password Stores”. Básicamente va a por las credenciales guardadas en el navegador: Chrome, Edge, Firefox, lo que tenga a mano.
Respuesta: T1555 — Credentials from Password Stores
Q6
Examinando los procesos secundarios en el informe de sandbox de Any.Run, ¿a qué directorio apunta el malware para la eliminación de todos los archivos DLL?
Todo stealer decente limpia tras de sí antes de largarse. Si no encuentras los DLLs en el sistema, no es que no estuvieran ahí: es que el malware se encargó de que no los veas.
El malware apunta a dos rutas específicas para su eliminación:
- C:\Users\admin\AppData\Local\Temp\VPN.exe
- C:\ProgramData\
Usa cmd.exe para borrar el ejecutable principal y cualquier DLL asociada (*.dll) que se haya cargado durante la ejecución.
Respuesta: C:\ProgramData\
Q7
Comprender el comportamiento del malware después de la exfiltración de datos puede brindar información sobre sus técnicas de evasión. Después de exfiltrar los datos del usuario, ¿cuántos segundos tarda el malware en autoeliminarse?
El último truco del stealer: borrarse a sí mismo tras exfiltrar. Si el delay es corto, tienes que capturar evidencia en vivo o no habrá nada que analizar.
El malware utiliza un comando para eliminarse 5 segundos después de la ejecución. Justo el tiempo justo para terminar la exfiltración y desaparecer sin dejar rastro en disco.
Respuesta: 5 segundos
0x03 Resumen
| Fase | Acción | Evidencia / IOC |
|---|---|---|
| Delivery | Email con adjunto malicioso | Compilado: 2022-09-28 17:40:46 UTC |
| C2 Communication | Conexión a servidor C2 | 171.22.28.221 |
| Loading | Descarga de dependencias | sqlite3.dll (primera biblioteca) |
| Decryption | Descifrado de configuración | RC4 key: 532951462…9009 |
| Credential Theft | Robo de contraseñas de navegadores | MITRE T1555 |
| Cleanup | Eliminación de DLLs y autoeliminación | C:\ProgramData\ → 5s delay |
0x04 Lecciones
Claves extraídas del laboratorio
- Timestamps como inteligencia: El tiempo de compilación del malware permite establecer la cronología del ataque y correlacionarlo con campañas conocidas.
Un malware compilado meses antes de su detección indica evasión prolongada.
- Bloqueo de IOCs en el perímetro: La IP del C2 (171.22.28.221) debe añadirse inmediatamente a las listas de bloqueo del firewall y a las reglas del IDS/IPS.
Monitorear conexiones a esta IP puede revelar otros sistemas comprometidos.
- sqlite3.dll como indicador: La solicitud de bibliotecas legítimas (sqlite3.dll) por parte de un ejecutable sospechoso es un patrón de comportamiento detectable.
Las reglas de detección deben incluir la descarga de DLLs legítimas por procesos no habituales.
- Protección de almacenes de contraseñas: La técnica T1555 refuerza la importancia de no almacenar contraseñas en los navegadores sin cifrado adicional.
Soluciones como gestores de contraseñas dedicados con MFA añaden una capa de defensa.
- Comportamiento anti-forense: La autoeliminación en 5 segundos y la limpieza de DLLs en C:\ProgramData\ muestran la sofisticación del malware.
Las herramientas de EDR que capturan artefactos en tiempo real son esenciales para preservar evidencia antes de la limpieza.
La combinación de plataformas como VirusTotal y Any.Run proporciona al analista una visión completa del ciclo de vida del malware: desde su compilación hasta su autoeliminación, pasando por la exfiltración de datos y la comunicación con el C2.
[EOF] “The malware deletes itself, the evidence shouldn’t”