Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
KDU — Utilitaire de pilote du noyau Windows qui exploite des pilotes signés vulnérables (BYOVD) pour contourner DSE, charger des pilotes non signés, détourner des processus protégés et vider la mémoire des processus. | Kitploit
Outils/GitHubGitHub/hfiref0x/kdu
Outils DéfensifsEscalade de PrivilègesMécanismes de PersistanceAnalyse des VulnérabilitésExploitationRétro-ingénierieShellcodeAnalyse de MalwareRed TeamingDéveloppement de Charges UtilesExploitation de Binaires
2.8k55282il y a 8 joursVérifié par Kitploit
GitHub
hfiref0x/kdu

KDU

Utilitaire de pilote du noyau Windows qui exploite des pilotes signés vulnérables (BYOVD) pour contourner DSE, charger des pilotes non signés, détourner des processus protégés et vider la mémoire des processus.

Voir le dépôt

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

KDU

Build status Visitors

Kernel Driver Utility

Configuration requise

  • Windows 7/8/8.1/10/11 x64 ;
  • Privilèges administratifs requis.

Objectif et fonctionnalités

L'objectif de cet outil est d'offrir un moyen simple d'explorer le noyau et les composants de Windows sans nécessiter de configuration complexe ni de débogueur local. Il propose :

  • Détournement de processus protégés via un PPL arbitraire ou des handles de processus arbitraires, tous deux par modification de l'objet EPROCESS ;
  • Contournement de la vérification de signature des pilotes (similaire à DSEFix) ;
  • Chargeur de pilotes pour contourner la vérification de signature des pilotes (similaire à TDL/Stryker) ;
  • Prise en charge de divers pilotes vulnérables utilisés comme « fournisseurs » de fonctionnalités.

Utilisation

KDU -list
KDU -listcsv
KDU -diag
KDU -prv ProviderID
KDU -ps ProcessID
KDU -pse Commandline
KDU -psw Commandline
KDU -pho ProcessID
KDU -dmp ProcessID
KDU -dse value
KDU -map filename
  • -list - liste les fournisseurs actuellement disponibles ;
  • -listcsv [file] - liste les fournisseurs disponibles au format CSV, avec écriture optionnelle dans un fichier ;
  • -diag - exécute des diagnostics système pour le dépannage ;
  • -prv - optionnel, sélectionne le fournisseur de pilote vulnérable ;
  • -ps - modifie l'objet processus du ProcessID donné, en abaissant toutes les protections ;
  • -pse - lance un programme en tant que ProtectedProcessLight-AntiMalware (PPL) ;
  • -psw - lance un programme en tant que ProtectedProcessLight-WinTcb (PPL) ;
  • -pho - ouvre un processus arbitraire avec un accès complet
    • -pht - ouvre également tous les threads de ce processus avec un accès complet
    • -phc - ligne de commande (processus enfant) pour hériter du flag, par défaut powershell
    • -phe - démarre également le processus enfant en tant que ppl
  • -dmp - dump la mémoire virtuelle du processus donné ;
  • -dse - écrit une valeur définie par l'utilisateur dans les flags d'état DSE du système ;
  • -map - mappe un pilote dans le noyau et exécute son point d'entrée ; cette commande a les dépendances listées ci-dessous ;
    • -scv version - optionnel, sélectionne la version du shellcode, par défaut 1 ;
    • -drvn name - nom de l'objet pilote (valide uniquement pour la version 3 du shellcode) ;
    • -drvr name - optionnel, nom de la clé de registre du pilote (valide uniquement pour la version 3 du shellcode).

