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
mora-hwbp — Auf Hardware-Breakpoints (DR0-DR7) basierende, patch-lose User-Mode-Hooking- und Telemetrie-Instrumentierungs-Engine (AMSI, WLDP & ETW-PoC). | Kitploit
Tools/GitHubGitHub/dovughs/mora-hwbp
DefensivwerkzeugeIDS/IPS-UmgehungDebuggerLernen & BildungRed TeamingAdversarial-Angriff
GitHubdovughs/mora-hwbp

mora-hwbp

Auf Hardware-Breakpoints (DR0-DR7) basierende, patch-lose User-Mode-Hooking- und Telemetrie-Instrumentierungs-Engine (AMSI, WLDP & ETW-PoC).

Repository anzeigen
191102vor 2 TagenNoch 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

Mora-HWBP — AMSI-/WLDP-/ETW-Telemetrie-Hooking über Hardware-Breakpoints

Ein Proof-of-Concept (POC) aus der Sicherheitsforschung, der Funktions-Hooking auf Basis von Hardware-Breakpoints (CPU-Debug-Registern) als Alternative zum traditionellen In-Memory-Code-Patching demonstriert.

Zweck & Umfang

Dieses Repository wird ausschließlich für defensive Sicherheitsforschung, Red-Team-/Purple-Team-Ausbildung, Detection-Engineering und akademisches Studium der Windows-Interna veröffentlicht. Es demonstriert, wie ein Angreifer Prozessor-Debug-Register missbrauchen könnte, um Telemetrie im User-Mode zu neutralisieren — und, ebenso wichtig, worauf Verteidiger achten sollten, um solche Techniken zu erkennen. Der Autor ist nicht für jeglichen Missbrauch dieses Codes verantwortlich. Die Verwendung dieser Technik gegen Systeme ohne ausdrückliche Genehmigung ist illegal und verstößt in den meisten Rechtsordnungen gegen die einschlägigen Computerbetrugs- und Missbrauchsgesetze. Setzen Sie dies in keiner Umgebung ein, die Ihnen nicht gehört oder für die Sie keine ausdrückliche schriftliche Testgenehmigung haben.


Inhaltsverzeichnis

  1. Überblick
  2. Hintergrund — Warum Hardware-Breakpoints?
  3. Angegriffene Sicherheitskomponenten
  4. Architektur
  5. Technische Detailanalyse
    • 5.1 Hardware-Breakpoints auf x64
    • 5.2 Layout der Debug-Register (DR0–DR7)
    • 5.3 Der Vectored Exception Handler (VEH)
    • 5.4 Abfanglogik pro Komponente
    • 5.5 Thread-Verwaltung & Hook-Persistenz
  6. Exportierte API
  7. Build-Anweisungen
  8. Injection- & Anwendungsbeispiel
  9. Erkennung & Gegenmaßnahmen (Blue Team)
  10. Bekannte Einschränkungen
  11. Referenzen

Überblick

mora_hwbp.c implementiert eine DLL, die nach dem Laden/Injizieren in einen Zielprozess (z. B. einen PowerShell-Host) vier User-Mode-Funktionen ausschließlich über CPU-Hardware-Breakpoints hookt, die in den architektonischen Debug-Registern (DR0–DR7) jedes Threads im Prozess hinterlegt sind:

RegisterGehookte FunktionModulZweck
DR0AmsiScanBufferamsi.dllAMSI-Inhaltsscan neutralisieren
DR1WldpQueryDynamicCodeTrustwldp.dllWLDP-Vertrauen für dynamischen Code erzwingen (Device Guard / WDAC)
DR2WldpIsClassInApprovedListwldp.dllWLDP-Klassenfreigabe erzwingen (Device Guard / WDAC)
DR3NtTraceEventntdll.dllDen gesamten ETW-Stream im User-Mode abschneiden

Ein prozessweiter Vectored Exception Handler (VEH) empfängt die von den Debug-Registern ausgelösten EXCEPTION_SINGLE_STEP-Fehler (0x80000004), simuliert den erfolgreichen Rückgabepfad der Originalfunktion durch Umschreiben des Exception-Kontexts und setzt die Ausführung fort — all dies ohne ein einziges Byte ausführbaren Speichers zu verändern.

Dies macht die Technik sowohl aus offensiver als auch aus defensiver Sicht besonders interessant:

  • Offensiv umgeht sie EDR-/HIPS-Integritätsprüfungen, die nach modifizierten .text-Abschnitten suchen (klassisches Inline-Hooking, EAT-/IAT-Patching oder Etwp*-Stubbing).
  • Defensiv hinterlassen Hardware-Breakpoints hochgradig charakteristische forensische Artefakte (Inhalte der Debug-Register, Dichte an Single-Step-Exceptions, VEH-Registrierung, Syscall-Muster von GetThreadContext/SetThreadContext), die zur Erkennung genutzt werden können.

