Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
BEAR-C2 — El servidor de explotación para hallazgos fuera de banda. Apunta un objetivo a un dominio que poseas. Cada solicitud HTTP y cada correo electrónico que envíe de vuelta aterriza en un panel de control que tú controlas, y recibe la respuesta que elijas a cambio. | Kitploit
Herramientas/GitHubGitHub/s3n4t0r-0x0/bear-c2
Frameworks de Pruebas de PenetraciónFrameworks de ExploitsMecanismos de PersistenciaExfiltración de DatosPost-ExplotaciónVirtualización de SeguridadPhishingComando y ControlRed TeamingDesarrollo de PayloadsAtaque Adversario
583125hace 1 díaRevisado por Kitploit
GitHub
s3n4t0r-0x0/bear-c2

BEAR-C2

El servidor de explotación para hallazgos fuera de banda. Apunta un objetivo a un dominio que poseas. Cada solicitud HTTP y cada correo electrónico que envíe de vuelta aterriza en un panel de control que tú controlas, y recibe la respuesta que elijas a cambio.

Ver RepositorioSitio web

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

BEAR-C2 Framework de Simulación de Adversarios


Project Status verigen: 2.0 Adversary Simulation TTPs APT Simulation MITRE ATT&CK Linux

BEAR-C2 es un framework de simulación y emulación de adversarios construido en torno a TTPs del mundo real inspiradas en grupos APT rusos, chinos, norcoreanos e iraníes. Proporciona un entorno flexible para diversos escenarios de compromiso y ofrece una base realista para operaciones de red team y emulación de adversarios, basándose en investigaciones de simulación relacionadas en el . Soporta técnicas de evasión de defensas y múltiples opciones de cifrado para una representación precisa de escenarios de intrusión del mundo real.

APT Attack Simulation Repository

image psd(1)

[!CAUTION] Es esencial tener en cuenta que este proyecto es solo para fines educativos y de investigación, y cualquier uso no autorizado del mismo podría conllevar consecuencias legales.

