Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
Soumettre
OutilsBlog
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é.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
GRAT2 — Nous avons développé le projet GRAT2 de Commande et Contrôle (C2) à des fins d'apprentissage. | Kitploit
Outils/GitHubGitHub/r3nhat/grat2
Escalade de PrivilègesPost-ExploitationCommandement et ContrôleApprentissage et ÉducationRed TeamingDéveloppement de Charges Utiles
GitHubr3nhat/grat2

GRAT2

Nous avons développé le projet GRAT2 de Commande et Contrôle (C2) à des fins d'apprentissage.

Voir le dépôt
4119956il y a 5 ansVérifié par Kitploit

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

Project Status

GRAT2 C2


                   (c).-.(c)    (c).-.(c)    (c).-.(c)    (c).-.(c)    (c).-.(c)
                    / ._. \      / ._. \      / ._. \      / ._. \      / ._. \
                    \( Y )/__  __\( Y )/__  __\( Y )/__  __\( Y )/__  __\( Y )/
                 (_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)(_.-/'-'\-._)
                    || G ||      || R ||      || A ||      || T ||      || 2 ||
                   _.' `-' '._  _.' `-' '._  _.' `-' '._  _.' `-' '._  _.' `-' '._
                 (.-./`-'\.-.)(.-./`-`\.-.)(.-./`-'\.-.)(.-./`-'\.-.)(.-./`-'\.-.)
                  `-'     `-'  `-'     `-'  `-'     `-'  `-'     `-'  `-'     `-'
                                             v1.1 beta!

À propos de GRAT2

GRAT2 est un outil de commande et de contrôle (C2) écrit en python3 et le client en .NET 4.5. L'idée principale vient de Georgios Koumettou qui a initié le projet.

Pourquoi avons-nous développé GRAT2 ?

Nous sommes conscients qu'il existe de nombreux outils C2, mais nous avons développé celui-ci par curiosité sur le fonctionnement des C2 et des techniques d'évasion. C'est tout ! ;-)

Fonctionnalités actuelles :

Techniques d'évasion :

  • Sandbox (Vérifier si la machine est dans le domaine, sinon quitter).
  • Correction de l'enregistrement ETW (Event Tracing for Windows).
  • Correction de l'interface AMSI (Antimalware Scan Interface).
  • caretrun - Exécuter une commande via cmd.exe dans un format caret (^i^p^c^o^n^f^i^g) en utilisant explorer.exe comme PID parent (Éviter certains AV/EDR).

Communication :

  • HTTP et HTTPS
  • DNS - Prend actuellement en charge uniquement les enregistrements TXT.
  • Communication encodée utilisant XOR et base64.
  • Conscient du proxy.

Modules :

  • startdns - Démarrer le serveur d'écoute DNS.
  • listagents - Lister les agents actuels.
  • localip - Obtenir l'adresse IP locale de la machine.
  • uac - Tenter de contourner l'UAC en utilisant un nettoyage de disque silencieux avec une technique de falsification du PID parent.
  • maketoken - Supprimer le jeton actuel et en créer un nouveau avec les informations d'identification fournies (Domaine ou Local).
  • revtoself - Supprimer le jeton actuel.
  • stealtoken - Tenter de voler un jeton d'un processus en cours et d'usurper l'identité de l'utilisateur (droits Administrateur requis).
  • rportfwd - Tenter de créer un transfert de port inverse.
  • whoami - Afficher l'utilisateur actuel.
  • hostname - Afficher le nom d'hôte de la machine.
  • domain - Afficher le FQDN du domaine.
  • screenshot - Prendre une capture d'écran.
  • download - Télécharger un fichier.
  • upload - Télécharger un fichier.
  • cd - Changer de répertoire.
  • run - Exécuter une commande via cmd.exe en utilisant explorer.exe comme PID parent.
  • caretrun - Exécuter une commande via cmd.exe dans un format caret (^i^p^c^o^n^f^i^g) en utilisant explorer.exe comme PID parent (Éviter certains AV/EDR).
  • sleep - Définir un nouveau temps de pause.
  • exit - Quitter.
  • shell - Exécuter une commande via cmd.exe.
  • powershell - Exécuter une commande powershell en utilisant PowerShell non managé.
  • powerscript - Exécuter des scripts powershell en utilisant PowerShell non managé.
  • executeassembly - Tenter d'exécuter des assemblies .NET en mémoire.
  • ps - Afficher les processus en cours.
  • pwd - Afficher le répertoire actuel.
  • ls - Liste des répertoires.
  • pid - Afficher l'ID du processus actuel.

Techniques d'injection de processus :

  • dynamic_injectcrt - Tenter d'injecter une shellcode dans un processus en utilisant Dynamic Invoke.
  • ppid_processhollow - Tenter d'injecter une shellcode dans un processus en utilisant Process Hollowing et la falsification du PID parent (explorer.exe).
  • processhollow - Tenter d'injecter une shellcode dans un processus en utilisant la technique Process Hollowing.
  • injectppidapc - Tenter d'injecter une shellcode dans un processus en utilisant QueueUserAPC et la falsification du PID parent (explorer.exe).
  • injectapc - Tenter d'injecter une shellcode dans un processus en utilisant la technique QueueUserAPC.
  • injectcrt - Tenter d'injecter une shellcode dans un processus distant en utilisant la technique Create Remote Thread.

Référez-vous à GRAT2_Shellcodes pour générer une shellcode indépendante de la position en utilisant Donut.

À FAIRE :

  • Écouteur SMB.
  • Améliorer l'écouteur DNS en ajoutant d'autres fonctionnalités comme les enregistrements A, passer du DNS à HTTP, etc.
  • Ajouter la journalisation.
  • Implémenter SOCKS5.
  • Corriger les problèmes connus.

Configurer votre profil client :

GRAT2 Config Profile

Paramètres généraux et écouteur HTTP/s :

  • c2 - Adresse IP ou nom d'hôte de votre serveur GRAT2 (Requis).

  • sandboxEvasion - Si activé (1), GRAT2 s'exécutera uniquement sur un ordinateur joint à un domaine, sinon GRAT2 se terminera. Si désactivé (0), GRAT2 s'exécutera uniquement sur un ordinateur non joint à un domaine, sinon il se terminera (Par défaut : Désactivé).

  • patchEtw - Si activé (1), l'ETW sera corrigé (Par défaut : Activé).

  • patchAmsi - Si activé (1), l'AMSI sera corrigé (Par défaut : Activé).

  • sleep - Définir le temps de pause (Par défaut : 3 secondes).

  • UserAgent - Définir le UserAgent (Par défaut : "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; yie11; rv:11.0) like Gecko").

  • initialUrl - Requête HTTP GET initiale de GRAT2 (Par défaut : jquery.js).

  • sendResults - Requête HTTP POST des résultats de GRAT2 (Par défaut : login.aspx).

    REMARQUE si vous modifiez la chaîne initialUrl ou sendResults, vous devez mettre à jour la chaîne dans GRAT2_Server/handlers.py aux lignes 49 et 84 respectivement.

Écouteur DNS :

  • DNSListener - Activer (1) ou Désactiver (0). Si activé, configurer le serveur GRAT2 en conséquence (voir ci-dessous).
  • DNSServer - Votre serveur DNS GRAT2.
  • dnsMaxTXT - Longueur maximale des enregistrements TXT (Par défaut : 255).
  • maxDNSChar - Taille maximale en caractères pour chaque sous-domaine DNS (Par défaut : 63).

Configurer votre profil serveur :

GRAT2 Config Server Profile

Écouteur HTTP/s et DNS :

  • HOST_NAME - Adresse IP ou nom d'hôte de votre serveur GRAT2.
  • PORT_NUMBER - Port d'écoute. (80 ou 443)
  • server_pem - Emplacement de votre fichier PEM.
  • dnsDomainName - Votre serveur DNS GRAT2.

Utilisation :

  • Ouvrez le projet client GRAT2 (GRAT2_Client.sln) avec Visual Studio, modifiez la configuration de la solution de Debug à Release, puis générez la solution.
  • Installez les deux dépendances (dnslib et termcolor) sur le serveur GRAT2 : pip3 install -r requirements.txt
  • Démarrez le serveur GRAT2 : GRAT2 Start Server
  • Exécutez l'exécutable client GRAT2 - GRAT2_Client\bin\Release\GRAT2_Client.exe
  • Interagissez avec l'agent : GRAT2 Interact

Notes de version :

Version 1.0 - 05 sept. 2020

  • Première version
Télécharger l’outil