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
PyRat — PyRat,a rat by python xmlrpc | Kitploit
Outils/GitHubGitHub/anhkgg/pyrat
Post-ExploitationPenetration TestingCommand and ControlRed TeamingRemote Access ToolPayload Development
GitHubanhkgg/pyrat

PyRat

PyRat,a rat by python xmlrpc

Voir le dépôt
16153il y a 8 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

PyRat

PyRat, un projet open-source de contrôle à distance basé sur Python XmlRPC, comprenant un client et un serveur (également appelé contrôleur, ci-après désigné comme serveur).

Déclaration : ce projet est uniquement destiné à l'échange technique, ne l'utilisez pas à des fins commerciales ou illégales. Toute responsabilité légale éventuelle incombe à l'utilisateur, non à moi !

  1. Étant donné que XmlRPC est basé sur le protocole HTTP, PyRat peut ignorer les pare-feu et communiquer et contrôler plus élégamment.
  2. La nature multiplateforme de Python permet au client PyRat de fonctionner sous Windows, Linux, MacOS, etc. Actuellement, les tests ont validé les plateformes Windows/Ubuntu/MacOS.
  3. Le contrôle et la gestion en ligne de commande côté serveur, très stylés.
  4. Actuellement, le client prend en charge les fonctionnalités suivantes : informations de base, téléchargement, téléversement, cmdshell, exécution de logiciels, arrêt de processus, mise à jour, désinstallation, etc.

Dépendances

  1. python2.7
  2. colorama (serveur)

TODO

  1. Ajouter plus de fonctionnalités, comme les opérations sur fichiers, le transfert de fichiers par fragmentation, le bureau à distance, la capture d'écran, les opérations sur comptes, etc.
  2. Interface visuelle pour le serveur
  3. Shell interactif
  4. Tunnel chiffré
  5. SSH / SCP
  6. Les PR sont les bienvenues

Utilisation de base

Client

root@kitploit:~
> python .\pyratcli.py localhost 80

Serveur

root@kitploit:~
> python pyratsvr.py 80
--------------------Python RAT-----------------------
--------------------anhkgg---------------------------
--------------------Copyright (c) 2018---------------

Logiciel destiné uniquement à l'échange technique, ne l'utilisez pas à des fins commerciales ou illégales. Toute responsabilité légale éventuelle incombe à l'utilisateur, non à moi !

--------------------Commandes de tâche-----------------
--|(l)ist (a)live (k)ill (s)elect (p)rint (c)mdshell (n)ew (d)ownload (r)unexec (u)pload (t)erminate (q)uit (h)elp|--

cmd >

Lorsque le client se connecte, le serveur affiche une notification et définit le client le plus récent comme cible par défaut.

root@kitploit:~
cmd >test-3333333 est en ligne.
Cible automatique définie : test-3333333

help ou h permet de lister toutes les commandes prises en charge par le serveur.

root@kitploit:~
cmd >help
(l)ist:     lister tous les clients
(a)live:    lister les clients actifs
(k)ill:     supprimer un client
(s)elect:   sélectionner un client cible
(p)rint:    afficher le client actuel
(c)mdshell: créer un cmdshell, tapez q pour quitter
(n)ew:      mettre à jour la version du client
(d)ownload: demander au client de télécharger un fichier
(r)unexec:  demander au client d'exécuter un exe
(u)pload:   téléverser un fichier vers le client
(t)erminate:terminer un processus
(q)uit:     quitter le serveur

Gestion des clients

Le serveur utilise SQLite pour enregistrer les informations de base des clients et les tâches, et permet de gérer les clients via des commandes.

root@kitploit:~
// Lister tous les clients
cmd >l
test-3333333 hors ligne 2018-03-20 22:46:59!
id     | client_id                  | version  | localip              | remoteip             | username             | osversion  | firsttime            | lasttime             | status
10     | test-3333333     | 0.1.0    | 192.168.149.1        | 114.245.47.12        | test            | Windows10.0.16299 | 2018-03-17 12:39:56  | 2018-03-20 22:46:59  | 0
cmd >
// Lister les clients en ligne
cmd >a
aucun client actif
// Supprimer un enregistrement client de la base ou désinstaller le client
cmd >k
cid cible (ou ALL) :test-3333333
Voulez-vous désinstaller le client ? (O/N)

Pour contrôler un client, il faut d'abord sélectionner la cible avec select ou s.