🏗 Instalar dependencias y Uso:```bash

git clone https://github.com/S3N4T0R-0X0/BEAR-C2.git && cd BEAR-C2

chmod +x requirements.sh && ./requirements.sh

./BEAR-C2

root@kitploit:~
## 🧠 El desafío de la simulación de adversarios:

Replicar con precisión las **técnicas APT** requiere un `entorno flexible capaz de imitar protocolos de conexión, métodos de cifrado, técnicas de exfiltración y canales/perfiles C2` utilizados en intrusiones modernas. Sin embargo, alcanzar este nivel de precisión siempre ha sido un desafío.

<img width="1366" height="732" alt="main " src="https://assets.kitploit.com/production/public/readmes/54775/8af4474bf61f52114745ec8403b4ea6d01d26a57f85913f1f01b4bba559a1eb7/59654a7b465df184554d5c31ee49293c1f5d9da71a1e6ef81aa0a2fa5b88b8ea-display-v1.webp" />


Cada vez que un operador necesita probar un **esquema de cifrado** específico con un **perfil de exfiltración** particular, se `debe construir un **script C2** independiente que coincida con el escenario de ataque.` Por ejemplo, una simulación podría requerir **cifrado AES** con **exfiltración por OneDrive**, mientras que otra podría necesitar **un método de cifrado diferente** combinado con **exfiltración por Dropbox** para reflejar las técnicas observadas en ataques del mundo real. Esta falta de flexibilidad hace que el proceso sea ineficiente y consuma mucho tiempo.

<img width="1359" height="680" alt="Screenshot From 2026-09-01 05-54-48" src="https://assets.kitploit.com/production/public/readmes/54775/c106129e53832b08e6575610090337721e4e5892eade10bee395fae638326cc2/299229b4ffae9286d368a6e9243c4528d469f5395f166d9b67fa0020beaf5d8a-display-v1.webp" />


Es por esto que se desarrolló **BEAR C2** para proporcionar **simulación de adversarios** con personalización completa a través del nuevo listener, permitiendo la configuración fluida de `protocolos de conexión, cifrado, exfiltración,` y técnicas de carga automatizadas. Esto garantiza que las simulaciones puedan reflejar con precisión **intrusiones APT** reales sin la necesidad de construir scripts personalizados para cada escenario.


## Muestras de Payload de Reaper Node

Reaper Node proporciona muestras de payload en C++ `/Stagers-Loaders/Reaper Node Samples/` que pueden utilizarse como plantillas personalizables para entornos donde no se requiere un payload pregenerado. Las muestras contienen los campos de configuración principales necesarios para establecer comunicación con la instancia de Reaper Node correspondiente.

Antes de compilar el payload, los parámetros de conexión y transporte requeridos deben configurarse para coincidir con la configuración de Reaper Node.

### Configuración del Payload

La configuración del payload debe proporcionar campos de entrada para los siguientes parámetros:

* **Authentication ID**
  El identificador utilizado para asociar el payload con la instancia de Reaper Node configurada.

* **Server Host**
  La dirección IP o nombre de host del endpoint de Reaper Node.

* **Server Port**
  El puerto de red expuesto por Reaper Node para el protocolo de comunicación seleccionado.

* **Encryption Key**
  Requerido cuando el transporte seleccionado utiliza cifrado. El valor debe coincidir con la configuración de cifrado utilizada por Reaper Node. Si el cifrado está deshabilitado, este campo no es necesario.

* **User-Agent**
  El valor de identificación del cliente HTTP utilizado al establecer la comunicación HTTP/HTTPS inicial. El payload debe usar un User-Agent soportado por la configuración correspondiente de Reaper Node.

El User-Agent no necesita ser idéntico entre diferentes configuraciones de Reaper Node. Un payload puede usar cualquier User-Agent definido como soportado por el perfil de Reaper Node seleccionado, siempre que la configuración resultante sea compatible con la configuración de transporte del lado del servidor.

### Ejemplo de Configuración

El siguiente ejemplo muestra una configuración de transporte HTTPS de muestra con parámetros de autenticación, direccionamiento del servidor, cifrado y User-Agent:```cpp
const string AUTH_ID = "YOUR_AUTH_ID";
const string SERVER_HOST = "YOUR_SERVER_HOST";
const int SERVER_PORT = YOUR_SERVER_PORT;
const string KEY = "YOUR_ENCRYPTION_KEY";
const string DEFAULT_USER_AGENT = "YOUR_USER_AGENT";
bool VERIFY_SSL = true;

Esta configuración representa un transporte HTTPS con cifrado habilitado. Los valores mostrados arriba son marcadores de posición y deben reemplazarse con los parámetros definidos por la configuración correspondiente de Reaper Node.

El ejemplo en C++ está destinado a proporcionar un punto de partida para la personalización. Los usuarios pueden modificar la configuración y los parámetros relacionados con el transporte según el perfil de Reaper Node que estén probando, y luego compilar el payload personalizado para su entorno de simulación autorizado.

La Tabla de Listeners proporciona una visión centralizada de todos los listeners C2 activos y configurados. Muestra detalles esenciales como nombre del listener, dirección, protocolo de red, método de cifrado, perfil de exfiltración y estado actual (Activo o Detenido/Desconectado). Desde esta interfaz, los operadores pueden iniciar, detener, renombrar o eliminar listeners con facilidad. También ofrece acceso rápido a las claves de cifrado y a los IDs de autenticación para gestionar la comunicación de los beacons. Esta tabla sirve como centro de mando para orquestar y monitorear su infraestructura C2.

Screenshot From 2026-08-26 15-15-37

📋 Novedades en Esta Versión

Esta versión incluye una GUI completa que optimiza las operaciones de simulación de adversarios mediante la gestión centralizada de listeners, el seguimiento de sesiones en tiempo real, perfiles de comunicación personalizables, flujos de trabajo de exfiltración integrados y controles de operador flexibles para una gestión eficiente de los compromisos.

⚠️ NOTA: Este proyecto está en desarrollo activo. Las funciones se añaden y mejoran continuamente.

