FudgeC2 - un marco de comando y control diseñado para la colaboración en equipo y actividades de post-explotación.
FudgeC2 es una plataforma C2 en Powershell diseñada para facilitar la colaboración en equipo y la línea de tiempo de campañas, presentada en BlackHat Arsenal USA 2019. Su objetivo es ayudar a los clientes a comprender mejor las actividades del equipo rojo, brindándoles un detalle más granular de las técnicas adversarias.
Construido sobre Python3 con un frontend web, FudgeC2 busca proporcionar a los operadores de equipo rojo una interfaz simple para gestionar los implantes activos en sus campañas.
FudgeC2 está en desarrollo activo y recibe actualizaciones regulares; si tienes sugerencias de funcionalidades, comunica tus ideas y sugerencias.
Para instalar y configurar FudgeC2, ejecuta lo siguiente:
git clone https://github.com/Ziconius/FudgeC2
cd FudgeC2/FudgeC2
sudo pip3 install -r requirements.txt
sudo python3 Controller.py
Esto generará la base de datos F2 y las credenciales de primer uso. Luego podrás acceder a la plataforma desde http[s]://127.0.0.1:5001/. Las credenciales de inicio de sesión son:
admin:letmein
Para más información sobre instalación y configuración, consulta la wiki aquí.
FudgeC2 divide los proyectos en campañas. Cada campaña tendrá sus propias plantillas de implante, implantes activos, usuarios y objetivos.
Para comenzar, simplemente necesitas generar una nueva campaña, crear una plantilla de implante dentro de la campaña y activar uno de los stagers en un equipo objetivo.

Los implantes de F2 contienen una variedad de comandos integrados, que también se pueden ampliar fácilmente, permitiendo a los operadores crear su propia funcionalidad integrada. A continuación se muestra un resumen de la funcionalidad; para más información sobre la funcionalidad integrada del implante o cómo crear módulos personalizados, consulta la wiki de FudgeC2 aquí.
Funcionalidad del implante
| Comando | Información |
|---|---|
<command> | Si no se usa un prefijo integrado, el valor enviado se ejecutará directamente mediante Powershell. |
:: sys_info | Recopila nombre de usuario, nombre de host, dominio e IP local. |
:: enable_persistence | Activa la persistencia incrustando un payload stager en la clave de registro de ejecución automática. |
:: export_clipboard | Intenta recopilar cualquier dato de texto almacenado en el portapapeles del usuario. |
:: load_module [script objetivo] | Carga módulos externos de Powershell, como JAWS. |
:: exec_module [nombre del módulo cargado] | Ejecuta una función específica de un módulo cargado. |
:: list_modules | Lista todos los módulos cargados por el implante. |
:: download_file [archivo objetivo] | Descarga el archivo objetivo al servidor FudgeC2. |
:: upload_file [archivo local] [ruta/nombre remoto] | Sube un archivo a la ruta y nombre de archivo específicos del objetivo. |
:: play_audio [archivo de audio (WAV)] | Reproduce un archivo de audio WAV en el host comprometido. |
:: screenshot | Toma una captura de pantalla del escritorio del host comprometido. |
Todas las contribuciones, sugerencias y solicitudes de funcionalidades son bienvenidas. No dudes en contactarnos a través de GitHub o Twitter con ideas, sugerencias y preguntas.
El proyecto FudgeC2 y todos sus módulos están bajo la Licencia Pública General de GNU v3.0, a menos que se indique explícitamente lo contrario. Puedes encontrar la licencia completa aquí.