Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CnaEmulator — Harnais autonome d'émulation et de test pour les scripts Aggressor de Cobalt Strike (.cna) qui valide la syntaxe, simule les API Beacon et exécute des BOFs via COFFLoader sans teamserver. | Kitploit
Outils/GitHubGitHub/iterat0r/cnaemulator
Analyse Dynamique (Sandboxing)ExploitationScripting et AutomatisationPost-ExploitationTests d'IntrusionCommandement et ContrôleUtilitaires et FrameworksApprentissage et ÉducationRed TeamingDéveloppement de Charges Utiles
GitHub
22196il y a 28 joursVérifié par Kitploit
iterat0r/cnaemulator

CnaEmulator

Harnais autonome d'émulation et de test pour les scripts Aggressor de Cobalt Strike (.cna) qui valide la syntaxe, simule les API Beacon et exécute des BOFs via COFFLoader sans teamserver.

Voir le dépôt

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CnaEmulator - Émulateur de script Aggressor Cobalt Strike et harnais de simulation

CnaEmulator est un harnais autonome, polyvalent de développement, d'émulation et de test pour les scripts Aggressor Cobalt Strike (.cna). Il permet aux chercheurs en sécurité, aux développeurs d'outils et aux auteurs de BOF de valider la syntaxe des scripts, de simuler les commandes alias de la console Beacon et d'exécuter des Beacon Object Files (BOF) en mémoire directement via COFFLoader64.exe sans lancer de teamserver ni de client GUI.


[!WARNING] Avertissement : Ce code a été entièrement généré avec Antigravity et n'a pas encore été révisé.

Capacités

  1. Validation de syntaxe (check) :
    • Compile les scripts .cna à l'aide du moteur sous-jacent Sleep 2.1.
    • Détecte avec précision les chaînes non terminées, les caractères non échappés, les erreurs de syntaxe du parseur et les délimiteurs manquants avec les numéros de ligne exacts du fichier.
  2. Émulation des fonctions Aggressor :
    • Émule les fonctions officielles du Beacon Cobalt Strike à partir de la documentation des scripts Aggressor HelpSystems/Fortra.
    • Fournit des valeurs simulées réalistes ou des valeurs de retour positives sans erreur pour l'injection de processus, la manipulation de jetons, le système de fichiers, le réseau et les API de rappel GUI.
  3. Empaquetage binaire BOF réel (bof_pack) :
    • Implémente la sérialisation native Little-Endian correspondant au format binaire datap de Cobalt Strike :
      • 'i' : entier de 4 octets
      • 's' : short de 2 octets
      • 'z' : chaîne terminée par un null préfixée par la longueur (préfixe strlen + 1)
      • 'Z' : chaîne UTF-16LE large préfixée par la longueur
      • 'b' : tampon binaire préfixé par la longueur
  4. Pont d'exécution COFFLoader (beacon_inline_execute) :
    • Intercepte automatiquement beacon_inline_execute($bid, $bof_data, "go", $packed_args).
    • Convertit les arguments empaquetés au format hexadécimal.
    • Exécute COFFLoader64.exe go <bof_path> <hex_args> en tant que sous-processus enfant.
    • Diffuse en direct la sortie console du BOF vers stdout en temps réel.
  5. Suites de tests compagnons universelles et vérification automatisée (test) :
    • Découvre et exécute automatiquement les suites de scénarios compagnons <script>.cna.tests ou <script>.tests.
    • Prend en charge les tests de scénarios ciblés en CLI et la vérification automatique des clauses de garde des alias.
  6. Console Beacon interactive (console) :
    • Invite de commande interactive (beacon> ) prenant en charge les alias enregistrés, les arguments, la documentation d'aide et l'exécution en direct.

Arborescence des répertoires

.
├── .gitignore                # Git ignore rules for compiled binaries & bytecode
├── COFFLoader64.exe          # 64-bit Standalone in-memory COFF relocator and loader
├── cna_emulator.bat          # Convenient CLI launcher script
├── README.md                 # Comprehensive documentation and usage guide
├── TESTING.md                # Component verification report & quality gates
├── TEST_SPEC.md              # 48-scenario 7-category test specification
└── CnaEmulator/              # Java CNA Emulator component
    ├── .gitignore            # Git ignore rules for CnaEmulator subfolder
    ├── CnaEmulator.java      # Emulator source code and Sleep engine bridge
    ├── CnaEmulator.class     # Compiled bytecode
    ├── CnaEmulator.jar       # Packaged bytecode JAR
    ├── build.bat             # Build script to compile and package CnaEmulator
    ├── test.bat              # Standalone test runner script (48 scenarios)
    └── tests/                # Test suite and fixtures
        ├── TestCnaEmulator.java  # 48-scenario test harness
        └── fixtures/             # Universal test fixtures
            ├── sample_bof.cna        # Standalone sample Aggressor Script
            ├── sample_bof.cna.tests  # Companion test suite
            ├── multi_alias.cna       # Multi-alias sample script
            └── multi_alias.cna.tests # Multi-alias companion test suite

