Imaginary C2 es una herramienta de Python que tiene como objetivo ayudar en el análisis de comportamiento (red) del malware.
Imaginary C2 aloja un servidor HTTP que captura las solicitudes HTTP hacia dominios / IP seleccionados selectivamente. Además, la herramienta tiene como objetivo facilitar la reproducción de las respuestas de comando y control capturadas / las cargas útiles servidas.
Al usar esta herramienta, un analista puede alimentar las respuestas de red consistentes con el malware (por ejemplo, instrucciones de C&C para que el malware se ejecute). Además, el analista puede capturar e inspeccionar las solicitudes HTTP hacia un dominio / IP que está fuera de línea en el momento del análisis.
Repetir capturas de paquetes
Imaginary C2 proporciona dos scripts para convertir capturas de paquetes (PCAP) o Fiddler Session Archives en definiciones de solicitud que pueden ser analizadas por imaginary C2. A través de estos scripts, el usuario puede extraer URL y dominios de solicitud HTTP, así como respuestas HTTP. De esta manera, uno puede reproducir rápidamente las respuestas HTTP para una solicitud HTTP dada.

Detalles técnicos
requisitos : C2 Imaginario requiere Python 2.7 y Windows.
módulos: actualmente, Imaginary C2 contiene tres módulos y dos archivos de configuración:

Nombre del archivo Función
1. imaginary_c2.py Aloja el servidor HTTP simple de python. Módulo principal.
2. redirect_to_imaginary_c2.py Altera el archivo host de Windows y la tabla de enrutamiento de Windows (IP).
3. unpack_fiddler_archive.py & unpack_pcap.py Extrae las respuestas HTTP de las capturas de paquetes.Agrega los dominios de solicitud HTTP y las URL correspondientes a los archivos de configuración.
4. redirect_config.txt Contiene dominios e IP que deben re dirigirse a localhost (al servidor HTTP de Python).
5. peticiones_config.txt Contiene definiciones de ruta de URL con las fuentes de datos correspondientes.

definiciones de solicitud : cada solicitud (HTTP) definida en la configuración de solicitud consta de dos parámetros:
Parámetro 1: ruta de la URL de solicitud HTTP (también conocido como urlType)

Valor Sentido
fijo Defina la ruta de la URL como una cadena literal
expresiones regulares Defina un patrón de expresiones regulares para que coincida con la ruta de la URL

Parámetro 2: fuente de respuesta HTTP (también conocido como sourceType)

Valor Sentido
datos Imaginary C2 responderá con el contenido de un archivo en el disco.
pitón Imaginary C2 ejecutará un script de python. La salida de la secuencia de comandos de python define la respuesta HTTP.

Caso de uso de demostración: simulación de servidores TrickBot
Imaginary C2 se puede usar para simular el alojamiento de componentes y archivos de configuración de TrickBot. Además, también se puede utilizar para simular los servidores de inyección web de TrickBot.

Cómo funciona:
tras la ejecución, el descargador de TrickBot se conecta a un conjunto de IP codificadas para recuperar algunos archivos de configuración. Uno de estos archivos de configuración contiene las ubicaciones (direcciones IP) de los servidores de complementos TrickBot. El descargador de Trickbot descarga los complementos (módulos) de estos servidores y los descifra. Los módulos descifrados se inyectan en una instancia de svchost.exe .

Kitploit_IMG_164550853

Uno de los complementos de TrickBot se llama inyectdll , un complemento responsable de los proyectos web de TrickBot. El plugin inyectdll obtiene regularmente un conjunto actualizado de configuraciones de proyectos web. Para cada sitio web específico (bancario) en la configuración, se define la dirección de un servidor de webfake . Cuando una víctima navega a un sitio web (bancario) cuyo objetivo es TrickBot, su navegador se redirige en secreto al servidor de webfake . El servidor webfake aloja una réplica del sitio web objetivo. Este sitio web de réplica generalmente se usa en un ataque de ingeniería social para defraudar a la víctima.

Imaginary C2 en acción:
el siguiente video muestra el descargador de TrickBot ejecutándose dentro de svchost.exey conectando a C2 imaginario para descargar dos módulos. Cada módulo descargado se inyecta en una instancia svchost.exe recién creada . El módulo webinject intenta robar las contraseñas guardadas del navegador y filtrar las contraseñas robadas al servidor TrickBot. Al visitar un sitio web de banca dirigido, TrickBot redirige el navegador al servidor de webfake . En la demostración, el servidor webfake aloja el mensaje: “Respuesta del servidor C2 imaginario predeterminado”

Fuente: amp.kitploit.com – autor: Felix Weyne ( página web ) ( Twitter )

Compartir