Zurück zu den Updates
New releaseJul 21, 2026

HyperDbg v0.22

Modernste native Debugging-Tools

Teilen

Website Documentation Doxygen Published Academic Researches License

HyperDbg Debugger

HyperDbg Debugger
HyperDbg Debugger ist ein quelloffener, hypervisor-gestützter Debugger für Windows (die Linux-Unterstützung befindet sich derzeit in der Entwicklung!) mit Unterstützung für Debugging sowohl im Benutzermodus als auch im Kernelmodus (nativ). Er wurde für Reverse Engineering, Fuzzing und erweiterte Systemanalyse mithilfe moderner Hardware-Virtualisierung und Tracing-Funktionen entwickelt.

Du kannst HyperDbg auf Twitter oder Mastodon folgen, um über neue Veröffentlichungen benachrichtigt zu werden, oder einer der HyperDbg-Gruppen beitreten, wo du Entwickler und Open-Source-Reverse-Engineering-Enthusiasten um Hilfe bei der Einrichtung und Verwendung von HyperDbg bitten kannst.

Beschreibung

HyperDbg basiert auf modernen Hardware-Virtualisierungstechnologien, um Fähigkeiten zu bieten, die über die herkömmlicher Debugger hinausgehen. Es läuft oberhalb des Betriebssystems, indem es ein bereits laufendes System mithilfe von Intel VT-x und Extended Page Tables (EPT) virtualisiert. Durch die Kombination von Virtualisierung mit fortschrittlichen Tracing-Technologien wie Intel Processor Trace (Intel PT) bietet HyperDbg leistungsstarke Tracing- und Virtual Machine Introspection (VMI)-Fähigkeiten.

HyperDbg Debugger

Kernfunktionen

