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
access_updated — Kernelmodus-Syscall-Wrapper mit Zydis-basierter dynamischer Musterfindung für Windows 10/11 | Kitploit
Tools/GitHubGitHub/gmh5225/access_updated
Privilege EscalationExploitationReverse EngineeringPost-ExploitationBinäranalyse
GitHubgmh5225/access_updated

access_updated

Kernelmodus-Syscall-Wrapper mit Zydis-basierter dynamischer Musterfindung für Windows 10/11

Repository anzeigen
2140vor 9 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Singular Access

Aktualisierter Fork von btbd/access mit Zydis-basiertem dynamischen Pattern-Finding für Windows 10/11-Kompatibilität

Ein Syscall-Wrapper im Kernel-Modus, der privilegierte Prozessoperationen ohne erforderliche Handles ermöglicht. Verwendet Pointer-Hooking von xKdEnumerateDebuggingDevices für die Kernel-Usermode-Kommunikation.

Features

  • ✅ Keine fest codierten Offsets - Alle Kernel-Funktionen/Offsets werden zur Laufzeit über den Zydis-Disassembler ermittelt
  • ✅ Versionsunabhängig - Funktioniert unter Windows 10 (1607+) und Windows 11 (bis 24H2)
  • ✅ Kein SEH - Sicherer Betrieb ohne Structured Exception Handling
  • ✅ Handle-frei - PROCESS_ALL_ACCESS-Operationen ohne Erstellen echter Handles
  • ✅ Minimaler Fußabdruck - Sauberer .data-Abschnitt-Hook, keine Inline-Patches
  • ✅ Open Source - Vollständiger Quellcode zu Bildungszwecken verfügbar

Neuerungen

Dieser Fork modernisiert den ursprünglichen Treiber mit:

  1. Zydis-Integration - Dynamische Disassemblierung ersetzt spröde Byte-Muster
  2. Multi-Versions-Unterstützung - Eine einzelne Binärdatei funktioniert von Windows 10 1607 bis Windows 11 24H2
  3. Saubere Protokollierung - Informative Debug-Ausgaben mit Präfix [singular-access]
  4. Bessere Zuverlässigkeit - Pattern-Matching auf Befehlsebene anstelle von Rohbytes

So funktioniert es

Dynamisches Pattern-Finding

Der Treiber verwendet Zydis, um Kernel-Funktionen zu disassemblieren und Folgendes zu extrahieren:

Hook-Mechanismus

root@kitploit:~
User Mode (DLL)
    ↓ syscall with SYSCALL_UNIQUE
Kernel Hook (xKdEnumerateDebuggingDevices pointer)
    ↓ validates & dispatches
Kernel Syscall Handler
    ↓ performs privileged operation
Return to User Mode

Schnellstart

Voraussetzungen

  • Visual Studio 2022 mit C++-Desktopentwicklung
  • Windows Driver Kit (WDK) 10
  • Testsignierung aktiviert oder Kernel-Debugging-Modus

Erstellen

root@kitploit:~
cd Driver
msbuild Driver.vcxproj /p:Configuration=Release /p:Platform=x64
link_driver.bat

Ausgabe: Driver\x64\Release\Driver.sys

Laden

Option 1: kdmapper (für Tests empfohlen)

root@kitploit:~
kdmapper.exe Driver.sys

Option 2: Dienst

root@kitploit:~
sc create singular_access type= kernel binPath= C:\path\to\Driver.sys
sc start singular_access

Erwartete Ausgabe (DebugView)

root@kitploit:~
[singular-access] Initializing driver...
[singular-access] Windows build: 26200
[singular-access] ntoskrnl.exe base: FFFFF80000000000
[singular-access] [*] Searching for PsResumeThread in PsRegisterPicoProvider...
[singular-access] [+] Found PsResumeThread at FFFFF803AAE331C0
[singular-access] [*] Searching for PsSuspendThread in PsRegisterPicoProvider...
[singular-access] [+] Found PsSuspendThread at FFFFF803AADFA1A0
[singular-access] [+] Found PreviousMode offset: 0x232
[singular-access] Searching for xKdEnumerateDebuggingDevices pointer...
[singular-access] xKdEnumerateDebuggingDevices pointer: FFFFF803AB200B68
[singular-access] Installing hook...
[singular-access] Driver initialized successfully

Unterstützte Syscalls

Der Treiber fängt folgende Syscalls ab und verarbeitet sie:

Prozessoperationen

  • NtOpenProcess
  • NtSuspendProcess / NtResumeProcess
  • NtQueryInformationProcess / NtSetInformationProcess
  • NtQuerySystemInformationEx
  • NtFlushInstructionCache