root@kitploit:~
cmd >c // Tentative d'entrer dans cmdshell, message : pas de cible
Veuillez d'abord définir un client cible avec la commande (s)elect.
cmd >s // Définir la cible
client_id:test-3333333
Client cible défini : test-3333333
// Voir la cible actuelle
cmd >p
test-3333333

cmdshell

Entrez dans cmdshell avec cmdshell ou c. Tant que vous ne tapez pas q, vous restez dans le répertoire de travail du cmdshell.

Le cmdshell conserve le répertoire de travail (ex: cd c:) – la prochaine opération s'effectuera dans ce répertoire, réalisant un cmdshell de type pipeline.

Par ailleurs, si vous lancez un processus via cmdshell, certains processus peuvent bloquer le retour des messages ; il est donc déconseillé de le faire. Utilisez plutôt runexec.

root@kitploit:~
cmd >c
RAT-CMD > dir
RAT-CMD > test-3333333 exécute cmdshell(195) dir True
 Le volume dans le lecteur D est gitrepo
 Le numéro de série du volume est EB2F-5AC0

 Répertoire de D:\PyRat\client

2018/02/24  09:40    <DIR>          .
2018/02/24  09:40    <DIR>          ..
2018/03/20  22:46             4,919 pyratcli.py
2018/03/20  23:01                28 cmd.log
2018/03/17  12:39             1,322 pyratfc.py
2018/03/17  11:19             2,500 osver.py
2018/03/17  12:39             2,161 pyratfc.pyc
               5 fichier(s)         10,930 octets
               2 répertoire(s)  647,836,565,504 octets libres

RAT-CMD > ver
RAT-CMD > test-3333333 exécute cmdshell(196) ver True

Microsoft Windows [version 10.0.16299.309]

RAT-CMD > tasklist
RAT-CMD > test-3333333 exécute cmdshell(197) tasklist True

Nom de l'image                     PID  Nom de la session   Session#      Mémoire
========================= ======== ================ =========== ============
System Idle Process              0 Services                   0          8 K
System                           4 Services                   0      3,564 K
smss.exe                       360 Services                   0        412 K
csrss.exe                      492 Services                   0      1,700 K
Calculator.exe               21656 RDP-Tcp#85                 1     56,772 K
RAT-CMD > tasklist |findstr Cal
RAT-CMD > test-3333333 exécute cmdshell(200) tasklist |findstr Cal True
Calculator.exe               21656 RDP-Tcp#85                 1     51,856 K
RAT-CMD > taskkill /IM Calculator.exe
RAT-CMD > test-3333333 exécute cmdshell(201) taskkill /IM Calculator.exe True
Succès : le signal de terminaison a été envoyé au processus "Calculator.exe" (PID 21656).
RAT-CMD > taskkill /PID 21656
RAT-CMD > test-3333333 exécute cmdshell(202) taskkill /PID 21656 True
Succès : le signal de terminaison a été envoyé au processus (PID 21656).

Opérations sur les fichiers

Téléchargement et téléversement de fichiers pris en charge. Le téléchargement peut se faire à partir d'une URL réseau ou d'un fichier local du serveur. Pour l'instant, seuls le téléchargement et le téléversement de fichiers uniques sont supportés.

root@kitploit:~
cmd >d
url (tapez N pour télécharger un fichier local) :N // Choisir de télécharger un fichier local
fichier local :db.db
chemin de destination :db.db
cmd >test-3333333 exécute download(203) local db.db db.db True
téléchargement réussi

cmd >d
url (tapez N pour télécharger un fichier local) :https://dl.360safe.com/360/inst.exe // Télécharger un fichier réseau
chemin de destination :inst.exe
cmd >test-3333333 exécute download(204) net https://dl.360safe.com/360/inst.exe inst.exe True
téléchargement réussi

Exécution d'un logiciel

root@kitploit:~
cmd >r
cible à exécuter :inst.exe
runexec inst.exe

Arrêt d'un processus

root@kitploit:~
cmd > t
Sélectionnez le type (nom/pid) :nom
nom du processus :notepad.exe
cmd >test-3333333 exécute terminate(212) name notepad.exe True
Succès : le signal de terminaison a été envoyé au processus "notepad.exe" (PID 25416).

Problèmes

  1. Des problèmes d'encodage ont été rencontrés lors des tests.

Si le client fonctionne sous Linux et le serveur sous Windows, les caractères chinois peuvent s'afficher mal car les deux plateformes utilisent des encodages différents. Ce problème n'a pas encore été traité.

Donations

img

Télécharger l’outil