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
masm32-kernel-programming — masm32-Kernelprogrammierung, Treiber, Tutorials, Beispiele und Tools (Credits Four-F) | Kitploit
Tools/GitHubGitHub/therealdreg/masm32-kernel-programming
Reverse EngineeringMalware-AnalyseBinäranalyseLernen & BildungKuratierte RessourcenLabs & Praxis
GitHubtherealdreg/masm32-kernel-programming

masm32-kernel-programming

masm32-Kernelprogrammierung, Treiber, Tutorials, Beispiele und Tools (Credits Four-F)

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Repository anzeigenWebseite
1301822vor 3 JahrenVon Kitploit geprüft

masm32-kernel-programming

Dregs Repo für seine eigenen Zwecke

masm32-Kernelprogrammierung, Treiber, Tutorials, Beispiele und Werkzeuge (Dank an Four-F)

Anleitung

  • dieses Repo herunterladen/klonen
  • masm32v11r_install.exe ausführen
  • auf das Installationsbild (Erde) klicken
  • masm32 in C:\ installieren
  • Ich empfehle, die folgenden Einträge zur PATH-Umgebungsvariable hinzuzufügen:
    • C:\masm32\bin
    • C:\masm32
  • Inhalt von KmdKit18\include\ nach C:\masm32\include\ kopieren
  • Inhalt von KmdKit18\macros\ nach C:\masm32\macros\ kopieren
  • Inhalt von KmdKit18\lib\ nach C:\masm32\lib\ kopieren

Einfaches Beispiel

  • beeper.asm nach C:\ kopieren
  • beeper.bat nach C:\ kopieren
  • beeper.bat ausführen

Zu diesem Zeitpunkt wird eine .sys-Datei in C:\ erstellt.

So laden/entladen Sie einen Treiber

w2k_load.exe - bester Weg

Treiber laden:

  • w2k_load.exe C:\beeper.sys

w2k_load.exe oder osrloader.exe melden beim Laden von beeper.sys einen Fehler – ignorieren Sie ihn einfach.

Dieser Fehler wird vom Treibercode selbst erzeugt, wenn er seine eigene Ausführung beendet (mit diesem Trick braucht man ihn nicht zu entladen).

mov eax, STATUS_DEVICE_CONFIGURATION_ERROR
ret

Wenn beep.sys also korrekt in den Kernel geladen wurde, sollten Sie einen Piepton aus Ihren Lautsprechern hören (der Treibercode erzeugt einen Piepton).

Wenn Sie einen Treiber entladen müssen, verwenden Sie:

  • w2k_load.exe PATH_SYS_FILE /unload

Ich habe w2k_load.exe von Sven B. Schreiber modifiziert, damit es von Windows 2000 bis Windows 10 funktioniert (Manifest...).

osrloader

Entpacken Sie osrloaderv30.zip und verwenden Sie dieses GUI-Programm:

  • Wählen Sie eine .sys-Datei aus (Treiberpfad)
  • Dienst registrieren
  • Dienst starten

Debug-Meldungen ohne windbg anzeigen

Verwenden Sie für ältere Windows-Versionen einfach das in diesem Repo enthaltene DbgView.exe. Übrigens habe ich es modifiziert (Manifest...).

Verwenden Sie für moderne Windows-Versionen die neueste dbgview.exe von der Sysinternals-Website und sehen Sie sich dies zur Fehlerbehebung an:

  • https://stackoverflow.com/questions/12494300/no-output-from-debugview
  • http://msdn.microsoft.com/en-us/library/windows/hardware/ff551519(v=vs.85).aspx
  • https://learn.microsoft.com/en-us/sysinternals/downloads/debugview

Nächste Schritte

Lesen Sie die .pdf-Dateien in diesem Repo und schauen Sie sich die Beispiele im Verzeichnis KmdKit18/examples an.

WARNUNG: Der gesamte ASM-Quellcode befindet sich in .bat-Dateien (Batch- und ASM-Code gemischt in derselben Datei).

Beispiel mit advanced\FindShadowTable\FindShadowTable.bat

;@echo off
;goto make

ASM DRIVER CODE GOES HERE

:make
set drv=FindShadowTable
\masm32\bin\ml /nologo /c /coff %drv%.bat
\masm32\bin\link /nologo /driver /base:0x10000 /align:32 /out:%drv%.sys /subsystem:native %drv%.obj
del %drv%.obj
echo.
pause

Diese Datei enthält BATCH-Code, der eine .sys erzeugt, sowie den eigentlichen Treiberquellcode. Ja, es ist sehr knifflig – Build-Skript und Quellcode sind zusammen.

advanced/FindShadowTable

advanced/FindShadowTable

