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
ThievingFox — Kit de collecte d'identifiants post-exploitation qui s'injecte dans les gestionnaires de mots de passe et les utilitaires Windows pour capturer des identifiants via du proxy DLL, du détournement COM et une injection AppDomainManager. | Kitploit
Outils/GitHubGitHub/slowerzs/thievingfox
Mouvement LatéralPost-ExploitationTests d'IntrusionRed Teaming
GitHubslowerzs/thievingfox

ThievingFox

Kit de collecte d'identifiants post-exploitation qui s'injecte dans les gestionnaires de mots de passe et les utilitaires Windows pour capturer des identifiants via du proxy DLL, du détournement COM et une injection AppDomainManager.

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

ThievingFox

ThievingFox est une collection d'outils de post-exploitation pour récupérer des identifiants depuis divers gestionnaires de mots de passe et utilitaires Windows. Chaque module utilise une méthode spécifique d'injection dans le processus cible, puis intercepte des fonctions internes pour collecter les identifiants.

L'article de blog associé se trouve ici


  • Installation
  • Cibles
  • Utilisation

Installation

Linux

Rustup doit être installé, suivez les instructions disponibles ici : https://rustup.rs/

Le paquet mingw-w64 doit être installé. Sur Debian, cela peut se faire avec :

root@kitploit:~
apt install mingw-w64

Les cibles Windows x86 et x86_64 doivent être installées pour Rust :

root@kitploit:~
rustup target add x86_64-pc-windows-gnu
rustup target add i686-pc-windows-gnu

Mono et Nuget doivent également être installés, les instructions sont disponibles ici : https://www.mono-project.com/download/stable/#download-lin

Après avoir ajouté les dépôts Mono, Nuget peut être installé via apt :

root@kitploit:~
apt install nuget

Enfin, les dépendances Python doivent être installées :

root@kitploit:~
pip install -r client/requirements.txt

ThievingFox fonctionne avec python >= 3.11.

Windows

Rustup doit être installé, suivez les instructions disponibles ici : https://rustup.rs/

Les cibles Windows x86 et x86_64 doivent être installées pour Rust :

root@kitploit:~
rustup target add x86_64-pc-windows-msvc
rustup target add i686-pc-windows-msvc

L'environnement de développement .NET doit également être installé. Depuis Visual Studio, naviguez vers Outils > Obtenir des outils et fonctionnalités > Installer "Développement .NET desktop".

Enfin, les dépendances Python doivent être installées :

root@kitploit:~
pip install -r client/requirements.txt

ThievingFox fonctionne avec python >= 3.11

NOTE : Sur un hôte Windows, pour utiliser le module KeePass, msbuild doit être disponible dans le PATH. Cela peut être réalisé en exécutant le client depuis un Visual Studio Developer PowerShell (Outils > Ligne de commande > Developer PowerShell)

Cibles

Tous les modules ont été testés sur les versions Windows suivantes :

Version Windows
Windows Server 2022
Windows Server 2019
Windows Server 2016
Windows Server 2012R2
Windows 10
Windows 11

[!CAUTION] Les modules n'ont pas été testés sur d'autres versions, et ils sont susceptibles de ne pas fonctionner.

Utilisation

[!CAUTION] Bien que j'aie essayé de garantir que ces outils n'affectent pas la stabilité des applications ciblées, l'interception (hooking) en mémoire et l'injection de bibliothèques sont dangereuses et peuvent entraîner un crash ou une instabilité de l'application. Si cela devait arriver, l'utilisation du module cleanup sur la cible devrait suffire pour garantir que la prochaine fois que l'application sera lancée, aucune injection/interception ne sera effectuée.

ThievingFox contient 3 modules principaux : poison, cleanup et collect.

Poison

Pour chaque application spécifiée dans les paramètres de la ligne de commande, le module poison récupère la bibliothèque originale qui va être détournée (pour le détournement COM et le proxying DLL), compile une bibliothèque qui correspond aux propriétés de la DLL d'origine, la télécharge sur le serveur, et modifie le registre si nécessaire pour effectuer le détournement COM.

Pour accélérer le processus de compilation de toutes les bibliothèques, un cache est conservé dans client/cache/.

--mstsc, --rdcman et --mobaxterm ont une option spécifique, respectivement --mstsc-poison-hkcr, --rdcman-poison-hkcr et --mobaxterm-poison-hkcr. Si l'une de ces options est spécifiée, le détournement COM remplacera la clé de registre dans la ruche HKCR, ce qui signifie que tous les utilisateurs seront impactés. Par défaut, seuls les utilisateurs actuellement connectés sont impactés (tous les utilisateurs ayant une ruche HKCU).

--keepass et --keepassxc ont des options spécifiques, --keepass-path, --keepass-share et --keepassxc-path, --keepassxc-share, pour spécifier où ces applications sont installées, si ce n'est pas le chemin d'installation par défaut. Ce n'est pas nécessaire pour les autres applications, car le détournement COM est utilisé.

