AvanzadoCAPEAgentTeslasandboxconfig extraction.NETinfostealerYARAMITRE ATT&CK

CAPE Sandbox: Extracción de Config de AgentTesla

Análisis avanzado con CAPE Sandbox para extraer la configuración completa de AgentTesla: servidores C2, credenciales SMTP, FTP, tokens Telegram, análisis behavioral, reglas YARA activadas y comparación con ANY.RUN. IOCs completos y mapeo ATT&CK.

MalwareIntel Research··10 min lectura
Serie: Casos de Uso — Parte 23

Más allá del triaje: extracción de configuraciones

Cuando un sandbox genérico te dice "este fichero es malicioso", el trabajo del analista apenas comienza. La verdadera inteligencia accionable está en la configuración embebida del malware: los servidores C2 a los que reporta, las credenciales que usa para exfiltrar datos, los canales de comunicación, y las capacidades específicas habilitadas por el operador.

CAPE (Config And Payload Extraction) es un sandbox open-source diseñado específicamente para esta tarea. Basado en Cuckoo Sandbox pero con módulos especializados de unpacking y extracción de configuraciones para cientos de familias de malware, CAPE es la herramienta de referencia para pasar del "es malicioso" al "esto es exactamente lo que hace y cómo comunicárselo".

En este caso, analizamos una muestra de AgentTesla (un infostealer .NET extremadamente prolífico) en CAPE para extraer su configuración completa y generar inteligencia accionable.

AgentTesla (también conocido en variantes como OriginLogger) es un infostealer basado en .NET que se vende como Malware-as-a-Service (MaaS). Sus características principales:

  • Robo de credenciales: navegadores (Chrome, Firefox, Edge, Opera), clientes de email (Outlook, Thunderbird), clientes FTP (FileZilla, WinSCP), VPN (NordVPN, OpenVPN)
  • Keylogger: captura de teclas en tiempo real
  • Screen capture: capturas de pantalla periódicas
  • Clipboard monitor: captura de datos del portapapeles
  • Exfiltración multicanal: SMTP, FTP, Telegram API, HTTP POST, Discord webhooks

La configuración del malware define exactamente qué datos roba, con qué frecuencia, y a dónde los envía. Extraerla es equivalente a obtener la "ficha de operación" del atacante.

Preparación del análisis en CAPE

Subida del sample

Nuestra muestra es un ejecutable .NET empaquetado:

# Análisis estático previo
$ file sample.exe
sample.exe: PE32 executable (GUI) Intel 80386 Mono/.Net assembly, for MS Windows

$ sha256sum sample.exe
b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6  sample.exe

# Verificar si es .NET
$ monodis --assembly sample.exe 2>/dev/null | head -5
.assembly 'WindowsFormsApp1'
{
  .ver 1:0:0:0
}

Configuración en CAPE

Al subir el sample a CAPE (interfaz web o API):

# Via API de CAPE
$ curl -F "[email protected]" \
    -F "package=exe" \
    -F "timeout=300" \
    -F "options=procmemdump=yes,CAPE=1" \
    http://cape-server:8000/api/tasks/create/file/

{"task_id": 4521}

Opciones clave:

  • procmemdump=yes: Volcar la memoria de cada proceso (necesario para obtener el payload desempaquetado)
  • CAPE=1: Habilitar los módulos de extracción de CAPE
  • timeout=300: 5 minutos de ejecución (AgentTesla necesita tiempo para completar su inicialización)

Análisis del comportamiento

Cadena de ejecución

CAPE captura la cadena completa de procesos:

sample.exe (PID 2456) [.NET, packed]
  ├── Unpacking layer 1: ConfuserEx
  ├── Unpacking layer 2: Custom .NET loader
  └── Injected into: RegAsm.exe (PID 3567) [AgentTesla payload]
        ├── Reads Chrome Login Data database
        ├── Reads Firefox logins.json
        ├── Reads Outlook registry credentials
        ├── Creates keylog file: %TEMP%\log.tmp
        └── Connects to: smtp.yandex.ru:587 (TLS)

