Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
KDU — Windows-Kernel-Treiber-Dienstprogramm, das anfällige signierte Treiber missbraucht (BYOVD), um DSE zu umgehen, unsignierte Treiber zu laden, geschützte Prozesse zu übernehmen und Prozessspeicher zu dumpen. | Kitploit
Tools/GitHubGitHub/hfiref0x/kdu
DefensivwerkzeugePrivilege EscalationPersistenzmechanismenSchwachstellenanalyseExploitationReverse EngineeringShellcodeMalware-AnalyseRed TeamingPayload-EntwicklungBinary-Exploitation
2.8k55282vor 8 TagenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
GitHub
hfiref0x/kdu

KDU

Windows-Kernel-Treiber-Dienstprogramm, das anfällige signierte Treiber missbraucht (BYOVD), um DSE zu umgehen, unsignierte Treiber zu laden, geschützte Prozesse zu übernehmen und Prozessspeicher zu dumpen.

Repository anzeigen
Teilen

KDU

Build status Visitors

Kernel Driver Utility

Systemanforderungen

  • x64 Windows 7/8/8.1/10/11;
  • Administratorrechte sind erforderlich.

Zweck und Funktionen

Der Zweck dieses Tools ist es, eine einfache Möglichkeit zu bieten, den Windows-Kernel und seine Komponenten zu untersuchen, ohne umfangreiche Einrichtung oder einen lokalen Debugger zu benötigen. Es bietet:

  • Protected Process Hijacking über beliebige PPL oder beliebige Prozess-Handles, beides durch Modifikation des EPROCESS-Objekts;
  • Driver Signature Enforcement Overrider (ähnlich wie DSEFix);
  • Driver Loader zum Umgehen der Driver Signature Enforcement (ähnlich wie TDL/Stryker);
  • Unterstützung für verschiedene verwundbare Treiber, die als Funktions-"Provider" verwendet werden.

Verwendung

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 - listet derzeit verfügbare Provider auf;
  • -listcsv [file] - listet verfügbare Provider im CSV-Format auf, optional mit Ausgabe in eine Datei;
  • -diag - führt Systemdiagnosen zur Fehlerbehebung aus;
  • -prv - optional, wählt den verwundbaren Treiber-Provider aus;
  • -ps - modifiziert das Prozessobjekt der angegebenen ProcessID und stuft jegliche Schutzmaßnahmen herab;
  • -pse - startet ein Programm als ProtectedProcessLight-AntiMalware (PPL);
  • -psw - startet ein Programm als ProtectedProcessLight-WinTcb (PPL);
  • -pho - öffnet einen beliebigen Prozess mit vollem Zugriff
    • -pht - öffnet zusätzlich alle Threads in diesem Prozess mit vollem Zugriff
    • -phc - Kommandozeile (Kindprozess), die das Flag erben soll, standardmäßig powershell
    • -phe - startet den Kindprozess zusätzlich als PPL
  • -dmp - dumpt den virtuellen Speicher des angegebenen Prozesses;
  • -dse - schreibt einen benutzerdefinierten Wert in die DSE-Statusflags des Systems;
  • -map - mappt einen Treiber in den Kernel und führt dessen Einstiegspunkt aus; dieser Befehl hat die unten aufgeführten Abhängigkeiten;
    • -scv version - optional, wählt die Shellcode-Version, Standard ist 1;
    • -drvn name - Name des Treiberobjekts (nur gültig für Shellcode-Version 3);
    • -drvr name - optional, Name des Treiber-Registry-Schlüssels (nur gültig für Shellcode-Version 3).

Beispiel:

  • 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"

Ausführung unter Windows 11 24H2*

Ausführung unter Windows 10 20H2*

Kompiliert und ausgeführt unter Windows 8.1*

Ausführung unter Windows 7 SP1 vollständig gepatcht (vorkompilierte Version)*

Ausführung unter Windows 10 19H2 (vorkompilierte Version, SecureBoot aktiviert)*

