IntermedioCAPECuckoosandboxopen-sourceanálisisautomatización

Guía Práctica de CAPE/Cuckoo: Sandbox Open-Source para Análisis de Malware

Guía completa de CAPE (Cuckoo Sandbox evolution) para análisis automatizado de malware. Arquitectura, instalación, tipos de análisis, reportes, módulos y buenas prácticas.

MalwareIntel Research··6 min lectura
Serie: Guías de Herramientas — Parte 5

Qué es CAPE

CAPE (Config And Payload Extraction) es un fork activo y mejorado de Cuckoo Sandbox, el sandbox de análisis de malware open-source más conocido. Ejecuta muestras sospechosas en máquinas virtuales aisladas, monitoriza todo su comportamiento y genera reportes detallados.

La diferencia clave con Cuckoo: CAPE extrae automáticamente configuraciones de malware (C2 servers, claves de cifrado) y unpacks payloads ofuscados, proporcionando inteligencia accionable directamente.

Arquitectura

CAPE Sandbox Architecture:

  Host (Ubuntu/Debian)
  ├── CAPE Core (Python)
  │   ├── Scheduler (gestiona cola de analisis)
  │   ├── Result Server (recibe datos de VMs)
  │   └── Processing Pipeline (genera reportes)
  ├── Web UI (Django)
  │   ├── Submit (subir muestras)
  │   ├── Reports (visualizar resultados)
  │   └── API REST (integracion externa)
  ├── MongoDB (almacena reportes)
  ├── PostgreSQL (metadata)
  └── Elasticsearch (busqueda, opcional)

  Guest VMs (KVM/QEMU)
  ├── Windows 10 x64 (principal)
  ├── Windows 7 x64 (legacy)
  ├── Ubuntu 22.04 (Linux)
  └── [Snapshots limpios restaurados antes de cada analisis]

  Cada VM tiene:
  ├── CAPE Agent (agent.py corriendo)
  ├── Software comun (Office, navegador, Java)
  └── Red aislada (INetSim o internet controlado)

Flujo de análisis

1. Submit

Envía la muestra via web UI o API REST:

# Via API REST
curl -F [email protected] http://cape-host:8000/apiv2/tasks/create/file/

# Via web UI
# Accede a http://cape-host:8000 → "Submit a file"
# Opciones: timeout, paquete de analisis, VM, red

2. Ejecución en VM

CAPE restaura un snapshot limpio de la VM seleccionada, transfiere la muestra y la ejecuta. Durante la ejecución:

  • El agente CAPE monitoriza API calls del proceso
  • El traffic capturer registra todo el tráfico de red
  • Regshot captura cambios en registro y sistema de ficheros
  • Se toman screenshots periódicos del escritorio

3. Recolección

Al finalizar el timeout (por defecto 120-300 segundos), CAPE:

  • Extrae logs de API calls
  • Descarga ficheros dropped/descargados
  • Captura volcado de memoria del proceso
  • Recupera PCAP de red completo
  • Extrae configuraciones de malware conocido (si aplica)

4. Procesamiento y reporte

Pipeline de procesamiento:
  1. Analisis estatico del fichero original (hashes, strings, PE info)
  2. Analisis de comportamiento (API calls → patrones)
  3. Analisis de red (DNS, HTTP, C2 detection)
  4. Firmas de comportamiento (200+ signatures built-in)
  5. Extraccion de config (CAPE extractors para 100+ familias)
  6. Clasificacion MITRE ATT&CK
  7. Generacion de reporte (HTML, JSON, PDF)

Componentes principales

ComponenteFunción
SchedulerMotor principal: gestiona tareas, asigna VMs, coordina pipeline
Web UIInterfaz web Django para submit, reportes y gestión
API RESTIntegración con SIEM, SOAR, MISP, scripts externos
Result ServerRecibe datos del agente guest en tiempo real
Nest MonitorDashboard de estado de VMs y tareas activas
Processing modulesAnálisis post-ejecución (behavioral, network, memory)
SignaturesReglas de detección de comportamiento malicioso
CAPE ExtractorsExtracción de configs de familias conocidas

Sistemas operativos soportados