Proceso de desempaquetado

CAPE identifica automáticamente las capas de empaquetado:

Capa 1: ConfuserEx

  • Protector .NET comercial (versión crackeada)
  • CAPE usa su módulo de unpacking específico para ConfuserEx
  • Restaura los nombres de métodos y clases ofuscados

Capa 2: Custom .NET loader

  • Cargador personalizado que descifra el payload en memoria
  • Usa AES-256 con clave derivada de un recurso embebido
  • CAPE hookea las funciones de descifrado para capturar el payload en claro

Capa 3: Process hollowing

  • El payload descifrado se inyecta en RegAsm.exe (binario legítimo de .NET)
  • Técnica T1055.012 (Process Hollowing)
  • CAPE captura el payload inyectado mediante hooks en NtUnmapViewOfSection y WriteProcessMemory

Volcado del payload desempaquetado

CAPE extrae el binario .NET final (desempaquetado y descifrado):

# El payload extraído está disponible en los resultados
$ sha256sum CAPE/payloads/3567_RegAsm.exe_payload
c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1b2c3d4e5f6a7b8c9d0  payload.bin

$ monodis --assembly payload.bin | head -5
.assembly 'AgentTesla'
{
  .ver 4:0:0:0
}

Extracción de configuración

La configuración extraída por CAPE

Este es el resultado principal y la razón de usar CAPE: la configuración completa del malware extraída automáticamente:

{
  "family": "AgentTesla",
  "version": "4.0",
  "exfil_method": "SMTP",
  "smtp": {
    "host": "smtp.yandex.ru",
    "port": 587,
    "username": "[email protected]",
    "password": "R3dT34m$up3r!",
    "use_ssl": true,
    "recipient": "[email protected]"
  },
  "ftp": {
    "host": "ftp.compromised-host.xyz",
    "port": 21,
    "username": "ftpuser",
    "password": "Ftp@2026Secure"
  },
  "telegram": {
    "bot_token": "6123456789:AAF_xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "chat_id": "-1001234567890"
  },
  "capabilities": {
    "keylogger": true,
    "screenshot": true,
    "screenshot_interval_seconds": 300,
    "clipboard_monitor": true,
    "browser_credentials": true,
    "email_credentials": true,
    "ftp_credentials": true,
    "vpn_credentials": true,
    "wifi_credentials": true
  },
  "persistence": {
    "method": "registry_run",
    "key": "HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Run",
    "value_name": "WindowsSecurityUpdate",
    "copy_path": "%APPDATA%\\Microsoft\\Windows\\svchost.exe"
  },
  "anti_analysis": {
    "detect_vm": true,
    "detect_sandbox": true,
    "detect_debugger": true,
    "delay_execution_seconds": 15,
    "check_disk_size": true,
    "min_disk_size_gb": 60
  },
  "mutex": "AgentTesla_HWID_A1B2C3D4"
}

Interpretación de la configuración

Canal primario de exfiltración: SMTP El malware envía los datos robados como adjuntos de email a través de una cuenta de Yandex ([email protected]) hacia una dirección de Protonmail ([email protected]). Las credenciales SMTP están en texto claro en la configuración.

Canal secundario: FTP Como backup, el malware puede subir ficheros a un servidor FTP comprometido (ftp.compromised-host.xyz). Las credenciales FTP sugieren que el servidor no pertenece al atacante sino que fue comprometido previamente.

Canal terciario: Telegram El bot Telegram con token 6123456789:AAF_... envía datos al chat ID -1001234567890 (un grupo o canal privado). El token permite:

  • Consultar información del bot: GET https://api.telegram.org/bot{token}/getMe
  • Identificar al operador (potencialmente)

Anti-análisis El malware verifica si está en un entorno de análisis: busca indicadores de máquinas virtuales, sandboxes, y debuggers. También requiere un disco de al menos 60 GB (los sandboxes suelen tener discos pequeños). CAPE bypasea estas verificaciones mediante hooks a nivel de kernel.