Exemple :

  • kdu -ps 1234
  • kdu -map c:\driverless\mysuperhack.sys
  • kdu -dmp 666
  • kdu -prv 1 -ps 1234
  • kdu -prv 1 -map c:\driverless\mysuperhack.sys
  • kdu -prv 6 -scv 3 -drvn DrvObj -map c:\install\e3600bm.sys
  • kdu -prv 6 -scv 3 -drvn edrv -drvr e3600bl -map c:\install\e3600bl.sys
  • kdu -dse 0
  • kdu -dse 6
  • kdu -pse "C:\Windows\System32\notepad.exe C:\TEMP\words.txt"
  • kdu -psw "C:\Windows\System32\cmd.exe"
  • kdu -pho 1234 -pht -phe 3
  • kdu -listcsv "c:\kdu\out.csv"

Exécution sur Windows 11 24H2*

Exécution sur Windows 10 20H2*

Compilé et exécuté sur Windows 8.1*

Exécution sur Windows 7 SP1 entièrement patché (version précompilée)*

Exécution sur Windows 10 19H2 (version précompilée, SecureBoot activé)*

La plupart des captures d'écran proviennent de la version 1.0X.

Limitations de la commande -map

En raison du mode de chargement inhabituel qui n'implique pas le chargeur de noyau standard, mais utilise l'écrasement de modules déjà chargés par du shellcode, il existe certaines limitations :

  • Les pilotes chargés DOIVENT ÊTRE spécialement conçus pour fonctionner en mode « driverless » ;

Cela signifie que vous ne pouvez pas utiliser les paramètres spécifiés dans votre DriverEntry car ils ne seront pas valides. Cela signifie également que vous ne pouvez pas charger n'importe quel pilote, mais uniquement des pilotes spécialement conçus, ou vous devez modifier les routines du shellcode.

  • Pas de prise en charge SEH pour les pilotes cibles ;

Il n'y a pas de code SEH en x64. À la place, vous disposez d'une table de régions try/except/finally décrite par un pointeur dans l'en-tête PE. En cas d'exception, cela peut entraîner un BSOD.

  • Pas de déchargement de pilote ;

Le code mappé ne peut pas se décharger lui-même ; cependant, vous pouvez libérer toutes les ressources allouées par votre code mappé. DRIVER_OBJECT->DriverUnload doit être défini à NULL.

  • Seul l'import ntoskrnl est résolu, tout le reste est à votre charge ;

Si votre projet nécessite une autre dépendance de module, vous devez réécrire cette partie du chargeur.

  • Plusieurs primitives Windows sont interdites d'utilisation par du code dynamique par PatchGuard.

En raison du mode de chargement inhabituel, le pilote mappé ne sera pas dans PsLoadedModulesList. Cela signifie que tout callback enregistré par un tel code aura son handler situé en mémoire en dehors de cette liste. PatchGuard peut le détecter et faire planter le système.

En général, si vous voulez savoir ce que vous ne devez pas faire en mode noyau, consultez https://github.com/hfiref0x/KDU/tree/master/Source/Examples/BadRkDemo qui contient quelques exemples de choses interdites.

Note sur les traces du noyau

Cet outil ne modifie pas (et ne modifiera pas à l'avenir) les structures internes de Windows MmUnloadedDrivers et/ou PiDDBCacheTable. En effet :

  • KDU n'est pas conçu pour contourner des logiciels de sécurité tiers ou divers logiciels douteux (par exemple les anti-triches) ;
  • Ces données peuvent être une cible pour la protection PatchGuard dans la prochaine mise à jour majeure de Windows 10.

Vous l'utilisez à vos propres risques. Certains antivirus paresseux peuvent signaler cet outil comme hacktool/malware.

Fournisseurs pris en charge

Liste complète incluant toutes les métadonnées disponibles ici :

  • https://github.com/hfiref0x/KDU/blob/master/Help/providers.md

D'autres fournisseurs pourront être ajoutés à l'avenir.

Fonctionnement

Il utilise des pilotes connus comme vulnérables (ou des wormholes par conception) provenant de logiciels légitimes pour accéder à la mémoire arbitraire du noyau avec des primitives de lecture/écriture.

Selon la commande, KDU fonctionnera soit comme TDL/DSEFix, soit modifiera les objets processus en mode noyau (EPROCESS).

Télécharger l’outil