Die meisten Screenshots stammen aus Version 1.0X.

Einschränkungen des -map-Befehls

Aufgrund der ungewöhnlichen Ladeart, die nicht den Standard-Kernel-Loader verwendet, sondern bereits geladene Module mit Shellcode überschreibt, gibt es einige Einschränkungen:

  • Geladene Treiber MÜSSEN speziell dafür entwickelt sein, als "driverless" zu laufen;

Das bedeutet, dass Sie keine Parameter verwenden können, die in Ihrem DriverEntry angegeben sind, da diese nicht gültig sein werden. Das bedeutet auch, dass Sie nicht irgendeinen Treiber laden können, sondern nur speziell dafür entwickelte, oder Sie müssen die Shellcode-Routinen anpassen.

  • Keine SEH-Unterstützung für Zieltreiber;

Es gibt keinen SEH-Code in x64. Stattdessen gibt es eine Tabelle von try/except/finally-Bereichen, die durch einen Zeiger im PE-Header beschrieben werden. Wenn eine Ausnahme auftritt, kann dies zu einem BSOD führen.

  • Kein Entladen von Treibern;

Gemappter Code kann sich nicht selbst entladen; Sie können jedoch alle von Ihrem gemappten Code zugewiesenen Ressourcen freigeben. DRIVER_OBJECT->DriverUnload sollte auf NULL gesetzt werden.

  • Nur ntoskrnl-Import wird aufgelöst, alles andere liegt bei Ihnen;

Wenn Ihr Projekt eine andere Modulabhängigkeit benötigt, müssen Sie diesen Teil des Loaders neu schreiben.

  • Mehrere Windows-Primitiven sind durch PatchGuard für die Verwendung durch dynamischen Code gesperrt.

Aufgrund der ungewöhnlichen Ladeart wird der gemappte Treiber nicht in PsLoadedModulesList enthalten sein. Das bedeutet, dass jeder von solchem Code registrierte Callback seinen Handler im Speicher außerhalb dieser Liste haben wird. PatchGuard kann dies erkennen und das System zum Absturz bringen.

Im Allgemeinen, wenn Sie wissen möchten, was Sie im Kernel nicht tun sollten, schauen Sie sich https://github.com/hfiref0x/KDU/tree/master/Source/Examples/BadRkDemo an, das einige Beispiele für verbotene Dinge enthält.

Hinweis zu Kernel-Traces

Dieses Tool ändert nicht (und wird in Zukunft nicht ändern) die internen Windows-Strukturen MmUnloadedDrivers und/oder PiDDBCacheTable. Das liegt daran:

  • KDU ist nicht dafür konzipiert, Sicherheitssoftware von Drittanbietern oder verschiedene dubiose Software (z. B. Anti-Cheats) zu umgehen;
  • Diese Daten können in einem zukünftigen großen Windows 10-Update ein Ziel für den PatchGuard-Schutz sein.

Sie verwenden es auf eigenes Risiko. Einige träge AV-Programme könnten dieses Tool als Hacktool/Malware kennzeichnen.

Unterstützte Provider

Vollständige Liste inklusive aller verfügbaren Metadaten hier:

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

Weitere Provider könnten in Zukunft hinzugefügt werden.

Funktionsweise

Es verwendet bekannte verwundbare (oder von Natur aus als Wormhole konzipierte) Treiber aus legitimer Software, um mit Lese-/Schreibprimitiven auf beliebigen Kernel-Speicher zuzugreifen.

Je nach Befehl arbeitet KDU entweder als TDL/DSEFix oder modifiziert Kernel-Modus-Prozessobjekte (EPROCESS).

Im -map-Modus verwendet KDU für die meisten verfügbaren Provider standardmäßig einen von Drittanbietern signierten Treiber von SysInternals Process Explorer und kapert ihn, indem ein kleiner Loader-Shellcode in dessen IRP_MJ_DEVICE_CONTROL-Routine platziert wird.

Shellcode-Versionen

Tool herunterladen