Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
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.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Tools/GitHubGitHub/lleon1435/kernel_vadinjector
IDS/IPS-UmgehungShellcodePost-ExploitationRed TeamingPayload-EntwicklungAdversarial-Angriff
GitHublleon1435/kernel_vadinjector

Kernel_VADInjector

Windows 10 DLL-Injektor über Treiber, der VAD nutzt und den geladenen Treiber versteckt

Repository anzeigen
5412vor 2 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Driver DLL Injector

Driver DLL Injector Beschreibung

Driver DLL Injector ist ein leistungsstarkes Tool, mit dem Benutzer Treiber ihrer Wahl mit ihrem bevorzugten Mapper laden können. Durch die Nutzung der Fähigkeiten eines Laders für unsignierte Treiber wie KDmapper wurde dieser Injektor für Windows 10 2004 x64-Prozesse entwickelt und getestet.

Treiberteil:

Der Treiber hookt eine Patch-Guard-sichere Funktion namens xKdEnumerateDebuggingDevices zur Kommunikation mit unserem Usermode-Prozess. Diese Methode wird von gängigen Anti-Cheat-Systemen stark erkannt. Deshalb gehen wir einen Schritt weiter und fangen einen Usermode-Thread im Kernel, um zu kommunizieren und die ursprüngliche Funktionsadresse wiederherzustellen. Dadurch werden Funktionsintegritätsprüfungen umgangen.

Der Treiber führt Folgendes aus, um zurückgelassene Spuren zu verbergen:

  • VAD-Manipulation: Der Treiber allokiert strategisch Speicher hinter dem „Thread-Stack“, indem er undokumentierte Virtual Address Descriptor (VAD)-Funktionen wie MiInsertChange und MiAllocVad nutzt, die nicht allgemein bekannt sind. Sobald der VAD allokiert und die DLL erfolgreich geladen ist, entfernt der Treiber den VAD aus dem VAD-Baum.

  • PTE-Manipulation: Um Prüfungen von NtQueryVirtualMemory zu umgehen, manipuliert der Treiber die Page Table Entries (PTEs), um die vom VAD allokierten Seiten ausführbar zu machen. Durch die Modifikation der PTEs stellt der Treiber sicher, dass der VAD nicht mit gesetztem ausführbarem (X) Bit aktualisiert wird, wodurch mögliche Einschränkungen umgangen werden.

  • Löschen von PiDDBCacheTable, MmUnloadedDrivers (Hash-Bucket-Liste).

  • Abhängig davon, welchen Manual Mapper du für den Treiber verwendest, musst du auch große Pools berücksichtigen.

Usermode-Teil:

Der Usermode-Prozess nutzt das Discord-Overlay, um die main-Funktion unserer DLL aufzurufen.

Der Usermode-Prozess führt Folgendes aus:

  • „Verbindet“ sich mit der gehookten Kernel-Funktion und liefert alle unsere Adressen und Nachrichtencodes.
  • Scannt den Prozess nach dem Discord-Overlay; wenn es gefunden wird, richtet es Shellcode ein und allokiert einen VAD.
  • Richtet Shellcode zum Aufruf der DLL-main ein und dann
  • Sobald die DLL injiziert ist, sendet der Usermode-Prozess eine Nachricht an den Treiber: „We're done!“ und der Treiber entfernt alle zurückgelassenen Spuren.

Um den Driver DLL Injector zu verwenden, führe die folgenden Schritte aus:

root@kitploit:~
1. Wähle einen kompatiblen Mapper aus und installiere ihn, z. B. KDmapper.
2. Kompiliere oder baue das Driver DLL Injector-Projekt.
3. Lade den Treiber mit dem ausgewählten Mapper.
4. Starte die Testanwendung (mit aktiviertem Discord-Overlay).
5. Starte die Usermode-Anwendung und warte auf das Hello-World-Meldungsfeld.

Erkennungsvektoren

  • Page Table Walks, Stack Walks usw.
  • WDF listet den geladenen Treiber auf, da er nicht wie MmUnLoadedDrivers gelöscht wird.
  • Der Usermode-Thread verbringt eine enorme Menge an CPU-Zyklen im Kernel-Modus. Überprüfe im Task-Manager die „Kernel-Zeit“.

Aufgetretene Probleme

Bei der Entwicklung dieses Projekts gab es einige Hindernisse. Dazu gehörten:

  • Absturz der DLL, weil die DLL-Eigenschaften falsch eingerichtet waren. Das Setzen von /sdl-, /GS- und der Laufzeitbibliothek auf /MT behob meine Absturzprobleme.
  • Das Mappen des Treibers mit einem Mapper verursachte einen KMODE_EXCEPTION-BSOD; behoben durch Setzen der Treibereigenschaft /GS-.
  • Das Discord-Overlay braucht Zeit zum Initialisieren. Wenn du versuchst zu injizieren, bevor das Overlay initialisiert ist, stürzt du wegen NULL-Zeigern ab.

Danksagungen

ModMap - für die Demonstration der VAD-Manipulation

SkCrypt - für die Verschlüsselung

Stealthy Kernel Mode Injector - für die Treiberbasis

Poseidon - für das Fangen des Usermode-Threads im Kernel-Modus

FACE INJECTOR - für den Shellcode

Tool herunterladen