Reglas YARA activadas

CAPE ejecuta un conjunto extenso de reglas YARA contra el payload desempaquetado:

CAPE_AgentTesla          → Detección genérica de AgentTesla
AgentTesla_SMTP          → Módulo SMTP de exfiltración
AgentTesla_Keylogger     → Módulo de keylogging
DotNET_Stealer_Generic   → Patrón genérico de .NET stealer
ConfuserEx_Packed        → Detección del empaquetador
AntiVM_VMware            → Código de detección de VMware
AntiVM_VirtualBox        → Código de detección de VirtualBox
Persistence_RegRun       → Persistencia via registro
ProcessHollowing         → Técnica de inyección

Regla YARA personalizada para esta variante

rule AgentTesla_SMTP_Yandex_2026 {
    meta:
        description = "AgentTesla variant using Yandex SMTP for exfiltration"
        author = "MalwareIntel Research"
        date = "2026-06-06"
        severity = "high"
        family = "AgentTesla"
    strings:
        $smtp1 = "smtp.yandex" ascii wide
        $smtp2 = "smtp.mail.ru" ascii wide
        $method1 = "SmtpClient" ascii
        $method2 = "NetworkCredential" ascii
        $steal1 = "Login Data" ascii wide
        $steal2 = "logins.json" ascii wide
        $steal3 = "\\Outlook\\Profiles" ascii wide
        $mutex = "AgentTesla" ascii wide
        $net = "System.Net.Mail" ascii
    condition:
        uint16(0) == 0x5A4D and
        any of ($smtp*) and
        any of ($method*) and
        2 of ($steal*) and
        $net
}

Análisis behavioral detallado

Ficheros accedidos (robo de credenciales)

CAPE registra cada fichero que el malware intenta leer:

READ: C:\Users\admin\AppData\Local\Google\Chrome\User Data\Default\Login Data
READ: C:\Users\admin\AppData\Local\Google\Chrome\User Data\Default\Web Data
READ: C:\Users\admin\AppData\Roaming\Mozilla\Firefox\Profiles\xxxxxxxx.default\logins.json
READ: C:\Users\admin\AppData\Roaming\Mozilla\Firefox\Profiles\xxxxxxxx.default\key4.db
READ: C:\Users\admin\AppData\Local\Microsoft\Edge\User Data\Default\Login Data
READ: C:\Users\admin\AppData\Roaming\FileZilla\recentservers.xml
READ: C:\Users\admin\AppData\Roaming\FileZilla\sitemanager.xml

Claves de registro accedidas

READ: HKCU\Software\Microsoft\Office\16.0\Outlook\Profiles\Outlook\9375CFF0413111d3B88A00104B2A6676
READ: HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles
READ: HKCU\Software\Martin Prikryl\WinSCP 2\Sessions
READ: HKCU\Software\SimonTatham\PuTTY\Sessions

Comunicaciones de red (detalle)

DNS Query: smtp.yandex.ru → 77.88.21.158
TCP Connect: 77.88.21.158:587
TLS Handshake: smtp.yandex.ru (TLS 1.2)
SMTP AUTH: [email protected]
SMTP MAIL FROM: [email protected]
SMTP RCPT TO: [email protected]
SMTP DATA: [attachment: PW_DESKTOP-ABC_admin_2026-06-05.html]

Comparación CAPE vs ANY.RUN para este sample

AspectoCAPEANY.RUN
Detección de familiaAgentTesla (automático)AgentTesla (automático)
DesempaquetadoAutomático (ConfuserEx + custom)Parcial (solo payload final)
Extracción de configCompleta (SMTP, FTP, Telegram, opciones)Parcial (solo datos de red observados)
Credenciales SMTPExtraídas de la configVisibles en tráfico MITM
Token TelegramExtraído de la configVisible en tráfico
Credenciales FTP backupExtraídas aunque no se usaronNo visibles (canal no usado en ejecución)
Opciones anti-VMListadas en la configObservadas como comportamiento
YARA rules9 reglas activadasSuricata rules (red)
InteractividadNo (ejecución automática)Si (control en tiempo real)
Velocidad de análisis5-10 min (automático)5 min (interactivo)

