
ENDGAME C2 FRAMEWORK — C2 piloté par IA pour les opérations professionnelles de red team
ENDGAME est un framework de commande et contrôle professionnel conçu pour les engagements de red team autorisés, les tests d'intrusion et la recherche en sécurité à des fins éducatives. Conçu pour simuler des techniques adverses réalistes, évaluer la couverture de détection et aider les équipes de sécurité à comprendre leurs lacunes défensives — avec une Console IA intégrée qui transforme le langage naturel en commandes exécutées et analyse automatiquement chaque résultat.
Hecho con IA, pensado y dirigido por un humano.
🌐 endgamec2framework.com · 📄 Documentation



git clone https://github.com/endgamec2framework/endgame
cd endgame
./install.sh
Relancez ./install.sh pour mettre à jour — il récupérera le dernier code et reconstruira tout en préservant les certificats et les profils d'opérateur.
Guide d'installation complet : Documentation → Installation
La Console IA d'ENDGAME est une fonctionnalité de premier plan qui intègre un copilote IA directement dans le flux de travail de l'opérateur. Ce n'est pas un chatbot ajouté en périphérie — il vit dans le même panneau que vos terminaux d'agents, connaît l'ensemble des commandes C2 et dispose d'un contexte en temps réel sur la cible : nom d'hôte, OS, utilisateur, privilèges et transport.
🤖 s'ouvre dans le panneau de console inférieur — côte à côte avec vos onglets de terminal habituels


Tout modèle disponible dans votre instance Ollama fonctionne. Recommandés pour le contexte red team :
qwen3.6:latest — par défaut · rapide · bonne exécution des instructionsqwen3.6:35b-a3b-coding-mxfp8 — plus grand · meilleur raisonnement code/commandedeepseek-r1:8b / deepseek-r1:32b — modèles de raisonnement · bons pour les chaînes d'attaque multi-étapes✓ = implémenté · 🔧 = en cours / planifié · — = non disponible
Compilation pour Linux (depuis un hôte Linux — les agents sont compilés nativement) :
# Go
GOOS=linux GOARCH=amd64 go build -o agent_linux .
# Rust
cargo build --release --target x86_64-unknown-linux-gnu
# C
make -f Makefile.linux AGENT_SERVER_URL=https://<c2>:<port>
# Nim
./build_linux.sh
Transports des agents : HTTP · HTTPS · mTLS · DNS · DoH · pipe SMB · TCP
Relais mesh : les agents peuvent s'enregistrer comme pivots HTTP ou TCP ; lorsqu'un agent perd la connectivité directe avec le teamserver (≥ 3 échecs de beacon consécutifs), il bascule automatiquement vers tout pair connu et relaie son beacon via le transport existant de cet agent. Le teamserver distribue la liste des pairs dans chaque réponse de beacon afin que les agents disposent toujours d'un repli à jour. Contrairement aux overlays P2P entièrement décentralisés (libp2p/DHT), les chemins de relais dans ENDGAME sont désignés par l'opérateur et journalisés — l'opérateur décide quel agent agit comme pivot, et la chaîne de relais est toujours explicite et arrêtable à la demande.
Évasion : AMSI (VEH/DR0) · aveuglement ETW · unhook NTDLL · masquage de sommeil Ekko XOR · appels système indirects (Hell's Gate) · spoofing de pile · hachage d'API (parcours PEB) · spoof PPID · anti-sandbox · effacement d'en-tête · DLL fantôme UDRL · BLOCKDLLS · détection de brûlage DNS canary
Injection : thread distant · APC early-bird · détournement de thread · fork-and-run · hollowing
Post-exploitation : capture d'écran · keylogger · presse-papiers · dump LSASS · vol de jeton · bypass UAC · persistance
Découverte réseau : ARP (renvoie MAC, sans élévation sur Windows) · balayage ping ICMP · sonde TCP — sélectionnable par scan
Mouvement latéral : psexec · smbexec · atexec · wmi · dcom · winrm · ssh
MITRE ATT&CK : 50+ commandes mappées sur 12 tactiques · export de couche Navigator · matrice de techniques dans l'interface
Consultez la documentation complète pour les commandes, la référence API, la liste des IOC et le guide de l'opérateur.
ENDGAME implémente un relais mesh contrôlé plutôt qu'un overlay P2P entièrement décentralisé. Les chemins de relais sont désignés par l'opérateur : l'opérateur choisit quel agent agit comme pivot, et la chaîne de relais est explicite, arrêtable à la demande et journalisée — aucune dépendance à une infrastructure DHT publique comme libp2p que les pare-feu d'entreprise bloquent systématiquement.
Agents multiplateformes : Les quatre agents prennent désormais en charge Windows et Linux. L'agent Go prend également en charge macOS. Les fonctionnalités spécifiques à Windows (évasion Windows, patch AMSI/ETW, appels système Hell's Gate, spoofing de pile, vol de jeton, injection PE) sont exclusives à Windows et sont exclues de la compilation sur Linux ; la build Linux conserve l'intégralité du beacon, du shell, des opérations fichiers, du SOCKS5, du scan de ports, de la persistance, de la collecte d'identifiants et de la fonctionnalité de pivot. Consultez la matrice de prise en charge des plateformes ci-dessous pour le détail par fonctionnalité et le script build_linux.sh dans chaque répertoire d'agent pour la compilation Linux.
DNS canaries : chaque build de payload intègre un sous-domaine canary unique par build. Lorsqu'un sandbox ou un scanner antivirus analyse dynamiquement le binaire, la recherche DNS de démarrage de l'agent résout canary.<token>.<c2_domain> — interceptée par le serveur DNS faisant autorité du C2 — et l'opérateur reçoit une alerte de brûlage en temps réel via le flux d'événements. Les canaries sont suivis par build dans la base de données et ne sont jamais réutilisés.
Appels système indirects + spoofing de pile (Nim) : syscalls.nim résout les SSN à l'exécution via Hell's Gate (lit mov eax,SSN depuis les stubs ntdll) avec repli Halo's Gate pour les stubs patchés par l'EDR. Lorsqu'un gadget syscall;ret et un gadget call rel32;ret sont tous deux trouvés dans .text de ntdll, l'agent passe à des stubs falsifiés de 110 octets qui placent l'adresse du gadget à [RSP] avant l'appel système — rendant la pile d'appels visible par l'EDR comme provenant de ntdll plutôt que du code de l'agent.
Hachage d'API (C) : api_resolve.c utilise le hachage DJB2 et un parcours PEB InLoadOrderModuleList pour résoudre 33 fonctions WinAPI sensibles à l'exécution. Aucune de ces fonctions n'apparaît dans la table d'imports du binaire.



HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon après l'exécution de SharpUp. Aucun exploit requis.
Cet outil est destiné uniquement aux tests de sécurité autorisés, à un usage éducatif et aux environnements de laboratoire. Toute utilisation contre des systèmes sans autorisation écrite explicite est illégale et strictement interdite. En utilisant ce logiciel, vous acceptez la Politique d'utilisation éthique.
Veuillez ne pas ouvrir de tickets concernant la détection EDR/AV. Les builds par défaut incluent des IOC connus — consultez la documentation IOC. Les opérateurs doivent recompiler avec des certificats personnalisés, des indicateurs de build et des profils malléables pour les engagements autorisés.
| Capacité | Détail |
|---|
| Intégrée au panneau de console | S'ouvre sous forme d'onglet — pas de modale flottante, pas de changement de contexte |
| Connaissance complète des commandes C2 | Le prompt système inclut chaque commande disponible, l'OS/architecture/les privilèges de l'agent, le transport et la file de tâches actuelle |
| Réponses en streaming | Les jetons sont diffusés en temps réel au fur et à mesure que le modèle les génère |
| Boucle d'auto-analyse | Après chaque exécution de commande, la sortie est automatiquement renvoyée à l'IA pour interprétation et recommandation de l'étape suivante |
| Multi-session | Ouvrez la Console IA pour plusieurs agents simultanément — chaque onglet conserve un historique de chat indépendant |
| Indépendant du fournisseur | Fonctionne avec Ollama (local, hors ligne) ou l'API Anthropic Claude — selon ce qui est configuré dans l'onglet IA |
| Confirmation avant exécution | Chaque commande suggérée nécessite un clic explicite — l'IA n'envoie jamais de tâches de manière autonome |
| Composant | Résumé |
|---|
| Serveur | Binaire Go · teamserver multi-opérateur · journal d'opérations SQLite · API mTLS :31337 · alertes de brûlage DNS canary |
| Interface Web | Graphe de kill-chain (actualisation automatique) · console d'agents · Console IA · gestionnaire de butin · assistant IA · multi-opérateur |
| Agent (Go) | Windows · Linux · macOS · 7 transports · suite d'évasion complète · hachage d'API (parcours PEB, 22 fonctions hors IAT) · opérations Kerberos · chargeur PE en ligne · CONFIG runtime · ~13 Mo |
| Agent (Nim) | Windows · Linux · 7 transports incl. pipe SMB · appels système indirects (Hell's Gate) · spoofing de pile · unhook NTDLL · hachage d'API (parcours PEB, 22 fonctions hors IAT) · chargeur PE en ligne · BOF + .NET CLR · keylogger · SOCKS5 · ISHELL · identifiants navigateur · mouvement latéral · anti-sandbox · ~1 Mo |
| Agent (Rust) | Windows · Linux (x64) · 7 transports · appels système indirects (Hell's Gate) · patch AMSI · masquage de sommeil · hachage d'API · spoofing de pile · unhook NTDLL · anti-sandbox · heures de travail · DNS canary · opérations Kerberos · chargeur PE en ligne · BOF + .NET CLR · ISHELL · screenwatch · suite d'injection complète · BLOCKDLLS · spoof PEB · patch ETW · identifiants navigateur · keylogger · SOCKS5 · mouvement latéral (8 méthodes) · ~507 Ko |
| Agent (C) | Windows · Linux (x64) · 7 transports · format EXE + DLL · hachage d'API (parcours PEB, 35 fonctions hors IAT) · spoof PPID · anti-sandbox · opérations Kerberos · chargeur PE en ligne · unhook NTDLL · keylogger · SOCKS5 · ISHELL · identifiants navigateur · .NET CLR · BOF · mouvement latéral · ~130 Ko |
| Chargeurs | Stubs C / Go / Nim / shellcode |
| Rapports | HTML · JSON · CSV · couche MITRE ATT&CK Navigator · résumé exécutif IA |
| Go (Ekko) | Nim | Rust | C |
|---|
| Plateforme | Win · Linux · macOS | Win · Linux | Win · Linux | Win · Linux |
| Taille | ~13 Mo | ~1,2 Mo | ~507 Ko | ~130 Ko |
| Transports | HTTP · HTTPS · mTLS · DNS · DoH · SMB · TCP | HTTP · HTTPS · mTLS · DNS · DoH · SMB · TCP | HTTP · HTTPS · mTLS · DNS · DoH · SMB · TCP | HTTP · HTTPS · mTLS · DNS · DoH · SMB · TCP |
| Format DLL | ✓ | ✓ | ✓ | ✓ |
| Shell / opérations fichiers / sysinfo | ✓ | ✓ | ✓ | ✓ |
| Envoi / Téléchargement | ✓ | ✓ | ✓ | ✓ |
| Capture d'écran | ✓ | ✓ | ✓ | ✓ |
| Screenwatch (en direct) | ✓ | ✓ | ✓ | ✓ |
| Keylogger | ✓ | ✓ | ✓ | ✓ |
| Surveillance du presse-papiers | ✓ | ✓ | ✓ | ✓ |
| Dump LSASS (MINIDUMP) | ✓ | ✓ | ✓ | ✓ |
| Patch AMSI | ✓ (VEH / DR0) | ✓ | ✓ patch xor-ret | ✓ |
| Aveuglement ETW | ✓ | ✓ + NtSetInfoProcess | ✓ patch EtwEventWrite | ✓ |
| Unhook NTDLL | ✓ | ✓ | ✓ | ✓ |
| Appels système indirects | ✓ Hell's Gate + Halo's Gate | ✓ Hell's Gate + Halo's Gate | ✓ Hell's Gate + Halo's Gate | ✓ Hell's Gate + Halo's Gate |
| Spoofing de pile | ✓ gadget RET précédé d'appel | ✓ stubs falsifiés de 110 octets | ✓ stubs falsifiés de 110 octets | ✓ stubs falsifiés de 110 octets |
| Hachage d'API (suppression IAT) | ✓ DJB2 + parcours PEB · 22 fonctions | ✓ DJB2 + parcours PEB · 22 fonctions | ✓ DJB2 + parcours PEB · 21 fonctions | ✓ DJB2 + parcours PEB · 35 fonctions |
| Masquage de sommeil | ✓ Ekko XOR + NOACCESS | ✓ XOR sections non exécutables + NtDelayExecution | ✓ XOR + NtDelayExecution | ✓ XOR + NOACCESS |
| Anti-sandbox | ✓ modèle de score à 12 vérifications | ✓ vérifications CPU/RAM/disque/inactivité (-d:SandboxChecks) | ✓ score CPU/RAM/disque/nom d'utilisateur | ✓ modèle de score |
| CONFIG runtime | ✓ sommeil · gigue · heures de travail · méthode d'injection | ✓ sommeil · gigue · heures de travail | ✓ sommeil · gigue | ✓ sommeil · gigue · heures de travail |
| Restriction des heures de travail | ✓ | ✓ | ✓ | ✓ |
| DNS canary | ✓ recherche de brûlage au démarrage | ✓ recherche de brûlage au démarrage | ✓ recherche de brûlage au démarrage | ✓ recherche de brûlage au démarrage |
| Effacement de l'en-tête PE | ✓ | ✓ | ✓ | ✓ |
| Effacement HWBP | ✓ | ✓ | ✓ | ✓ |
| Spoof PPID | ✓ | ✓ | ✓ | ✓ |
| BLOCKDLLS / spoof PEB | ✓ | ✓ | ✓ | ✓ |
| Silence EDR (ETW/hook) | ✓ | ✓ | ✓ | ✓ |
| Détection hook + HWBP | ✓ | ✓ | ✓ | ✓ |
| Kerberos (klist · ptt · purge) | ✓ API LSA | ✓ API LSA | ✓ API LSA | ✓ API LSA |
| Exécution PE en ligne | ✓ chargeur PE64 complet | ✓ chargeur PE64 complet | ✓ chargeur PE64 complet | ✓ chargeur PE64 complet |
| Injection de processus | ✓ distant · APC · détournement · fork-and-run · hollow | ✓ distant · APC | ✓ distant · APC · détournement · fork-and-run · hollow | ✓ distant · APC |
| BOF / .NET CLR | ✓ | ✓ BOF + .NET CLR | ✓ BOF + .NET CLR | ✓ BOF + .NET CLR |
| Vol / usurpation de jeton | ✓ | ✓ | ✓ | ✓ |
| Coffre de jetons (stockage · réutilisation) | ✓ | ✓ | ✓ | ✓ |
| GETSYSTEM / bypass UAC | ✓ | ✓ | ✓ | ✓ |
| Persistance | ✓ | ✓ | ✓ | ✓ |
| Mouvement latéral | ✓ psexec · smbexec · atexec · wmi · dcom · winrm · ssh · runas | ✓ psexec · smbexec · atexec · wmi · dcom · winrm · ssh · runas | ✓ psexec · smbexec · atexec · wmi · dcom · winrm · ssh · runas | ✓ psexec · smbexec · atexec · wmi · dcom · winrm · ssh · runas |
| SOCKS5 / redirection de port | ✓ | ✓ | ✓ | ✓ |
| SOCKS inversé | ✓ | ✓ | ✓ | ✓ |
| Scan de ports | ✓ | ✓ | ✓ | ✓ |
| Pivot relais mesh | ✓ HTTP + TCP | ✓ HTTP + TCP | ✓ HTTP + TCP | ✓ HTTP + TCP |
| Collecte d'identifiants | ✓ GPP · WiFi · Navigateur · NTDS | ✓ GPP · WiFi · Navigateur · NTDS | ✓ WiFi · Navigateur | ✓ GPP · WiFi · Navigateur · NTDS |
| Opérations registre | ✓ | ✓ | ✓ | ✓ |
| ADS (lecture · écriture · liste · suppression) | ✓ | ✓ | ✓ | ✓ |
| Détournement COM | ✓ | ✓ | ✓ | ✓ |
| Timestomp | ✓ | ✓ | ✓ | ✓ |
| Shell interactif (ISHELL) | ✓ | ✓ | ✓ | ✓ |
| MITRE ATT&CK | 50+ commandes · 12 tactiques | évasion · post-exploitation · latéral | évasion · post-exploitation · latéral | évasion · post-exploitation · latéral |
| Fonctionnalité | Windows (tous les agents) | Linux (Go · Rust · C · Nim) | macOS (Go uniquement) |
|---|
| Beacon + beaconing (HTTP/HTTPS/mTLS/TCP/DNS) | ✓ | ✓ | ✓ |
| Shell / opérations fichiers / envoi / téléchargement | ✓ | ✓ | ✓ |
| SYSINFO / PS / ENV | ✓ | ✓ | ✓ |
| Scan de ports | ✓ | ✓ | ✓ |
| SOCKS5 / SOCKS inversé / redirection de port | ✓ | ✓ | ✓ |
| Pivot relais mesh (HTTP + TCP) | ✓ | ✓ | ✓ |
| Persistance | ✓ registre/service/schtask | ✓ cron / systemd user | ✓ LaunchAgent |
| Capture d'écran | ✓ GDI | ✓ ImageMagick (si X11) | ✓ |
| Collecte d'identifiants | ✓ Navigateur · WiFi · GPP · NTDS | ✓ Navigateur (chemins Linux) | ✓ Navigateur |
| Exclusif Windows (évasion) | |||
| Patch AMSI / aveuglement ETW | ✓ | — | — |
| Appels système indirects (Hell's Gate) | ✓ | — | — |
| Spoofing de pile (stubs de 110 octets) | ✓ | — | — |
| Hachage d'API / suppression IAT | ✓ | — | — |
| Masquage de sommeil (XOR + NOACCESS) | ✓ | — | — |
| Unhook NTDLL | ✓ | — | — |
| Spoof PPID / BLOCKDLLS / spoof PEB | ✓ | — | — |
| Vol de jeton / bypass UAC | ✓ | — | — |
| Injection de processus | ✓ | — | — |
| Exécution PE en ligne / .NET CLR | ✓ | — | — |
| Keylogger / surveillance du presse-papiers | ✓ | — | — |
| Mouvement latéral (8 méthodes) | ✓ | — | — |
| Kerberos (klist/ptt/purge) | ✓ | — | — |