Exigences et prérequis

ExigenceDescription et configuration
Java JDK (17+)Binaires java et javac. Définissez JAVA_HOME sur le chemin de votre JDK et assurez-vous que %JAVA_HOME%\bin est dans le PATH.
Sleep 2.1 (sleep.jar)Moteur de script pour les scripts Aggressor. Téléchargez depuis Sleep 2.1 ou copiez depuis Cobalt Strike. Définissez SLEEP_JAR (par ex. set "SLEEP_JAR=C:\path\to\sleep.jar"), ou placez sleep.jar dans le dossier racine ou dans CnaEmulator\.
Chargeur en mémoire (COFFLoader64.exe)Binaire de chargement autonome (par ex., compilé depuis trustedsec/COFFLoader). Placé dans le répertoire racine ou remplacé via COFFLOADER_PATH.

Configuration rapide de l'environnement (cmd.exe) :

set "JAVA_HOME=C:\path\to\jdk-17"
set "PATH=%JAVA_HOME%\bin;%PATH%"
set "SLEEP_JAR=C:\path\to\sleep.jar"

Guide d'utilisation

1. Compilation depuis les sources

Avant d'exécuter les classes compilées ou le JAR, compilez CnaEmulator.java :

Utilisation du script de build :

CnaEmulator\build.bat

Ou compilation et empaquetage manuels :

:: Compile source to bytecode
javac -cp "%SLEEP_JAR%" -d CnaEmulator CnaEmulator\CnaEmulator.java

:: Package into executable bytecode JAR
cd CnaEmulator
jar cfe CnaEmulator.jar CnaEmulator *.class
cd ..

2. Méthodes d'exécution

Vous pouvez invoquer CnaEmulator en utilisant l'une des méthodes suivantes depuis le répertoire racine du projet :

Méthode A : Lanceur par script batch (recommandé)

Le script lanceur gère automatiquement la découverte du JDK, la configuration du classpath et la résolution des chemins :

cna_emulator.bat <action> [arguments...]

Méthode B : JAR exécutable compilé

java -cp "CnaEmulator\CnaEmulator.jar;%SLEEP_JAR%" CnaEmulator <action> [arguments...]

Méthode C : Bytecode de classe direct

java -cp "CnaEmulator;%SLEEP_JAR%" CnaEmulator <action> [arguments...]

3. Actions principales et exemples d'utilisation

A. Valider la syntaxe d'un script (check)

Valide la syntaxe d'un script Aggressor et compile les arbres AST via Sleep 2.1 sans exécuter le code :

cna_emulator.bat check <path\to\script.cna>

Exemple avec le fixture fourni :

cna_emulator.bat check CnaEmulator\tests\fixtures\sample_bof.cna

Exemple de sortie :

[*] Checking syntax of: CnaEmulator\tests\fixtures\sample_bof.cna
[+] sample_bof.cna syntax OK

B. Exécuter des commandes avec dispatch BOF en direct (run)

Exécute un alias Aggressor déclaré, empaquette les arguments au format binaire (bof_pack), résout le fichier objet (script_resource) et invoque COFFLoader64.exe pour exécuter le BOF dans la mémoire de l'appelant :

cna_emulator.bat run <path\to\script.cna> <alias_name> [arguments...]

Exemple avec le fixture fourni :

cna_emulator.bat run CnaEmulator\tests\fixtures\sample_bof.cna sample_bof run test_target

Exemple de sortie :

[*] Invoking: sample_bof 1 run test_target
[*] Tasked beacon: Executing sample_bof with action: run

[+] [COFFLoader Bridge] Executing: COFFLoader64.exe go sample_bof.o
    | Got contents of COFF file
    | Running/Parsing the COFF file
    | Ran/parsed the coff
    | Outdata Below:
    | ...
[+] [COFFLoader Bridge] Completed with exit code: 0

C. Batterie de tests automatisés et tests de régression (test)

CnaEmulator test fournit une exécution de tests automatisée :

Télécharger l’outil