Hintergrund — Warum Hardware-Breakpoints?

Traditionelle Hooking-Ansätze im User-Mode — Inline-Detours (5–14-Byte-Überschreibungen), Import Address Table (IAT)-Hooking und Export Address Table (EAT)-Hooking — teilen eine gemeinsame Schwäche: Sie verändern Speicher, den Integritätsscanner und ETW beobachten können.

Moderne AV-/EDR-Produkte implementieren:

  • Speicher-Scans / AMSI-Scans von PowerShell- und .NET-CLR-Puffern;
  • ETW-basierte Telemetrie (Microsoft-Windows-PowerShell, .NET ETW, Threat-Intelligence-Anbieter);
  • Kernel-Callbacks und User-Mode-Integritätsprüfungen, die pageguard/guard-page-Tricks, VirtualProtect-Übergänge zu PAGE_EXECUTE_READWRITE und Abschnitts-Hash-Abweichungen erkennen.

Hardware-Breakpoints umgehen all dies:

  1. Sie sind CPU-Register, kein Speicher — in .text gibt es nichts zu scannen.
  2. Sie werden pro Thread über die Windows-API SetThreadContext gesetzt, was nicht die klassischen „Speicher modifiziert"-Signale auslöst, die von Integritätsscannern verwendet werden.
  3. Der Abfangpunkt wird vollständig durch den Exception-Dispatch des Prozessors abgewickelt, der über die VEH-Kette des Prozesses läuft, bevor eine beliebige User-Mode-Zielfunktion ausgeführt wird.

Dieses POC untersucht die Wirksamkeit und Erkennbarkeit dieser Technik gegenüber AMSI (Antimalware Scan Interface), WLDP (Windows Lockdown Policy) und ETW (Event Tracing for Windows) — den drei am weitesten verbreiteten User-Mode-Sicherheitsprimitiven im modernen Windows-Sicherheitsstack.


Angezielte Sicherheitskomponenten

AMSI — Antimalware Scan Interface

AMSI ist der Windows-Plattform-Integrationspunkt, der es Anwendungen (PowerShell, Office, VBScript, .NET-Hosts usw.) ermöglicht, das Scannen von Inhalten durch registrierte Antimalware-Anbieter anzufordern. Der primäre Einstiegspunkt von Interesse ist:

  • AmsiScanBuffer(HANDLE hamsiContext, PVOID buffer, ULONG length, LPCWSTR contentName, HANDLE hamsiSession, AMSI_RESULT *pResult)

Indem das zurückgegebene AMSI_RESULT auf AMSI_RESULT_CLEAN (0) gezwungen wird, geht die Skript-Engine davon aus, dass der Inhalt geprüft und als harmlos eingestuft wurde, sodass die Ausführung ununterbrochen fortgesetzt wird.

WLDP — Windows Lockdown Policy

WLDP implementiert die Richtlinienauswertung für Windows Defender Application Control (WDAC / Device Guard). Dieses POC hookt zwei WLDP-Einstiegspunkte:

  • WldpIsClassInApprovedList beantwortet die Frage, ob eine bestimmte COM-Klasse (identifiziert durch GUID) unter der aktuellen Richtlinie zulässig ist. AMSI konsultiert intern WLDP, um zu entscheiden, ob bestimmte Skript-/Inhaltsklassen „vertrauenswürdig" sind (in der genehmigten Liste). Wenn die Funktion die Klasse als genehmigt meldet, kann AMSI zusätzliche Prüfungen für diesen Inhaltstyp überspringen.
  • WldpQueryDynamicCodeTrust beantwortet die Frage, ob ein bestimmtes Stück dynamisch generierten Codes (z. B. .NET-JIT-Ausgabe oder anderweitig generierter ausführbarer Speicher) unter der aktuellen Lockdown-Richtlinie vertrauenswürdig ist.

Die DLL setzt den Ausgabeparameter isApproved (RDX) von WldpIsClassInApprovedList auf TRUE und gibt S_OK zurück und erzwingt, dass WldpQueryDynamicCodeTrust S_OK (0) zurückgibt — wodurch sowohl die ausgewertete Inhaltsklasse als auch der abgefragte dynamische Code als vertrauenswürdig erscheinen.

ETW — Event Tracing for Windows

NtTraceEvent in ntdll.dll ist der niederstufigste User-Mode-Einstiegspunkt in das ETW-Subsystem — praktisch die gesamte ETW-Ereignisausgabe läuft darüber (einschließlich EtwEventWrite und der übergeordneten Etw*-APIs). Das Hooking dieser Funktion kappt daher den gesamten ETW-Stream aus dem User Mode, mit weitreichenden Nebenwirkungen für die Sicherheitsüberwachung:

Tool herunterladen