Le module KeePass nécessite que le Visual C++ Redistributable soit installé sur la cible.

Plusieurs applications peuvent être spécifiées à la fois, ou le drapeau --all peut être utilisé pour cibler toutes les applications.

[!IMPORTANT] N'oubliez pas de vider le cache si vous changez le paramètre --tempdir, car le nom du répertoire est intégré dans les DLL natives.

root@kitploit:~
$ python3 client/ThievingFox.py poison -h
usage: ThievingFox.py poison [-h] [-hashes HASHES] [-aesKey AESKEY] [-k] [-dc-ip DC_IP] [-no-pass] [--tempdir TEMPDIR] [--keepass] [--keepass-path KEEPASS_PATH]
                             [--keepass-share KEEPASS_SHARE] [--keepassxc] [--keepassxc-path KEEPASSXC_PATH] [--keepassxc-share KEEPASSXC_SHARE] [--mstsc] [--mstsc-poison-hkcr]
                             [--consent] [--logonui] [--rdcman] [--rdcman-poison-hkcr] [--mobaxterm] [--mobaxterm-poison-hkcr] [--all]
                             target

positional arguments:
  target                Target machine or range [domain/]username[:password]@<IP or FQDN>[/CIDR]

options:
  -h, --help            show this help message and exit
  -hashes HASHES, --hashes HASHES
                        LM:NT hash
  -aesKey AESKEY, --aesKey AESKEY
                        AES key to use for Kerberos Authentication
  -k                    Use kerberos authentication. For LogonUI, mstsc and consent modules, an anonymous NTLM authentication is performed, to retrieve the OS version.
  -dc-ip DC_IP, --dc-ip DC_IP
                        IP Address of the domain controller
  -no-pass, --no-pass   Do not prompt for password
  --tempdir TEMPDIR     The name of the temporary directory to use for DLLs and output (Default: ThievingFox)
  --keepass             Try to poison KeePass.exe
  --keepass-path KEEPASS_PATH
                        The path where KeePass is installed, without the share name (Default: /Program Files/KeePass Password Safe 2/)
  --keepass-share KEEPASS_SHARE
                        The share on which KeePass is installed (Default: c$)
  --keepassxc           Try to poison KeePassXC.exe
  --keepassxc-path KEEPASSXC_PATH
                        The path where KeePassXC is installed, without the share name (Default: /Program Files/KeePassXC/)
  --keepassxc-share KEEPASSXC_SHARE
                        The share on which KeePassXC is installed (Default: c$)
  --mstsc               Try to poison mstsc.exe
  --mstsc-poison-hkcr   Instead of poisonning all currently logged in users' HKCU hives, poison the HKCR hive for mstsc, which will also work for user that are currently not
                        logged in (Default: False)
  --consent             Try to poison Consent.exe
  --logonui             Try to poison LogonUI.exe
  --rdcman              Try to poison RDCMan.exe
  --rdcman-poison-hkcr  Instead of poisonning all currently logged in users' HKCU hives, poison the HKCR hive for RDCMan, which will also work for user that are currently not
                        logged in (Default: False)
  --mobaxterm           Try to poison MobaXTerm.exe
  --mobaxterm-poison-hkcr
                        Instead of poisonning all currently logged in users' HKCU hives, poison the HKCR hive for MobaXTerm, which will also work for user that are currently not
                        logged in (Default: False)
  --all                 Try to poison all applications

Cleanup

Pour chaque application spécifiée dans les paramètres de la ligne de commande, le module cleanup supprime d'abord les artéfacts d'empoisonnement qui forcent l'application cible à charger la bibliothèque d'interception. Ensuite, il tente de supprimer les bibliothèques qui ont été téléchargées sur l'hôte distant.

Pour les applications qui prennent en charge l'empoisonnement des ruches HKCU et HKCR, les deux sont nettoyées quoi qu'il arrive.

Plusieurs applications peuvent être spécifiées à la fois, ou le drapeau --all peut être utilisé pour nettoyer toutes les applications.

Cela ne nettoie pas les identifiants extraits sur l'hôte distant.

[!IMPORTANT] Si l'application ciblée est en cours d'utilisation lors de l'exécution du module cleanup, les DLL déposées sur la cible ne peuvent pas être supprimées. Néanmoins, le module cleanup annulera la configuration qui permet l'injection, ce qui devrait garantir que la prochaine fois que l'application sera lancée, aucune injection ne sera effectuée. Les fichiers qui ne peuvent pas être supprimés par ThievingFox sont journalisés.

