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
ProcessHider — Outil post-exploitation pour masquer des processus aux applications de surveillance. | Kitploit
Outils/GitHubGitHub/m00nrise/processhider
Escalade de PrivilègesMécanismes de PersistanceÉvasion IDS/IPSPost-ExploitationTests d'IntrusionRed Teaming
GitHubm00nrise/processhider

ProcessHider

Outil post-exploitation pour masquer des processus aux applications de surveillance.

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

#ProcessHider

Créé par M00nRise

NOTE IMPORTANTE

Cet outil est autorisé à être utilisé uniquement pour des tests de pénétration et autres activités de type white-hat. Toute utilisation illégale est absolument interdite !

À propos

ProcessHider est un outil de post-exploitation conçu pour masquer des processus des outils de surveillance tels que le Gestionnaire de tâches et Process Explorer, empêchant ainsi les administrateurs de découvrir les processus de la charge utile. L'outil fonctionne sur les versions 32 et 64 bits, en détectant lui-même la version du système d'exploitation et en utilisant la version appropriée de l'outil.

ProcessHider est disponible sous forme de fichier EXE ou de script Powershell.

Licence

Cet outil est sous licence BSD-3 :

Copyright (c) 2016, M00nRise

Tous droits réservés.

Par la présente, une autorisation est accordée, gratuitement, à toute personne obtenant une copie de ce logiciel et des fichiers de documentation associés (le « Logiciel »), de traiter le Logiciel sans restriction, y compris, sans limitation, les droits d'utiliser, de copier, de modifier, de fusionner, de publier, de distribuer, de sous-licencier et/ou de vendre des copies du Logiciel, et de permettre aux personnes à qui le Logiciel est fourni de le faire, sous réserve des conditions suivantes :

L'avis de copyright ci-dessus et cet avis d'autorisation doivent être inclus dans toutes les copies ou parties substantielles du Logiciel.

LE LOGICIEL EST FOURNI « EN L'ÉTAT », SANS GARANTIE D'AUCUNE SORTE, EXPRESSE OU IMPLICITE, Y COMPRIS, MAIS SANS S'Y LIMITER, LES GARANTIES DE QUALITÉ MARCHANDE, D'ADÉQUATION À UN USAGE PARTICULIER ET D'ABSENCE DE CONTREFAÇON. EN AUCUN CAS, LES AUTEURS OU TITULAIRES DU COPYRIGHT NE POURRONT ÊTRE TENUS RESPONSABLES DE TOUTE RÉCLAMATION, DOMMAGE OU AUTRE RESPONSABILITÉ, QUE CE SOIT DANS LE CADRE D'UNE ACTION CONTRACTUELLE, DÉLICTUELLE OU AUTRE, DÉCOULANT DE, OU EN LIEN AVEC LE LOGICIEL OU SON UTILISATION, OU D'AUTRES OPÉRATIONS EFFECTUÉES AVEC LE LOGICIEL.

Utilisation de ProcessHider

Pour construire le projet, utilisez "build-me.bat" qui se trouve dans le répertoire racine. Il existe deux versions du script complet : EXE et Powershell.

Pour utiliser l'EXE, appelez le fichier principal, ProcessHider, qui se trouve sous MainFile, à partir de cmd, en utilisant les options suivantes :

  • -i - spécifiez les ID de processus que vous souhaitez masquer, séparés par des virgules (sans espace !)
  • -n - spécifiez les noms de processus que vous souhaitez masquer, séparés par des virgules (encore une fois, sans espace)
  • -x - spécifiez les applications de surveillance que vous souhaitez éviter, autres que les applications par défaut (powershell.exe,taskmgr.exe,procexp.exe,procexp64.exe,perfmon.exe)

Pour utiliser le Powershell, utilisez Powershell\Output\fullScript.ps1, avec les mêmes arguments que l'EXE.

Exemple d'utilisation :

root@kitploit:~
`ProcessHider -i 5454,3672 -n "chrome.exe,notepad.exe" -x "cmd.exe"`

Note : vous devez utiliser au moins l'une des options -i ou -n. Le cacheur s'assurera de se masquer également.

Bibliothèques externes et dépendances

Le projet utilise les bibliothèques et projets suivants :

Le script findvs est tiré de EasyHook : https://easyhook.github.io/

Invoke-ReflectivePEInjection par clymb3r, disponible sur https://github.com/PowerShellMafia/PowerSploit/blob/master/CodeExecution/Invoke-ReflectivePEInjection.ps1

Xgetopt par Hans Dietrich, disponible sur http://www.codeproject.com/Articles/1940/XGetopt-A-Unix-compatible-getopt-for-MFC-and-Win32

NtHookEngine par Daniel Pistelli, disponible sur http://www.codeproject.com/Articles/21414/Powerful-x-x-Mini-Hook-Engine

ReflectiveDLLInjection par Stephen Fewer de Harmony Security, disponible sur https://github.com/stephenfewer/ReflectiveDLLInjection

« Easy way to set up global API hooks » par Sergey Podobry, Apriorit Inc, disponible sur http://www.codeproject.com/Articles/49319/Easy-way-to-set-up-global-API-hooks

Il n'y a aucune dépendance ni sur ces bibliothèques ni sur le runtime VC++, car elles sont toutes liées statiquement.

Structure et fonctionnement

D'abord, le cacheur vérifie si le système d'exploitation est 32 bits ou 64 bits, et choisit la version appropriée à utiliser. Ensuite, il lance un démon, qui recherche l'un des outils de surveillance interdits. Lorsqu'il en trouve un - il utilise l'injection de DLL pour lancer la charge utile - qui accroche l'appel à NtQuerySystemInformation - la méthode utilisée par les outils du système pour énumérer les processus actifs, et supprime chacun des processus spécifiés (ainsi que le démon) des résultats.

Contributions

Les contributions sont les bienvenues. Assurez-vous que lorsque vous travaillez sur les scripts Powershell, ne travaillez pas sur le "fullScript" mais plutôt sur le "daemon-integration" et "Invoke-ReflectivePEInjectionLite", car le script de construction utilise ces fichiers comme sources pour le fullScript/

Problèmes et À faire

Problèmes :

  • L'injecteur Powershell (Invoke-ReflectivePEInjection) est extrêmement lent. Il faut améliorer ce script
  • Parfois le cacheur plante lors de l'injection (semble se produire lorsqu'un processus est en cours de fermeture)
  • Parfois, Powershell plante après avoir tenté de récupérer la liste des processus en utilisant "Get-Process"
  • Injecter juste au moment où le processus se charge peut le faire planter (notamment Process Explorer). Pour l'instant, c'est corrigé en utilisant un court délai, mais une meilleure solution est nécessaire, car le délai est parfois perceptible.

À FAIRE :

  • Trouver un moyen d'accrocher les appels à "tasklist.exe" - pour l'instant c'est trop rapide (peut-être aussi en utilisant un appel API différent ?)
  • Construire une version Powershell de cet outil
  • Créer une manière plus élégante de passer des arguments à la DLL injectée
  • Remplacer l'utilisation de la liste chaînée par un template c++11
Télécharger l’outil