Speicheroperationen

  • NtAllocateVirtualMemory / NtFreeVirtualMemory
  • NtReadVirtualMemory / NtWriteVirtualMemory
  • NtProtectVirtualMemory
  • NtQueryVirtualMemory
  • NtLockVirtualMemory / NtUnlockVirtualMemory
  • NtFlushVirtualMemory

Threadoperationen

  • NtOpenThread
  • NtSuspendThread / NtResumeThread
  • NtGetContextThread / NtSetContextThread
  • NtQueryInformationThread / NtSetInformationThread

Synchronisierung

  • NtWaitForSingleObject

Versionskompatibilität

Getestet und als funktionierend bestätigt:

Technische Details

Beispiele für Zydis-Muster

PsResumeThread finden:

root@kitploit:~
lea rcx, PsResumeThread    ; Load function address
mov [rdx+40h], rcx         ; Store in PICO provider table

xKdEnumerateDebuggingDevices finden (Win11 24H2):

root@kitploit:~
mov rax, cs:off_140E00B68  ; Pattern: 48 8B 05 ? ? ? ? 74 ? E8
                           ; Resolve RIP-relative pointer

Ermitteln des PreviousMode-Offsets:

root@kitploit:~
mov rax, gs:188h           ; Get KTHREAD
movzx eax, byte ptr [rax+232h]  ; Extract PreviousMode
ret

Projektstruktur

root@kitploit:~
Driver/
├── main.c              # Entry point, initialization, hook installation
├── core.c              # Syscall handlers
├── util.c              # Pattern scanning, memory utilities
├── zydis_util.c        # Zydis-based pattern finders
├── zydis_util.h        # Zydis function declarations
├── syscall.h           # Syscall definitions
├── stdafx.h            # Precompiled header
└── Zydis/              # Zydis disassembler library

Fehlerbehebung

Der Treiber lässt sich nicht laden:

  • Testsignierung aktivieren: bcdedit /set testsigning on
  • DebugView auf Fehlermeldungen prüfen
  • Sicherstellen, dass das WDK korrekt installiert ist

Muster nicht gefunden:

  • Windows-Buildnummer in der DebugView-Ausgabe prüfen
  • Möglicherweise muss für den jeweiligen Build ein neues Muster hinzugefügt werden
  • Ein Issue mit Buildnummer und Debug-Ausgabe eröffnen

Linkerfehler:

  • Sicherstellen, dass alle Zydis-Dateien im Projekt enthalten sind
  • Überprüfen, dass ZYDIS_STATIC_BUILD und ZYCORE_STATIC_BUILD definiert sind
  • Prüfen, dass link_driver.bat die korrekten WDK-Bibliothekspfade verwendet

Entwicklung

Hinzufügen neuer Syscalls

  1. Syscall-Enum zu syscall.h hinzufügen
  2. Handler in core.c mit dem Makro HANDLE_SYSCALL hinzufügen
  3. Treiber neu erstellen

Hinzufügen neuer Windows-Versionen

  1. Neuen Build in IDA/Ghidra analysieren
  2. Muster für den xKdEnumerateDebuggingDevices-Pointer finden
  3. Muster zu find_kd_enum_debug_devices_ptr() in main.c hinzufügen
  4. Testen und verifizieren

Danksagungen

  • Ursprünglicher Autor: btbd - Ursprünglicher Access-Treiber
  • Zydis: zyantific - Schneller und leichtgewichtiger x86/x86-64-Disassembler
  • Aktualisiert von: Singular - Zydis-Integration und Multi-Version-Unterstützung

Lizenz

Dieses Projekt verwendet dieselbe Lizenz wie das ursprüngliche Repository btbd/access.

Haftungsausschluss

Diese Software dient ausschließlich zu Bildungs- und Forschungszwecken. Verwenden Sie sie verantwortungsvoll und nur auf Systemen, die Ihnen gehören oder für die Sie eine ausdrückliche Genehmigung zum Testen haben.

Tool herunterladen
ZielMethodeOffset/Adresse
KTHREAD.PreviousModeDisassembliere ExGetPreviousMode0x232 (alle Versionen)
PsResumeThreadDisassembliere PsRegisterPicoProviderRIP-relatives LEA bei +0x40
PsSuspendThreadDisassembliere PsRegisterPicoProviderRIP-relatives LEA bei +0x50
xKdEnumerateDebuggingDevicesPattern-Scan im .text-AbschnittVersionsspezifische Muster
OS-VersionBuildStatus
Windows 10 160714393✅
Windows 10 170916299✅
Windows 10 180917763✅
Windows 10 200419041✅
Windows 11 21H222000✅
Windows 11 22H222621✅
Windows 11 24H226100-26200✅