root@kitploit:~
$ python3 client/ThievingFox.py cleanup -h
usage: ThievingFox.py cleanup [-h] [-hashes HASHES] [-aesKey AESKEY] [-k] [-dc-ip DC_IP] [-no-pass] [--tempdir TEMPDIR] [--keepass] [--keepass-share KEEPASS_SHARE]
                              [--keepass-path KEEPASS_PATH] [--keepassxc] [--keepassxc-path KEEPASSXC_PATH] [--keepassxc-share KEEPASSXC_SHARE] [--mstsc] [--consent] [--logonui]
                              [--rdcman] [--mobaxterm] [--all]
                              target

positional arguments:
  target                Target machine or range [domain/]username[:password]@<IP or FQDN>[/CIDR]

options:
  -h, --help            show this help message and exit
  -hashes HASHES, --hashes HASHES
                        LM:NT hash
  -aesKey AESKEY, --aesKey AESKEY
                        AES key to use for Kerberos Authentication
  -k                    Use kerberos authentication. For LogonUI, mstsc and consent modules, an anonymous NTLM authentication is performed, to retrieve the OS version.
  -dc-ip DC_IP, --dc-ip DC_IP
                        IP Address of the domain controller
  -no-pass, --no-pass   Do not prompt for password
  --tempdir TEMPDIR     The name of the temporary directory to use for DLLs and output (Default: ThievingFox)
  --keepass             Try to cleanup all poisonning artifacts related to KeePass.exe
  --keepass-share KEEPASS_SHARE
                        The share on which KeePass is installed (Default: c$)
  --keepass-path KEEPASS_PATH
                        The path where KeePass is installed, without the share name (Default: /Program Files/KeePass Password Safe 2/)
  --keepassxc           Try to cleanup all poisonning artifacts related to KeePassXC.exe
  --keepassxc-path KEEPASSXC_PATH
                        The path where KeePassXC is installed, without the share name (Default: /Program Files/KeePassXC/)
  --keepassxc-share KEEPASSXC_SHARE
                        The share on which KeePassXC is installed (Default: c$)
  --mstsc               Try to cleanup all poisonning artifacts related to mstsc.exe
  --consent             Try to cleanup all poisonning artifacts related to Consent.exe
  --logonui             Try to cleanup all poisonning artifacts related to LogonUI.exe
  --rdcman              Try to cleanup all poisonning artifacts related to RDCMan.exe
  --mobaxterm           Try to cleanup all poisonning artifacts related to MobaXTerm.exe
  --all                 Try to cleanup all poisonning artifacts related to all applications

Collect

Pour chaque application spécifiée dans les paramètres de la ligne de commande, le module collect récupère les fichiers de sortie sur l'hôte distant stockés dans C:\Windows\Temp\<tempdir> correspondant à l'application, et les déchiffre. Les fichiers sont supprimés de l'hôte distant, et les données récupérées sont stockées dans client/ouput/.

Plusieurs applications peuvent être spécifiées à la fois, ou le drapeau --all peut être utilisé pour collecter les journaux de toutes les applications.

root@kitploit:~
$ python3 client/ThievingFox.py collect -h
usage: ThievingFox.py collect [-h] [-hashes HASHES] [-aesKey AESKEY] [-k] [-dc-ip DC_IP] [-no-pass] [--tempdir TEMPDIR] [--keepass] [--keepassxc] [--mstsc] [--consent]
                              [--logonui] [--rdcman] [--mobaxterm] [--all]
                              target

positional arguments:
  target                Target machine or range [domain/]username[:password]@<IP or FQDN>[/CIDR]

options:
  -h, --help            show this help message and exit
  -hashes HASHES, --hashes HASHES
                        LM:NT hash
  -aesKey AESKEY, --aesKey AESKEY
                        AES key to use for Kerberos Authentication
  -k                    Use kerberos authentication. For LogonUI, mstsc and consent modules, an anonymous NTLM authentication is performed, to retrieve the OS version.
  -dc-ip DC_IP, --dc-ip DC_IP
                        IP Address of the domain controller
  -no-pass, --no-pass   Do not prompt for password
  --tempdir TEMPDIR     The name of the temporary directory to use for DLLs and output (Default: ThievingFox)
  --keepass             Collect KeePass.exe logs
  --keepassxc           Collect KeePassXC.exe logs
  --mstsc               Collect mstsc.exe logs
  --consent             Collect Consent.exe logs
  --logonui             Collect LogonUI.exe logs
  --rdcman              Collect RDCMan.exe logs
  --mobaxterm           Collect MobaXTerm.exe logs
  --all                 Collect logs from all applications
Télécharger l’outil
ApplicationMéthode d'injection
KeePass.exeInjection AppDomainManager
KeePassXC.exeProxying DLL
LogonUI.exe (Écran de connexion Windows)Détournement COM
consent.exe (Pop-up UAC Windows)Détournement COM
mstsc.exe (Client RDP par défaut Windows)Détournement COM
RDCMan.exe (Client RDP Sysinternals)Détournement COM
MobaXTerm.exe (Client RDP tiers)Détournement COM