Conclusión de la comparación: CAPE es superior para extracción de configuraciones porque accede a datos embebidos que nunca pasan por la red. ANY.RUN es superior para observar el comportamiento en tiempo real e interactuar con el malware. Usar ambos proporciona la imagen más completa.

IOCs del análisis

Hashes

TipoValorDescripción
SHA256b5c6d7e8...Sample original (empaquetado)
SHA256c9d0e1f2...Payload desempaquetado (AgentTesla)
MD5f1e2d3c4...Sample original

Infraestructura

TipoValorContexto
SMTPsmtp.yandex.ru:587Canal de exfiltración primario
Email[email protected]Cuenta SMTP del atacante
Email[email protected]Buzón receptor de datos robados
FTPftp.compromised-host.xyz:21Canal de exfiltración secundario
TelegramBot token 6123456789:AAF_...Canal de exfiltración terciario
TelegramChat ID -1001234567890Grupo receptor de datos

Host

TipoValorContexto
MutexAgentTesla_HWID_A1B2C3D4Mutex de instancia única
RegistryHKCU\...\Run\WindowsSecurityUpdatePersistencia
Path%APPDATA%\Microsoft\Windows\svchost.exeCopia del malware
Path%TEMP%\log.tmpFichero temporal de keylogger

Mapeo MITRE ATT&CK

TácticaTécnicaIDDetalle
ExecutionUser Execution: Malicious FileT1204.002Ejecución del .exe
Defense EvasionObfuscated Files or Information: Software PackingT1027.002ConfuserEx + loader custom
Defense EvasionProcess Injection: Process HollowingT1055.012Inyección en RegAsm.exe
Defense EvasionVirtualization/Sandbox EvasionT1497Detección de VM/sandbox
PersistenceBoot or Logon Autostart: Registry Run KeysT1547.001HKCU...\Run
Credential AccessCredentials from Password Stores: Credentials from Web BrowsersT1555.003Chrome, Firefox, Edge
Credential AccessInput Capture: KeyloggingT1056.001Keylogger activo
CollectionScreen CaptureT1113Capturas cada 300 segundos
CollectionClipboard DataT1115Monitor de portapapeles
ExfiltrationExfiltration Over Alternative Protocol: SMTPT1048.002Envío via Yandex SMTP
ExfiltrationExfiltration Over Web ServiceT1567Telegram API como backup

Acciones de remediación basadas en la config

Con la configuración extraída, las acciones de remediación son precisas:

  1. Bloquear cuentas de email: Reportar [email protected] a Yandex abuse
  2. Bloquear tráfico: SMTP saliente hacia smtp.yandex.ru en el firewall corporativo (excepto para usuarios legítimos)
  3. Invalidar bot Telegram: Reportar el token a Telegram abuse
  4. Bloquear FTP: ftp.compromised-host.xyz en proxy/firewall
  5. Buscar el mutex: Verificar si AgentTesla_HWID_A1B2C3D4 existe en otros endpoints
  6. Verificar persistencia: Buscar WindowsSecurityUpdate en HKCU...\Run en todos los endpoints
  7. Resetear credenciales: Forzar cambio de contraseña en todos los servicios cuyos credenciales fueron robados

Los datos de configuración presentados son ficticios con fines educativos, basados en patrones reales de AgentTesla. Todos los indicadores se proporcionan con contexto defensivo.

Preguntas frecuentes

Artículos relacionados

Este contenido tiene fines exclusivamente educativos y de investigación en ciberseguridad defensiva. No se proporcionan binarios maliciosos ni payloads ejecutables. El uso indebido de esta información es responsabilidad exclusiva del usuario. Leer disclaimer completo.