FunciónDescripción
Listeners multiprotocoloDoH, HTTPS, HTTP, QUIC, Reverse TCP
Cifrado por listenerAES, XOR, RC4, DES, ChaCha20, RSA
Perfiles de exfiltraciónGoogle Drive, OneDrive, Dropbox
Canales C2 integradosCanal de comunicación C2 integrado con Telegram, Discord
Soporte de proxySoporte de proxy y redirector SOCKS4, SOCKS4a y SOCKS5
Algoritmo de generación dinámica de dominiosSoporte de DGA para la simulación de infraestructura resiliente
Huella JA3SHuellas JA3S personalizables para la simulación de tráfico y el ajuste de perfiles de red
Perfiles C2 maleablesSoporte de Malleable C2 profiles de la comunidad para una simulación flexible del tráfico de red
Stagers y LoadersTécnicas automatizadas de stager y loader diseñadas para la simulación de adversarios APT
Herramientas integradasOfuscador de scripts, kit de phishing y alojamiento de archivos integrados
Generación de certificados TLSCertificados TLS autofirmados que imitan a proveedores de confianza
Personalización HTTPCodificación Base64 de URL y encabezados HTTP personalizados tanto para la comunicación del cliente como del servidor
Gestor de sesiones en tiempo realSeguimiento de estado en vivo, monitoreo de sesiones y capacidades de actualización en tiempo real
Nombres personalizados y rutas URI

📤 Perfiles de Exfiltración

Configure ajustes de exfiltración por sesión para proveedores de almacenamiento en la nube compatibles como Google Drive, OneDrive, and Dropbox. La interfaz de Exfiltration Profile le permite definir tokens de acceso a la API y rutas de carpetas de destino, lo que le permite personalizar los flujos de trabajo de recolección de datos para cada sesión. Cada sesión puede usar su propio perfil de exfiltración, lo que facilita el enrutamiento de los datos recolectados a diferentes proveedores de almacenamiento en la nube o destinos según la operación.

4

💬 Canales C2 Integrados

(Agente basado en Telegram)

La capa de comunicación de Telegram utiliza un bot de Telegram como intermediario entre el servidor C2 y el payload. El servidor C2 se autentica en la cuenta de Telegram usando el API ID, el API Hash y el número de teléfono configurados, y luego se conecta al bot de Telegram creado previamente a través de esa cuenta

5

El Bot Token del bot está embebido en el payload, lo que permite al payload comunicarse con el bot a través de la API de Telegram. Los comandos se envían desde el servidor C2 al bot, y el bot los reenvía al payload, que ejecuta la tarea recibida y devuelve los resultados por la misma ruta de comunicación. Esto crea un canal bidireccional de comando y control usando Telegram como capa de comunicación.

Telegram

Cómo Usar el Agente de Telegram

1. Crear el Bot de Telegram

Abra @BotFather en Telegram y cree un nuevo bot usando /newbot.

  1. Inicie @BotFather
  2. Envíe /newbot
  3. Proporcione un nombre visible para el bot
  4. Proporcione un nombre de usuario único que termine en bot
  5. Copie el Bot Token generado
630235269-96e06e84-3208-4b2c-935a-b48ca7dd0620

El Bot Token es requerido por el Agente de Telegram para autenticarse con la API de Telegram Bot.

2. Generar Credenciales de la API de Telegram

Abra el portal oficial de desarrollo de la API de Telegram y cree una nueva aplicación.

Genere las siguientes credenciales: https://my.telegram.org/apps

  • API ID
  • API Hash
630236626-06dc25d6-b554-44bc-be88-b07796ba7642

Estas credenciales son usadas por BEAR-C2 para autenticar la cuenta de Telegram utilizada para gestionar la comunicación del bot.

3. Configurar el Payload de Telegram

Abra Telegram Agent.cpp y configure los ajustes de comunicación de Telegram.

El Bot Token generado por BotFather debe colocarse en /Stagers-Loaders/C2 Channel Agent Samples/Telegram Agent.cpp antes de compilar el payload.

630235299-2a92081e-6158-4174-846e-e908e1074255

El flujo de configuración es:

BotFather → Bot Token → payload.cpp → Compile

