
Un conjunto de herramientas para hacer que un sistema parezca la víctima de un ataque APT
Importante: No descargues simplemente el repositorio como ZIP ni lo clones si no planeas desarrollar alguna prueba. Usa el paquete disponible en la versión, el cual contiene una versión empaquetada con archivos cifrados que no incluyen muestras ni herramientas en texto claro.
APT Simulator es un script de Windows Batch que utiliza un conjunto de herramientas y archivos de salida para hacer que un sistema parezca como si hubiera sido comprometido. A diferencia de otras herramientas de simulación de adversarios, APT Simulator está diseñado para que su aplicación sea lo más simple posible. No necesitas ejecutar un servidor web, una base de datos ni ningún agente en un conjunto de máquinas virtuales. Simplemente descarga el archivo preparado, extráelo y ejecuta el archivo Batch contenido como Administrador. Ejecutar APT Simulator toma menos de un minuto de tu tiempo.
Los clientes probaron nuestros escáneres en un POC y nos enviaron una queja de que nuestros escáneres no reportaron programas que ellos habían instalado en sus sistemas de prueba. Habían instalado Nmap, dejado caer un PsExec.exe en la carpeta Descargas y colocado un virus de prueba EICAR en el Escritorio del usuario. Ese fue el momento en que decidí construir una herramienta que simule una amenaza real de manera más adecuada.
El enfoque de esta herramienta es simular la actividad del adversario, no el malware. Consulta la sección Soluciones Avanzadas para herramientas avanzadas que simulan la actividad del adversario y del malware.

El script Batch extrae las herramientas y shells de un archivo 7z cifrado en tiempo de ejecución. No descargues el repositorio master usando el botón "download as ZIP". En su lugar, usa la versión oficial de la sección release.
APT Simulator contiene un módulo llamado "AVExcluder" que intenta registrar el %APTDIR% utilizado como exclusión de AV en soluciones antivirus típicas. Como no tengo acceso a todos los productos de software antivirus del mercado, por favor reporta errores o agrega nuevas exclusiones como pull requests.
Desde la versión 0.4 es bastante fácil ampliar los conjuntos de pruebas añadiendo un único archivo .bat a una de las carpetas de categoría de conjuntos de pruebas.
Por ejemplo, si deseas escribir un caso de prueba simple para "escalada de privilegios" que use una herramienta llamada "privesc.exe", clona el repositorio y haz lo siguiente:
toolsetprivesc-1.bat y agrégalo a la carpeta ./test-sets/privilege-escalationbuild_pack.batSi tu script incluye una herramienta, shell web, archivo auxiliar o de salida, colócalos en las carpetas ./toolset o ./workfiles. Ejecutar el script de compilación build_pack.bat los incluirá en los archivos cifrados enc-toolset.7z y enc-files.7z.
"%ZIP%" e -p%PASS% %TOOLARCH% -aoa -o%APTDIR% toolset\tool.exe > NUL
"%ZIP%" e -p%PASS% %FILEARCH% -aoa -o%APTDIR% workfile\tool-output.txt > NUL
La siguiente tabla muestra los diferentes casos de prueba y los resultados de detección esperados.
Ahora deberías poder encontrar eventos en tu solución de monitoreo de seguridad (SIEM, EDR, etc.) para las siguientes palabras clave:
MSSE-1337-servermsagent_fedac123postex_ssh_fedac123334485 (usado en la actividad Get System)Nota: ¿Sin monitoreo de Named Pipes? Puedes usar Sysmon + esta configuración y esta regla Sigma para comenzar.
b6a1458f396 (varios eventos: nuevo registro de servicio y creación de proceso)Nota: ¿Sin eventos? Puedes usar esta regla Sigma para comenzar.
http://10.0.2.15/pixel.gifhttps://operaa.net:443/jquery-3.2.2.min.jshttps://23.108.57.148:443/jquery-3.2.2.full.jsAún no hay casos de prueba
Desde la versión 0.8.0, APTSimulator incluye un modo batch proporcionado por @juju4 que permite ejecutarlo de forma scriptada, por ejemplo, mediante Ansible
APTSimulator.bat -b
Este repositorio contiene herramientas y ejecutables que pueden dañar la integridad y estabilidad de tu sistema. Úsalos solo en sistemas de prueba o demostración no productivos. Crea una instantánea antes de empezar. De lo contrario, tendrás que eliminar todas las modificaciones manualmente, lo cual es una tarea tediosa.

El sistema automatizado de emulación de adversarios CALDERA https://github.com/mitre/caldera
Infection Monkey - Una herramienta de pentest automatizada https://github.com/guardicore/monkey
Flightsim - Una utilidad para generar tráfico de red malicioso y evaluar controles https://github.com/alphasoc/flightsim
Sígueme y contáctame en Twitter @cyb3rops
| Caso de Prueba | AV | NIDS | EDR | SM | CA |
|---|
| Recopilar Archivos Locales | X | ||||
| Conexiones C2 | (X) | X | X | X | |
| Caché DNS 1 (Inyección de Caché) | (X) | X | X | X | |
| Agentes de Usuario Maliciosos (Malware, RATs) | X | X | X | ||
| Ncat Back Connect (Drop & Exec) | X | X | X | X | |
| WMI Backdoor C2 | X | X | X | ||
| Volcado de LSASS (con Procdump) | X | X | X | ||
| Mimikatz 1 (Drop & Exec) | X | X | X | X | |
| WCE 1 (Entradas de registro de eventos) | X | X | X | ||
| Activar Cuenta Invitado como Admin | X | X | X | ||
| Archivo Falso del Sistema (Drop & Exec) | X | X | X | ||
| Archivos Hosts (Bloqueos de AV/Actualizaciones de Windows) | (X) | X | X | ||
| Dropper JS Ofuscado | (X) | X | X | X | X |
| Ofuscación (RAR con extensión JPG) | (X) | ||||
| Descubrimiento con Nbtscan (Escaneo y Salida) | X | X | (X) | X | |
| Actividad de Reconocimiento (Comandos Típicos) | X | X | X | ||
| PsExec (Drop & Exec) | X | X | X | ||
| Herramienta de Ejecución Remota (Drop) | (X) | X | |||
| At Job | X | X | X | ||
| Creación de Entrada en RUN Key | X | X | X | ||
| Creación de Tarea Programada | X | X | X | ||
| Puerta Trasera StickyKey | X | X | |||
| Persistencia UserInitMprLogonScript | (X) | X | X | ||
| Shells Web | X | (X) | X | ||
| WMI Backdoor | X | X |