SOVersiónUso
Windows 10x64, builds recientesPrincipal para malware actual
Windows 11x64Malware que requiere Win11
Windows 7x64Legacy malware, exploits SMB
Windows XPx86Malware muy antiguo
Ubuntu20.04/22.04Malware Linux, scripts
AndroidEmuladorAPKs maliciosas

Secciones del reporte

Summary

Veredicto general con score, fichero analizado (hashes, tipo, tamaño), duración, firmas que matchearon y clasificación.

Behavioral Analysis

Todas las API calls agrupadas por categoría:

Categorias de API calls monitorizadas:
  File: CreateFile, WriteFile, DeleteFile, MoveFile
  Registry: RegCreateKey, RegSetValue, RegDeleteKey
  Process: CreateProcess, NtCreateThread, WriteProcessMemory
  Network: connect, send, recv, getaddrinfo, DnsQuery
  Crypto: CryptEncrypt, CryptDecrypt, CryptHashData
  Service: CreateService, StartService

Network Analysis

  • Resoluciones DNS con respuestas
  • Conexiones TCP/UDP con destino y payload
  • Peticiones HTTP/S completas
  • Certificados TLS capturados
  • PCAP descargable

Dropped Files

Todos los ficheros creados durante la ejecución, con hashes, tipo y análisis estático básico. Click para descargar o reanalizar.

Process Tree

Árbol jerárquico de procesos con PID, nombre, línea de comandos y relación padre-hijo. Esencial para detectar process injection y ejecución en cadena.

CAPE Extraction

Lo que hace único a CAPE: extracción automática de configuraciones de malware. Para familias soportadas, extrae:

Ejemplo de extraccion (Emotet):
  C2 servers: 185.94.252.13:443, 91.121.87.90:8080
  RSA public key: [base64]
  Campaign ID: epoch5
  Bot ID format: [computername]_[username]_[random]

Familias con extractors: Emotet, QBot, TrickBot, AgentTesla, Formbook, RedLine, Raccoon, AsyncRAT, Cobalt Strike, IcedID, y 100+ más.

Instalación básica

# Requisitos: Ubuntu 22.04, KVM habilitado
sudo apt update
sudo apt install -y git python3 python3-pip libvirt-daemon qemu-kvm

# Clonar CAPE
git clone https://github.com/kevoreilly/CAPEv2.git
cd CAPEv2

# Instalar dependencias
sudo pip3 install -r requirements.txt

# Configurar
cp conf/cuckoo.conf.default conf/cuckoo.conf
# Editar: machinery = kvm, IP, resultserver

# Preparar VM Windows 10
# 1. Crear VM en virt-manager
# 2. Instalar Windows + software comun
# 3. Ejecutar agent.py en la VM
# 4. Tomar snapshot "clean"

# Iniciar CAPE
python3 cuckoo.py
python3 manage.py runserver 0.0.0.0:8000

CAPE 2.0 vs Cuckoo legacy

AspectoCuckoo 2.xCAPE v2
MantenimientoInactivo desde ~2019Activo (2026)
Config extractionNoSí (100+ familias)
Payload unpackingLimitadoAutomático
Windows 10/11ParcialCompleto
MITRE ATT&CKNo
API monitoringBasado en hooksHooks + syscall tracing
CommunityFragmentadaActiva (GitHub, Discord)

Alternativas y evolución

  • CAPE 2.0: fork principal, el más activo
  • OpenCTI: plataforma CTI que integra con CAPE para enriquecimiento
  • Triage (Hatching): CAPE comercial en la nube, mantenido por desarrolladores de Cuckoo original
  • Karton (CERT.pl): framework de orquestación que usa CAPE como backend

Buenas prácticas

  1. Usa VPN/INetSim para la red de análisis. No permitas tráfico directo a Internet desde las VMs sin control. INetSim simula servicios de red para que el malware crea que tiene conectividad.
  2. Mantén snapshots actualizados. El malware detecta VMs con Windows desactualizado o sin software común. Actualiza Office, navegadores y parches periódicamente.
  3. Configura múltiples VMs. Diferentes versiones de Windows capturan diferentes comportamientos. Un malware puede funcionar en Win7 pero no en Win10.
  4. Revisa los extractors regularmente. Las familias de malware cambian sus configs. Actualiza CAPE frecuentemente para tener los extractors más recientes.
  5. Guarda los reportes y PCAPs. Son evidencia forense. Configura retención y backup.

Fuentes y referencias

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.