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
doublepulsar-usermode-injector — Un utilitaire permettant d’utiliser le shellcode en mode utilisateur de la charge utile DOUBLEPULSAR pour charger de manière réflexive une DLL arbitraire dans un autre processus, afin de tester des techniques de détection ou d’autres recherches en sécurité. | Kitploit
Outils/GitHubGitHub/withsecurelabs/doublepulsar-usermode-injector
ExploitationPost-ExploitationAnalyse de MalwareRed TeamingDéveloppement de Charges Utiles
GitHubwithsecurelabs/doublepulsar-usermode-injector

doublepulsar-usermode-injector

Un utilitaire permettant d’utiliser le shellcode en mode utilisateur de la charge utile DOUBLEPULSAR pour charger de manière réflexive une DLL arbitraire dans un autre processus, afin de tester des techniques de détection ou d’autres recherches en sécurité.

Voir le dépôt
12338il 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

Auteur : Matt Hillman ([email protected] - @sp1nl0ck)

Société : Countercept (@countercept)

Site web : https://countercept.com

Un utilitaire qui utilise le shellcode en mode utilisateur de la charge utile DOUBLEPULSAR pour charger de manière réflexive une DLL arbitraire dans un autre processus, afin de tester des techniques de détection ou d'autres recherches en sécurité.

Contexte

La charge utile DOUBLEPULSAR publiée par Shadow Brokers s'exécute initialement en mode noyau et charge de manière réflexive une DLL dans un processus en mode utilisateur via un appel de procédure asynchrone (APC). Le chargement réel de la DLL se produit en mode utilisateur, et cet utilitaire exploite ce shellcode en mode utilisateur pour charger une DLL dans un processus spécifié et exécuter un ordinal donné. Cela permet de tester les techniques de détection d'attaques et de réponse aux incidents de forensic numérique contre la charge utile.

Le chargeur est intéressant car il fonctionne avec n'importe quelle DLL arbitraire sans utiliser l'appel standard LoadLibrary. Éviter LoadLibrary peut rendre le chargement plus furtif, car cela évite d'écrire la DLL sur le disque, peut contourner tout outil surveillant les appels LoadLibrary, et peut également éviter d'avoir une entrée dans le bloc d'environnement de processus (PEB), qui est généralement utilisé pour obtenir la liste des modules chargés. Ces techniques sont désormais assez courantes, mais jusqu'à présent, nous n'avions connaissance d'aucun code public capable de charger une DLL arbitraire de cette manière - le code existant exige que la DLL soit spécialement conçue pour prendre en charge le chargement. DOUBLEPULSAR est différent en ce sens qu'il implémente un chargeur plus complet capable de charger presque n'importe quelle DLL. Ce chargeur fonctionne sur presque toutes les versions de Windows telles quelles.

Bien que DOUBLEPULSAR lui-même utilise un appel APC depuis le mode noyau mis en file d'attente contre un processus en mode utilisateur, cet utilitaire met en file d'attente l'APC depuis le mode utilisateur ; cela fait peu de différence pratique. De plus, cet utilitaire peut déclencher le shellcode en utilisant CreateRemoteThread à la place.

Utilisation

root@kitploit:~
C:\>DOUBLEPULSAR-usermode-injector.exe
USAGE : <pid> <shellcode_file> <dll_to_inject> <ordinal_to_execute> [use_CreateRemoteProcess]

Le dernier argument est facultatif ; s'il est spécifié comme 'true', CreateRemoteProcess sera utilisé à la place d'un appel APC,
qui est la méthode par défaut de Doublepulsar. Cela permet aux utilisateurs de tester de différentes manières.
La méthode par défaut est l'utilisation d'APC. Cela injectera dans TOUS les threads de la cible, ce qui augmente la probabilité que l'un d'eux
se déclenche rapidement. Cela ne convient qu'aux tests, car il peut être indésirable d'appeler la charge utile plus d'une fois.

Par exemple, injectez somelibrary.dll dans le processus 1234 en utilisant un appel de procédure asynchrone (APC) et appelez l'ordinal 1 :

root@kitploit:~
C:\>dopu-usermode-injector.exe 1234 dopu-64bit-usermode-shellcode.bin somelibrary.dll 1
Using thread: 2456
Using thread: 2032
Using thread: 3876

Ou comme ci-dessus, mais en utilisant CreateRemoteThread au lieu d'APC :

root@kitploit:~
C:\>dopu-usermode-injector.exe 1234 dopu-64bit-usermode-shellcode.bin somelibrary.dll 1 true

Plus d'informations

Une analyse complète du shellcode en mode utilisateur de DOUBLEPULSAR :

https://www.countercept.com/our-thinking/doublepulsar-usermode-analysis-generic-reflective-dll-loader/

Travaux antérieurs sur le composant noyau de DOUBLEPULSAR :

https://www.countercept.com/our-thinking/analyzing-the-doublepulsar-kernel-dll-injection-technique/

https://zerosum0x0.blogspot.co.uk/2017/04/doublepulsar-initial-smb-backdoor-ring.html

Télécharger l’outil