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
DIRT — Outil de reconnaissance initiale des pilotes | Kitploit
Outils/GitHubGitHub/jthuraisamy/dirt
ReconnaissanceAnalyse des VulnérabilitésAnalyse de Binaires
GitHubjthuraisamy/dirt

DIRT

Outil de reconnaissance initiale des pilotes

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

DIRT : Outil de Reconnaissance Initiale des Pilotes

J'écris cet outil pour apprendre le C++ et obtenir une évaluation initiale des pilotes installés sur un système Windows (par exemple, les images maîtres développées par les OEM ou les entreprises). Il est censé aider à la sélection des cibles, trouver des vulnérabilités évidentes, et apporter une aide à l'analyse binaire approfondie. Actuellement instable, en cours de développement actif.

Fonctionnalités principales

  • Liste des pilotes en mode noyau avec lesquels les utilisateurs non-administrateurs peuvent interagir via DeviceIoControl.
    • Cela peut être utile pour réduire le champ des pilotes pouvant potentiellement être utilisés pour une élévation de privilèges locaux (LPE).
  • Récupération des noms d'entreprise associés aux pilotes pour déterminer la propriété.
    • Cela peut être utile dans la sélection des cibles pour séparer les pilotes tiers des pilotes Microsoft.
  • Résolution de la routine DispatchDeviceControl utilisée pour traiter les requêtes de DeviceIoControl.
    • Cela facilite la recherche de la fonction dans IDA (par rapport à l'utilisation d'heuristiques en analyse statique).
    • La fonction peut être analysée pour énumérer les codes IOCTL et effectuer une analyse de surface d'attaque.
  • Énumération des codes IOCTL pris en charge par DispatchDeviceControl.
    • Il pourrait y avoir une opportunité d'exécution symbolique comme ceci, mais on ne sait pas à quel point cela peut être robuste.
  • Énumération des pilotes en mode utilisateur qui appellent un pilote en mode noyau donné.

Fonctionnalités secondaires

  • Modes CLI et GUI.
  • Formats de sortie : JSON, CSV et texte lisible.

Outils alternatifs

J'ai utilisé une combinaison de DeviceTree, WinObjEx64 et WinDbg pour ces cas d'usage. C'est un processus manuel fastidieux qui ne passe pas facilement à l'échelle, donc DIRT tente simplement de le rendre plus pratique.

Compilation

Cela devrait se compiler avec Visual Studio 2015 ou supérieur.

Utilisation

  1. Activez le mode débogage avec bcdedit -debug on dans une invite de commandes administrative.
  2. Placez kldbgdrv.sys (trouvé avec WinDbg) dans le même répertoire que DIRT.exe.
  3. Exécutez DIRT.exe > output.txt avec des privilèges administratifs.

Les options --lp-only et --no-msft peuvent être utilisées pour filtrer les résultats.

Voici un exemple de sortie pour savoir à quoi s'attendre :

root@kitploit:~
DIRT v0.1.0: Driver Initial Reconnaisance Tool (@Jackson_T)
Repository:  https://github.com/jthuraisamy/DIRT
Compiled on: Aug 22 2018 00:01:04

INFO: Hiding Microsoft drivers (--no-msft).
INFO: Only showing drivers that low-privileged users can interface with (--lp-only).

Capcom: Capcom
Path: C:\Windows\System32\Capcom.sys
DispatchDeviceControl: 0xFFFFF8024C9A0590
Devices: 1
└── \Device\Htsysm72FB (open DACL, 1 symlinks)
    └── \\.\Global\Htsysm72FB

SmbDrvI: SmbDrvI (Synaptics Incorporated)
Path: C:\WINDOWS\System32\drivers\Smb_driver_Intel.sys - Hooked by Wdf01000 (Microsoft Corporation)
DispatchDeviceControl: 0xFFFFF808212C72B0
Devices: 1
└── \Device\SmbDriver (open DACL, 1 symlinks)
    └── \\.\Global\SmbDriver

nvlddmkm: nvlddmkm
Path: C:\Windows\System32\DriverStore\FileRepository\nvlt.inf_amd64_ed3ba3fb30d4dd86\nvlddmkm.sys
DispatchDeviceControl: 0xFFFFF80822D074D0
Devices: 2
├── \Device\NvAdminDevice (open DACL, 1 symlinks)
│   └── \\.\Global\NvAdminDevice
└── \Device\UVMLiteController0x1 (open DACL, 1 symlinks)
    └── \\.\Global\UVMLiteController

Il existe également une sortie CSV disponible en utilisant DIRT::Main::ExportCSV() :

CSV

Auteurs

Jackson Thuraisamy (2018). Le code est largement dérivé du projet WinObjEx64 par @hFireF0X.

Licence

MIT

Télécharger l’outil