El API ID y el API Hash son usados por la integración de Telegram de BEAR-C2, mientras que el Bot Token se configura en el payload de Telegram para que pueda comunicarse con el Bot de Telegram configurado.


(Agente basado en Discord)

Esta etapa reemplaza el canal tradicional de comunicación de comando y control con una capa de comunicación basada en Discord usando la Discord Gateway API. En lugar de depender de servidores dedicados, direcciones IP fijas o dominios personalizados, los operadores se comunican con el implante simulado a través de un canal privado de Discord.

6

La capa de comunicación de Discord utiliza dos bots de Discord conectados a través del mismo canal de Discord. Un bot está conectado al servidor C2, mientras que el segundo bot está asignado al payload. Los dos bots se comunican a través del canal compartido de Discord, permitiendo el envío de tareas y la comunicación entre el servidor C2 y el payload a través de Discord.

Dado que Discord no permite que los bots se comuniquen directamente con otros bots, usar un canal compartido proporciona la ruta de comunicación entre ambas partes.

discord

Cómo Usar el Agente de Discord

El Agente de Discord usa la Gateway y la API de Discord como capa de comunicación entre el payload y BEAR-C2. La configuración requiere aplicaciones de Bot de Discord, un canal de texto dedicado, los permisos de bot necesarios y los valores correspondientes configurados en el ejemplo de agente en C++.

1. Crear las Aplicaciones de Bot de Discord

