CAPE es un sandbox de malware. Se deriva de Cuckoo y está diseñado para automatizar el proceso de análisis de malware con el objetivo de extraer las cargas útiles y la configuración del malware. Esto le permite a CAPE detectar malware basado en firmas de carga útil, así como automatizar muchos de los objetivos de ingeniería inversa de malware e inteligencia de amenazas.

Existe una versión comunitaria en línea que cualquiera puede probar de forma gratuita

CAPE puede detectar una serie de técnicas de malwareo comportamientos, así como familias específicas de malware, desde su ejecución inicial en una muestra. Esta detección puede desencadenar una nueva ejecución con un paquete específico, para extraer la carga útil del malware y posiblemente su configuración, para un análisis más detallado.
CAPE funciona controlando el malware a través de un depurador a medida y ganchos de API. La detección para activar un paquete CAPE puede basarse en firmas API o Yara. El depurador utiliza firmas de Yara o enlaces de API para permitir que se establezcan puntos de interrupción en instrucciones individuales, regiones de memoria o llamadas a funciones. Una vez que se alcanza una región de interés, se puede manipular y volcar para su procesamiento y análisis, y posiblemente para analizar la configuración.

Las técnicas o comportamientos que CAPE detecta y tiene paquetes incluyen:

  • Inyección de proceso
  • Inyección de Shellcode
  • Inyección DLL
  • Proceso de vaciado
  • Proceso Doppelganging
  • Descompresión de módulos ejecutables en memoria
  • Extracción de módulos ejecutables o shellcode en memoria


Los paquetes para estos comportamientos volcarán las cargas útiles que se inyectan, extraen o descomprimen para su posterior análisis. Esta es a menudo la carga útil de malware en forma desempaquetada.

CAPE crea automáticamente un volcado de proceso para cada proceso o, en el caso de una DLL, la imagen del módulo de la DLL en la memoria. Esto es útil para muestras empaquetadas con empacadores simples, donde a menudo el volcado de imagen del módulo está completamente desempaquetado. Las firmas de Yara pueden activarse en los volcados del proceso, posiblemente resultando en el envío con un paquete específico o análisis de configuración.
CAPE también tiene un paquete que puede desempaquetar dinámicamente muestras que usan UPX 'hackeado' (modificado), muy popular entre los autores de malware. Estas muestras se ejecutan en el depurador de CAPE hasta su OEP (punto de entrada original), después de lo cual se descargan, se arreglan y sus importaciones se reconstruyen automáticamente, listas para su análisis.

Actualmente CAPE tiene paquetes específicos que descargan la configuración y las cargas útiles para las siguientes familias de malware:

  • PlugX
  • EvilGrab
  • Sedreco
  • Cerber
  • TrickBot
  • Hancitor
  • Ursnif
  • QakBot

CAPE tiene analizadores / decodificadores de configuración para las siguientes familias de malware, cuyas cargas útiles se extraen automáticamente mediante un paquete de comportamiento:


  • Emotet
  • Hoja roja
  • ChChes
  • HttpBrowser
  • Enfal
  • Hiedra venenosa
  • Chillido
  • TSCookie
  • Dridex
  • SmokeLoader

Muchas otras familias de malware tienen sus cargas útiles extraídas automáticamente por paquetes de comportamiento, para lo cual CAPE usa las firmas de Yara para detectar las cargas útiles. Esta lista está creciendo e incluye:

Azorult, Formbook, Ryuk, Hermes, Shade, Remcos, Ramnit, Gootkit, QtBot, ZeroT, WanaCry, NetTraveler, Locky, BadRabbit, Magniber, Redsip, Kronos, PetrWrap, Kovter, Azer, Petya, Dreambot, Atlas, NanoLocker, Mole, Codoso, Cryptoshield, Loki, Jaff, IcedID, Scarab, Cutlet, RokRat, OlympicDestroyer, Gandcrab, Fareit, ZeusPanda, AgentTesla, Inminent, Arkei, Sorgu, tRat, T5000, TClient, TreasureHunter.

Los datos de configuración pueden salir de paquetes familiares o de cargas útiles resultantes de paquetes de comportamiento. El análisis de la configuración se puede realizar sobre esto en virtud de la detección basada en Yara, y el análisis de la configuración basado en cualquiera de los marcos de análisis de configuración de CAPE, el marco RATDecoders de malwareconfig.com y DC3-MWCP (Defense Cyber ​​Crime Center - Malware Configuration Parser). También se incluyen los muchos analizadores / decodificadores de malwareconfig.com, que comprenden entre muchos otros: Sakula, DarkComet, PredatorPain y PoisonIvy. Gracias a Kevin Breen / TechAnarchy por este marco y analizadores ( https://github.com/kevthehermit/RATDecoders ), y a DC3 por su marco ( https: // gi thub.com/Defense-Cyber-Crime-Center/DC3 -MWCP) Un agradecimiento especial a Jason Reaves (@sysopfb) por el analizador TrickBot y Fabien Perigaud por el analizador PlugX.

También se incluyen paquetes de utilidades: 'DumpOnAPI' permite que un módulo sea volcado cuando llama a una función API específica que se puede especificar en la interfaz web. 'DumpConfigRegion' permite que la región de memoria que contiene información de C2 u otros datos de configuración se descargue para las llamadas API de uso común. Estos paquetes pueden ser útiles para desempacar / descargar rápidamente nuevas muestras o configuraciones. El paquete 'Rastreo' permite un acceso rápido al depurador al aceptar cuatro puntos de interrupción (valores RVA) para establecer instrucciones, con lo cual se generará un breve rastreo de instrucciones. Un parámetro opcional 'base-on-api' permite establecer la base de la imagen mediante una llamada API.
El depurador CAPE permite establecer puntos de interrupción en lectura, escritura o ejecución de una dirección de memoria o región, así como en modo de un solo paso. Esto permite un control preciso sobre la ejecución de malware hasta que sea posible volcar las regiones de memoria de interés, que contienen código o datos de configuración. Los puntos de interrupción se pueden establecer dinámicamente por código de paquete, enlaces de API o firmas de Yara. Gracias a la biblioteca de distorsión incorporada, el depurador puede generar el desmontaje de las instrucciones durante el modo de un solo paso o cuando se alcanzan los puntos de interrupción, lo que resulta en seguimientos de instrucciones.

CAPE puede deshacerse de procesos, módulos y regiones de memoria mediante el uso de una API simple. Estos volcados se pueden escanear y analizar para obtener información de configuración. Los módulos ejecutables se fijan al volcarlos y también pueden hacer que sus importaciones se reconstruyan automáticamente (según Scylla: https://github.com/NtQuery/Scylla ). Los paquetes se pueden escribir en función de los enganches API, el depurador CAPE o una combinación de ambos. Hay una serie de otros paquetes de familia y analizadores de comportamiento y malware actualmente en proceso, así que mire este espacio.
El repositorio que contiene el código para las DLL del monitor que forman la base de estos paquetes es distinto: https://github.com/ctxis/capemon . Este repositorio está organizado en ramas para los diversos paquetes.

Recomendaciones de instalación y scripts para un rendimiento óptimo

Para una mejor compatibilidad, sugerimos instalar en Ubuntu 18.04 LTS

Se recomienda KVM como hipervisor

sudo ./kvm-qemu.sh all <username>
Para instalar CAPE, cuckoo.sh con todas las optimizaciones
sudo ./cuckoo.sh all cape

Reiniciar y disfrutar
* Todos los scripts contienen ayuda -h , pero verifíquelos para comprender lo que están haciendo.

Fuente y descarga: https://github.com/ctxis/CAPE