HyperDbg bietet eine breite Palette erweiterter Debugging-Funktionen, darunter verschiedene Arten von versteckten Hooks auf EPT-Basis. Es kann Hardware-Datenbreakpoints emulieren, um Speicherzugriffe (Lesen, Schreiben und Ausführen) in bestimmten Adressbereichen zu überwachen, während es sowohl für das Betriebssystem als auch für Zielanwendungen transparent bleibt. Im Gegensatz zu Hardware-Debug-Registern sind diese Überwachungsfunktionen nicht durch die Anzahl verfügbarer Debug-Register oder Größenbeschränkungen begrenzt. Darüber hinaus ist HyperDbg in der Lage, die Ausführung über verschiedene Privilegstufen hinweg zu verfolgen, einschließlich Übergängen vom Benutzermodus in den Kernelmodus (z. B. durch Systemaufrufe, Heaven's Gate, Faults, Exceptions und Interrupts), vom Kernel zu Gerätetreibern und vom Kernelmodus zurück in den Benutzermodus, was eine umfassende Analyse des gesamten Ausführungsflusses ermöglicht.

Darüber hinaus unterstützt HyperDbg Systemaufruf-Hooking, Kontrollfluss-Tracing durch Hardware-Tracing-Funktionen sowie eine umfassende Überwachung von I/O-Operationen, einschließlich sowohl Memory-Mapped I/O (MMIO) als auch Port-Mapped I/O (PMIO), was eine detaillierte Analyse von Geräteinteraktionen und externen Peripheriegeräten ermöglicht.

Darüber hinaus enthält HyperDbg eine große Sammlung zusätzlicher Events, die speziell für Reverse Engineering, Malware-Analyse und Low-Level-Programmanalyse entwickelt wurden. Eine vollständige Liste der unterstützten Events und ihrer Dokumentation findest du in der vollständigen Funktionsliste.

HyperDbg ist darauf ausgelegt, so unauffällig wie möglich zu arbeiten. Es verwendet keine Debugging-APIs, um das Betriebssystem oder eine Anwendung zu debuggen, sodass klassische Anti-Debugging-Methoden es nicht erkennen werden. Es enthält außerdem ein spezialisiertes Modul, das seine Tarnfähigkeiten verbessern soll. Dieses Modul überwacht Versuche, das Vorhandensein eines Hypervisors oder Debuggers zu erkennen, und wendet verschiedene Techniken an, um solche Erkennungsmechanismen zunächst zu melden und dann abzuschwächen oder zu umgehen. Obwohl vollständige Transparenz nicht in allen Szenarien garantiert werden kann, erhöhen diese Funktionen die Schwierigkeit, HyperDbg zu erkennen, erheblich und machen es für Anwendungen, Packer, Software-Schutzprogramme, Malware, Anti-Cheat-Systeme und andere Sicherheitsmechanismen wesentlich schwerer, seine Präsenz zu identifizieren.

Warum HyperDbg?

HyperDbg ist schwieriger einzurichten und zu verwenden und erfordert im Vergleich zu herkömmlichen Debuggern tiefere Low-Level-Systemkenntnisse. Es bietet jedoch zwei große Vorteile:

  1. Vollständige System- & OS-Kontrolle
    HyperDbg arbeitet auf Hypervisor-Ebene und bietet dir leistungsstarke Fähigkeiten, die mit klassischen Debuggern schlicht nicht möglich sind. Dadurch kannst du hardwaregestützte Funktionen für fortgeschrittene Reverse-Engineering- und Debugging-Szenarien nutzen.

  2. Tarnung & Erkennungsresistenz
    Da HyperDbg nicht auf standardmäßige OS-Debugging-APIs angewiesen ist, ist es im Allgemeinen viel schwerer (wenn auch nicht unmöglich) zu erkennen. Das macht es zu einer starken Wahl, wenn du gegen Anti-Debugging-Schutzmaßnahmen arbeitest.

Diese Vorteile eröffnen völlig neue Debugging- und Reverse-Engineering-Techniken, die über das hinausgehen, was herkömmliche Debugger bieten können.

Build & Installation

Du kannst die neuesten kompilierten Binärdateien von den Releases herunterladen; andernfalls solltest du HyperDbg mit dem --recursive-Flag klonen, wenn du es selbst bauen möchtest.``` git clone --recursive https://github.com/HyperDbg/HyperDbg.git

Bitte besuchen Sie **[Kompilieren & Installieren](https://docs.hyperdbg.org/getting-started/build-and-install)** und **[Schnellstart](https://docs.hyperdbg.org/getting-started/quick-start)** für eine detaillierte Erklärung, wie Sie mit **HyperDbg** beginnen. Sie können auch das **[FAQ](https://docs.hyperdbg.org/getting-started/faq)** für weitere Informationen ansehen, oder falls Sie zuvor andere native Debugger wie GDB, LLDB oder WinDbg verwendet haben, können Sie sich die [Befehlsübersicht](https://hyperdbg.github.io/commands-map) ansehen.

## Tutorials

Die **OpenSecurityTraining2s "Reversing with HyperDbg (Dbg3301)**" Tutorial-Serie, verfügbar auf [**OST2s Website**](https://ost2.fyi/Dbg3301) (_bevorzugt_) und [**YouTube**](https://www.youtube.com/playlist?list=PLUFkSN0XLZ-kF1f143wlw8ujlH2A45nZY), ist der empfohlene Weg, um mit HyperDbg zu starten und es zu lernen. Sie führt Sie durch die ersten Schritte der Verwendung von HyperDbg, behandelt wesentliche Konzepte, Prinzipien und Debugging-Funktionen, zusammen mit praktischen Beispielen und zahlreichen Reverse-Engineering-Methoden, die einzigartig für HyperDbg sind.

Wenn Sie daran interessiert sind, das interne Design und die Architektur von Hypervisoren und HyperDbg zu verstehen, können Sie die [**Hypervisor From Scratch**](https://rayanfam.com/tutorials) Tutorials lesen.

## Publikationen

Falls Sie eine der Komponenten von **HyperDbg** in Ihrer Arbeit verwenden, ziehen Sie bitte in Betracht, unsere Paper zu zitieren.

**1. [HyperDbg: Reinventing Hardware-Assisted Debugging (CCS'22)](https://dl.acm.org/doi/abs/10.1145/3548606.3560649)** [[arXiv](https://arxiv.org/abs/2207.05676)]```
@inproceedings{karvandi2022hyperdbg,
  title={HyperDbg: Reinventing Hardware-Assisted Debugging},
  author={Karvandi, Mohammad Sina and Gholamrezaei, MohammadHosein and Khalaj Monfared, Saleh and Meghdadizanjani, Soroush and Abbassi, Behrooz and Amini, Ali and Mortazavi, Reza and Gorgin, Saeid and Rahmati, Dara and Schwarz, Michael},
  booktitle={Proceedings of the 2022 ACM SIGSAC Conference on Computer and Communications Security},
  pages={1709--1723},
  year={2022}
}
Weiteres Paper, das auf HyperDbg aufbaut...

2. hwdbg: Hardware wie Software debuggen (EuroSec'25) [PDF]``` @inproceedings{karvandi2025hwdbg, title={hwdbg: Debugging Hardware Like Software}, author={Karvandi, Mohammad Sina and Meghdadizanjani, Soroush and Monfared, Saleh Khalaj and van der Kouwe, Erik and Slowinska, Asia}, booktitle={Proceedings of the 18th European Workshop on Systems Security}, pages={56--62}, year={2025} }

**3. [HyperEvade: Bekämpfung von Anti-Debugging-Techniken und Verbesserung der Transparenz in verschachtelter Virtualisierung mit HyperDbg (DEBT'25)](https://www.jot.fm/contents/issue_2026_01/a8.html)** [[PDF](https://www.jot.fm/issues/issue_2026_01/a8.pdf)]```
@article{ruytenberg2026hyperevade,
  title={HyperEvade: Countering Anti-Debugging Techniques and Enhancing Transparency in Nested Virtualization using HyperDbg},
  author={Ruytenberg, Bj{\"o}rn and Karvandi, Mohammad Sina},
  journal={Journal of Object Technology},
  volume={25},
  number={1},
  pages={1--3},
  year={2026},
  publisher={Association Internationale pour les Technologies Objets}
}

4. Digital Hole: Umgehung kommerzieller Audio-DRM-Lösungen mit DReaMcatcher (EuroSys'26) [PDF]``` @inproceedings{ruytenberg2026digital, title={Digital Hole: Bypassing Commercial Audio DRM Solutions with DReaMcatcher}, author={Ruytenberg, Bj{"o}rn and Karvandi, Mohammad Sina and Bos, Herbert and van der Kouwe, Erik and Slowinska, Asia}, booktitle={Proceedings of the 21st European Conference on Computer Systems}, pages={484--496}, year={2026} }

**5. [TRM: Ein effizientes Hypervisor-basiertes Framework für Malware-Analyse und Speicherrekonstruktion (AsiaCCS'26)](https://dl.acm.org/doi/10.1145/3779208.3785293)** [[PDF](https://dl.acm.org/doi/pdf/10.1145/3779208.3785293)]```
@inproceedings{karvandi2026trm,
  title={TRM: An Efficient Hypervisor-Based Framework For Malware Analysis and Memory Reconstruction},
  author={Karvandi, Mohammad Sina and Meghdadizanjani, Soroush and Arasteh, Sima and Monfared, Saleh Khalaj and Fallah, Mohammad K and Gorgin, Saeid and Lee, Jeong-A and Slowinska, Asia and van der Kouwe, Erik},
  booktitle={Proceedings of the ACM Asia Conference on Computer and Communications Security},
  pages={68--82},
  year={2026}
}

Sie können auch diesen Artikel lesen, da er die Gesamtarchitektur, technische Schwierigkeiten, Designentscheidungen und Interna des HyperDbg-Debuggers beschreibt, diesen Artikel über unsere Bemühungen zur vm-exit-Transparenz, diesen Artikel über das Aufspüren von Bugs in Hypervisoren sowie diesen Artikel über neue Reverse-Engineering-Techniken, die in HyperDbg eingeführt wurden. Weitere Artikel, Beiträge und Ressourcen finden Sie im Repository awesome, und zusätzlich bietet das Repository slides Präsentationsfolien zur weiteren Referenz.

Einzigartige Funktionen

  • Fortschrittlicher Hypervisor-basierter Kernel-Mode-Debugger [Link][Link][Link]
  • Klassischer EPT-Hook (Versteckter Breakpoint) [Link][Link][Link]
  • Inline-EPT-Hook (Inline-Hook) [Link][Link]
  • Speicher auf R/W überwachen (Emulation von Hardware-Debug-Registern ohne Einschränkung) [Link][Link][Link]
  • SYSCALL-Hook (EFER deaktivieren & #UD behandeln) [Link][Link][Link]
  • SYSRET-Hook (EFER deaktivieren & #UD behandeln) [Link][Link]
  • CPUID-Hook & Monitor [Link][Link]
  • RDMSR-Hook & Monitor [Link][Link]
  • WRMSR-Hook & Monitor [Link][Link]
  • RDTSC/RDTSCP-Hook & Monitor [Link]
  • RDPMC-Hook & Monitor [Link]
  • VMCALL-Hook & Monitor [Link]
  • Debug-Register-Hook & Monitor [Link]
  • I/O-Port-Hook (IN-Anweisung) & Monitor [Link][Link]
  • I/O-Port-Hook (OUT-Anweisung) & Monitor [Link][Link]
  • MMIO-Monitor [Link]
  • Exception-Monitor (IDT < 32) [Link][Link][Link]
  • Externer-Interrupt-Monitor (IDT > 32) [Link][Link][Link]
  • Ausführen automatisierter Skripte [Link]
  • Transparent-Modus und Hyperevade-Projekt (Anti-Debugging- und Anti-Hypervisor-Resistenz) [Link][Link][Link]
  • Ausführen von benutzerdefiniertem Assembly in VMX-Root und VMX-Non-Root (Kernel & User) [Link]
  • Prüfen auf benutzerdefinierte Bedingungen [Link][Link]
  • Prozessspezifisches & threadspezifisches Debugging [Link][Link][Link]
  • VMX-Root-kompatibles Nachrichten-Tracing [Link]
  • Leistungsstarke kernel-seitige Scripting-Engine [Link][Link]
  • Unterstützung für Symbole (Parsen von PDB-Dateien) [Link][Link]
  • Zuordnen von Daten zu Symbolen & Erstellen von Strukturen, Enums aus PDB-Dateien [Link][Link][Link]
  • Event-Forwarding (#DFIR) [Link][Link]
  • Transparenter Breakpoint-Handler [Link][Link]
  • Verschiedene benutzerdefinierte Skripte [Link]
  • HyperDbg Software Development Kit (SDK) [Link]
  • Event-Short-Circuiting [Link][Link]
  • Nachverfolgen von Funktionsaufrufen und Rücksprungadressen [Link]
  • Längen-Disassembler-Engine auf Kernel-Ebene (LDE) [Link][Link]
  • Memory-Execution-Monitor & Ausführungsblockierung [Link]
  • Benutzerdefinierte Page-Fault-Injektion [Link]
  • Verschiedene Event-Aufrufphasen [Link]
  • Injizieren benutzerdefinierter Interrupts/Ausnahmen/Fehler [Link][Link]
  • Sofortige Events im Debugger-Modus [Link]
  • Erkennen von Kernel-zu-Benutzer- und Benutzer-zu-Kernel-Übergängen [Link]
  • Hooks zur Überwachung des physischen Speichers [Link]
  • Aufzählen von PCI/PCI-e-Geräten [Link]
  • Interpretieren und Ausgeben des PCI/PCI-e-Konfigurationsraums (CAM) [Link]
  • Ausgeben von IDT-Einträgen, I/O-APIC und lokalem APIC in den Modi XAPIC und X2APIC [Link][Link][Link]
  • Auslösen und Zählen von System-Management-Mode-Interrupts (SMIs) [Link]
  • Anhängen an den User-Mode-Prozess und Verhindern der Ausführung [Link]
  • Abfangen der Ausführung von XSETBV-Anweisungen [Link]
  • Schreiben von Bibliotheks-Skriptdateien [Link]
  • Erweiterter Portable-Executable-Parser (PE) [Link]
  • Verfolgen von Verzweigungen mithilfe des Last Branch Record (LBR) [Link][Link][Link][Link][Link][Link][Link]

Wie funktioniert es?

Sie können mehr über das interne Design von HyperDbg und seine Funktionen in der Dokumentation lesen. Hier ist ein Diagramm auf oberster Ebene, das zeigt, wie HyperDbg funktioniert:

HyperDbg Design


Skripte

Sie können Ihre Skripte schreiben, um Ihre Debugging-Reise zu automatisieren. HyperDbg verfügt über eine leistungsstarke, schnelle und vollständig kernel-seitig implementierte Skript-Engine.

Mitwirken

Beiträge zu HyperDbg werden sehr geschätzt. Wir haben eine Liste potenzieller Aufgaben erstellt, an denen Sie interessiert sein könnten, um einen Beitrag zu leisten.

Wenn Sie zu HyperDbg beitragen möchten, lesen Sie bitte den Beitragsleitfaden.

Lizenz

HyperDbg und alle seine Submodule und Repositories sind, sofern keine andere Lizenz angegeben ist, unter der GPLv3-Lizenz lizenziert.

Abhängigkeiten sind jeweils unter ihrer eigenen Lizenz lizenziert.

Kategorien