Dies ist ein Beispiel, wie man ServiceDescriptorTableShadow findet.

Es scannt lediglich Threads mit der ID 80h-400h, um einen Thread zu finden, dessen KTHREAD.ServiceTable ungleich KeServiceDescriptorTable ist. Wenn ein solcher Thread gefunden wird, enthält sein KTHREAD.ServiceTable die Adresse von ServiceDescriptorTableShadow.

Beobachten Sie die Debug-Ausgabe des Treibers mit DbgView (www.sysinternals.com) oder verwenden Sie SoftICE.

Getestet unter: Windows 2000, XP und Server 2003.

advanced/KbdSpy

advanced/KbdSpy

Dies ist ein Beispiel für einen einfachen Legacy- (Nicht-PnP-) PS/2-Tastaturfiltertreiber. WARNUNG: Sie werden ihn nicht an den USB-Tastaturstack anhängen können.

Getestet unter: Windows 2000, XP und Server 2003.

advanced/MouSpy

advanced/MouSpy

Four-F, [email protected] Diese Makrodateien stammen aus meinem Paket cocomac.

Dies ist ein Beispiel für einen einfachen Legacy- (Nicht-PnP-) PS/2-Mausfiltertreiber. WARNUNG: Sie werden ihn nicht an den USB-Mausstack anhängen können.

Getestet unter: Windows 2000, XP und Server 2003.

advanced/SecureDevices

advanced/SecureDevices

Dies ist ein Beispiel, wie man bestimmte Sicherheitseinstellungen auf ein benanntes Geräteobjekt anwendet, indem man IoCreateDeviceSecure anstelle von IoCreateDevice aufruft.

Da die Routine IoCreateDeviceSecure nicht Teil des Betriebssystems ist, binden wir wdmsec.lib ein, die alle benötigten Routinen enthält.

Die wdmsec.lib-Bibliothek, die Sie hier finden, ist nicht die mit dem DDK gelieferte. Ich musste sie neu erstellen, um ihre Größe zu reduzieren und nicht benötigte Member zu entfernen.

basic/FileWorks

basic/FileWorks

Dies ist ein Beispiel, wie man eine Datei erstellt, in sie schreibt, aus ihr liest und sie löscht.

Verwenden Sie KmdManager, um den Treiber zu registrieren/deregistrieren und zu starten. Beobachten Sie seine Debug-Ausgabe mit DbgView (www.sysinternals.com) oder verwenden Sie SoftICE.

Getestet unter: Windows 2000, XP und Server 2003.

basic/HiddenDriver

basic/HiddenDriver

Dies ist ein Beispiel, wie man den Treiber in Ressourcen verpackt.

Getestet unter: Windows 2000, XP und Server 2003.

basic/IsSafeBootMode

basic/IsSafeBootMode

So erfahren Sie, ob das System im abgesicherten Modus läuft oder nicht.

Verwenden Sie KmdManager, um den Treiber zu registrieren/deregistrieren und zu starten. Beobachten Sie seine Debug-Ausgabe mit DbgView (www.sysinternals.com) oder verwenden Sie SoftICE.

Getestet unter: Windows 2000, XP und Server 2003.

basic/MemoryWorks/LookasideList

basic/MemoryWorks/LookasideList

Dies ist ein Beispiel, wie man eine Lookaside-Liste und eine doppelt verknüpfte Liste verwendet, um die aus der Lookaside-Liste zugewiesenen Speicherblöcke zu verwalten.

Verwenden Sie KmdManager, um den Treiber zu registrieren/deregistrieren und zu starten/stoppen. Beobachten Sie seine Debug-Ausgabe mit DbgView (www.sysinternals.com) oder verwenden Sie SoftICE.

Getestet unter: Windows 2000, XP und Server 2003.

basic/MemoryWorks/seh

basic/MemoryWorks/seh

Dies ist ein Beispiel, wie man Ausnahmen mit SEH behandelt. Aber denken Sie daran. MAN KANN NICHT ALLE AUSNAHMEN MIT SEH IM KERNELMODUS BEHANDELN!

Verwenden Sie KmdManager, um den Treiber zu registrieren/deregistrieren und zu starten/stoppen. Beobachten Sie seine Debug-Ausgabe mit DbgView (www.sysinternals.com) oder verwenden Sie SoftICE.

Getestet unter: Windows 2000, XP und Server 2003.

basic/MemoryWorks/SharedSection

basic/MemoryWorks/SharedSection

Dies ist ein Beispiel, wie man ein benanntes Section-Objekt verwendet, um Speicher zwischen einem Benutzermodusprozess und einem Kernelmodus-Treiber zu teilen.

Tool herunterladen