Abra el "Discord Developer Portal" oficial (https://discord.com/developers/applications) y cree las aplicaciones de Bot de Discord necesarias para la simulación.

El canal C2 de Discord usa dos identidades de Bot:

  • Bot C2 usado por BEAR-C2
  • Bot del Payload usado por el Agente de Discord

Para cada aplicación, abra la configuración de Bot y genere el Bot Token requerido.

Screenshot From 2026-09-09 17-00-12

2. Configurar los Permisos del Bot de Discord

Abra la Bot configuration in the Discord Developer Portal y habilite Message Content Intent.

El Bot también debe tener los permisos requeridos para el canal de texto de Discord usado por la simulación, incluyendo:

  • "View Channel"
  • "Send Messages"
  • "Read Message History"

Estos permisos permiten al Bot acceder a los mensajes del canal configurado y enviar mensajes a través de la misma ruta de comunicación. Discord requiere el Message Content Intent para las aplicaciones que necesitan recibir el contenido de los mensajes a través de la API.

Screenshot From 2026-09-09 17-05-44

3. Crear y Configurar el Canal de Discord

Cree un canal de texto privado dedicado para el Agente de Discord y añada ambas aplicaciones de Bot al canal.

Asegúrese de que the same permissions configured in the Discord Developer Portal también estén habilitados para las aplicaciones de Bot en el canal.

Copie el Channel ID con el Modo Desarrollador de Discord habilitado. Discord proporciona el Channel ID a través de la opción Copy Channel ID when Developer Mode is enabled.

Screenshot From 2026-09-09 17-11-04

El same Channel ID is used by the C2 configuration and the Discord Agent para que ambas partes se comuniquen a través del mismo canal de Discord.

4. Configurar el Ejemplo del Agente de Discord

Abra el ejemplo del Agente de Discord ubicado en:

"Stagers-Loaders/C2 Channel Agent Samples/Discord Agent.cpp"

El ejemplo proporciona campos de configuración para el Bot Token de Discord, el Channel ID y el Bot User ID:

Screenshot From 2026-09-09 10-18-05

Reemplace los marcadores de posición con los valores pertenecientes al Bot del Payload y al canal de Discord dedicado.

El "BOT_USER_ID" identifica la cuenta de Bot usada por el payload. Los User IDs de Discord se pueden copiar después de habilitar el Modo Desarrollador.

5. Configurar el Canal de Discord en BEAR-C2

En la configuración del Canal de Discord dentro de BEAR-C2, proporcione el C2 Bot Token, Channel ID, and Listener Name. correspondiente.

Screenshot From 2026-09-09 10-26-11

El Bot C2 y el Bot del Payload usan el mismo canal de Discord como ruta de comunicación, mientras que cada lado se autentica usando su propio Bot Token.

Una vez completadas la configuración de Discord y el ejemplo del payload, compile el Agente en C++ para su uso en el entorno de simulación de adversarios autorizado.


⚠️ NOTA: Limitaciones de los Canales C2

Los Canales C2 introducen limitaciones relacionadas con la transferencia de datos y la identificación de Beacons cuando se usan plataformas de mensajería de terceros como capa de comunicación entre el Servidor C2 y los Beacons

● Limitaciones de Transferencia de Datos

Telegram y Discord imponen un límite máximo de caracteres en los mensajes individuales intercambiados a través de sus APIs de bots. En BEAR C2, el Canal C2 actúa como una capa de transporte entre el Servidor C2 y el Beacon, por lo que esta limitación se aplica a los datos que se transfieren a través del canal y no al tamaño del propio payload del Beacon. Los datos enviados desde el Servidor C2 al Beacon y los datos devueltos desde el Beacon al Servidor C2 pueden codificarse en Base64 antes de la transmisión. Dado que Base64 aumenta el tamaño de la representación transmitida, la cantidad de datos originales que se pueden transferir en un solo mensaje es menor que el límite de caracteres de la plataforma.

[ Telegram ] 4096 caracteres máximo por mensaje, 4000 caracteres configurados para la transferencia de datos C2

photo_2026-09-05_08-40-22

[ Discord ] 2000 caracteres máximo por mensaje, 1400 caracteres configurados para la transferencia de datos C2

photo_2026-09-05_08-41-54

Los límites configurados se mantienen intencionalmente por debajo de los límites de la plataforma para proporcionar un margen suficiente para la estructura del mensaje C2 y la sobrecarga de codificación. Cuando los datos exceden el límite configurado, los datos codificados deben dividirse en múltiples mensajes y reconstruirse por el lado receptor.

● Identificación de Beacons y Atribución de Respuestas

Los Canales C2 también introducen una limitación cuando múltiples Beacons comparten el mismo bot de Telegram o canal de Discord. Todos los Beacons que se comunican a través del mismo bot o canal usan la misma ruta de comunicación, por lo que el Servidor C2 no puede representar inherentemente a cada Beacon como una sesión de comunicación independiente. Por ejemplo, si cinco Beacons se comunican a través del mismo bot de Telegram o canal de Discord, aparecerán como una única ruta de comunicación C2 en lugar de cinco Beacons identificables de forma independiente.

La misma limitación afecta a las respuestas de los comandos. Cuando un comando se distribuye a múltiples Beacons a través del mismo bot o canal, las respuestas resultantes se devuelven a través de esa misma ruta de comunicación. Sin un mecanismo adicional de identificación de Beacons, el Servidor C2 no puede determinar de forma fiable qué Beacon generó una respuesta específica.

La solución directa es asignar un bot dedicado a cada Beacon en Telegram, o una configuración de canal o bot aislada para cada Beacon en Discord. Esto crea una correspondencia uno a uno entre el Beacon y su ruta de comunicación, permitiendo distinguir Beacons individuales y sus respuestas. La contrapartida es un mayor aumento de la infraestructura y la sobrecarga de gestión a medida que aumenta el número de Beacons.

Estas limitaciones son específicas del uso de plataformas de mensajería como canales de transporte C2 y son independientes del propio payload del Beacon.

● Impacto Práctico

La limitación del tamaño de los mensajes reduce la cantidad de datos que se pueden transferir de una vez, lo que puede aumentar el tiempo necesario para enviar comandos y recibir su salida

Usar un bot de Telegram o canal de Discord compartido hace que múltiples Beacons aparezcan como un único Beacon en la tabla C2, mientras que los comandos se entregan a todos los Beacons que usan ese bot o canal y las respuestas no pueden atribuirse de forma fiable a un Beacon específico.


🪝 Simulación de Spear Phishing

Simule campañas de spear-phishing a través de una interfaz dedicada para configurar y gestionar escenarios de phishing durante ejercicios autorizados de simulación de adversarios. El módulo proporciona controles de campaña como límites de envío de víctimas, parámetros de phishing configurables y gestión de sesiones, lo que permite a los operadores controlar el comportamiento de la campaña y evaluar la interacción del usuario con escenarios de phishing simulados. Está diseñado para respaldar evaluaciones de phishing controladas, a la vez que proporciona a los operadores una mayor visibilidad y control sobre la ejecución de la campaña.

7

🔗 Host File

Aloje y distribuya archivos a través de una interfaz dedicada de Host File con ajustes de servidor configurables y entrega automatizada de archivos. Los archivos alojados se cargan automáticamente cuando se accede a ellos, sin requerir interacción del usuario ni un aviso de descarga manual. La interfaz proporciona alojamiento y gestión de entrega de archivos centralizados para flujos de trabajo controlados de simulación de adversarios y pruebas de seguridad autorizadas.

Screenshot From 2026-07-03 09-18-06

🔐 Ofuscador de Scripts

El Script Obfuscator proporciona un motor de ofuscación integral que soporta payloads PS1, BAT, HTML, VBS, JS y PY con múltiples capas de ofuscación configurables. Incluye variable and function renaming, string encryption, junk code insertion, multi-layer obfuscation, anti-debugging techniques, and XOR-based payload encryption. Estas funciones aumentan la complejidad del análisis, reducen la legibilidad del script y hacen que la ingeniería inversa sea significativamente más difícil, a la vez que ayudan a los payloads a resistir mejor el análisis estático.

Script Obfuscator


The complete list of APT groups simulated by BEAR-C2 throughout its development

Country
of Origin
Russia 🇷🇺China 🇨🇳North Korea 🇰🇵Iran 🇮🇷
APT Groups

Cozy Bear ✅
Voodoo Bear ✅
Fancy Bear ✅
Energetic Bear ✅
Berserk Bear ✅
Gossamer Bear ✅
Primitive Bear ✅
Ember Bear ✅
Venomous Bear ✅

Mustang Panda ✅
Glacial Panda
Wicked Panda ✅
Goblin Panda
Anchor Panda
Deep Panda
Samurai Panda

📫 Contacto

TelegramTwitter/XLinkedInReddit
Descargar herramienta
Nombres de campaña definidos por el usuario y rutas URI configurables para mayor flexibilidad operativa
Controles de reconexión y timeoutRetrasos de reconexión configurables y umbrales de timeout ajustables por sesión
Identificadores de autenticaciónTokens de autenticación únicos con controles de expiración integrados para mayor seguridad
Utilidades de endurecimiento de sesionesLimpiador de historial, limitador de sesiones y gestión de timeout de autenticación para sesiones activas

Phantom Panda

Sunrise Panda

Ethereal Panda
[**Labyrinth Chollima ✅**](https://github.com/S3N4T0R-0X0/APTs-Adversary-Simulation/tree/main/North%20Koreans%20APT/Labyrinth%20Chollima)
[**Velvet Chollima ✅**](https://github.com/S3N4T0R-0X0/APTs-Adversary-Simulation/tree/main/North%20Koreans%20APT/Velvet%20Chollima)
[**Famous Chollima ✅**](https://github.com/S3N4T0R-0X0/APTs-Adversary-Simulation/tree/main/North%20Koreans%20APT/Famous%20Chollima)
[**Stardust Chollima ✅**](https://github.com/S3N4T0R-0X0/APTs-Adversary-Simulation/tree/main/North%20Koreans%20APT/Stardust%20Chollima)
[**Ricochet Chollima ✅**](https://github.com/S3N4T0R-0X0/APTs-Adversary-Simulation/tree/main/North%20Koreans%20APT/Ricochet%20Chollima)
[**Silent Chollima ✅**](https://github.com/S3N4T0R-0X0/APTs-Adversary-Simulation/tree/main/North%20Koreans%20APT/Silent%20Chollima)

Helix Kitten
Pioneer Kitten
Clever Kitten
Static Kitten ✅
Tracer Kitten
Nemesis Kitten
Charming Kitten ✅
Pulsar Kitten
Remix Kitten
Haywire Kitten