
Source code of a multiple series of tutorials about the hypervisor. Available at: https://rayanfam.com/tutorials
Ein Tutorial zur Erstellung eines Hypervisors von Grund auf
Alle Teile »
Teil 1
·
Teil 2
·
Teil 3
·
Teil 4
·
Teil 5
·
Teil 6
·
Teil 7
·
Teil 8
Wenn Sie einen Hypervisor für Analyse- und Reverse-Engineering-Aufgaben verwenden möchten, schauen Sie sich den Debugger HyperDbg an. Es handelt sich um einen hypervisor-basierten Debugger, der speziell für die Analyse, das Fuzzing und das Reversing von Anwendungen entwickelt wurde. Ein kostenloses und umfassendes Tutorial zum hypervisor-basierten Reverse Engineering ist auf der Website von OpenSecurityTraining2 (bevorzugt) und auf YouTube verfügbar, das zahlreiche praktische Beispiele zur Nutzung von Hypervisoren für Reverse Engineering zeigt.
Hinweis: Das Tutorial Hypervisor From Scratch wurde im August 2022 vollständig überarbeitet. Die Codes aller Teile wurden aktualisiert, unnötige Details entfernt und neue Erklärungen und Materialien zum Tutorial hinzugefügt.
Quellcode einer mehrteiligen Tutorial-Serie über den Hypervisor.
Verfügbar unter: https://rayanfam.com/tutorials
Teil 1 - Grundlegende Konzepte & Einrichtung der Testumgebung (https://rayanfam.com/topics/hypervisor-from-scratch-part-1)
Teil 2 - Eintritt in den VMX-Betrieb (https://rayanfam.com/topics/hypervisor-from-scratch-part-2)
Teil 3 - Einrichtung unserer ersten virtuellen Maschine (https://rayanfam.com/topics/hypervisor-from-scratch-part-3)
Teil 4 - Adressübersetzung mithilfe der Extended Page Table (EPT) (https://rayanfam.com/topics/hypervisor-from-scratch-part-4)
Teil 5 - Einrichtung von VMCS & Ausführen von Gast-Code (https://rayanfam.com/topics/hypervisor-from-scratch-part-5)
Teil 6 - Virtualisierung eines bereits laufenden Systems (https://rayanfam.com/topics/hypervisor-from-scratch-part-6)
Teil 7 - Verwendung von EPT & Page-Level-Überwachungsfunktionen (https://rayanfam.com/topics/hypervisor-from-scratch-part-7)
Teil 8 - Wie man mit dem Hypervisor Magie vollbringt! (https://rayanfam.com/topics/hypervisor-from-scratch-part-8)
Hinweis: Bitte beachten Sie, dass sich Hypervisoren im Laufe der Zeit ändern, da den Betriebssystemen neue Funktionen hinzugefügt werden oder neue Technologien zum Einsatz kommen. Beispielsweise haben die Updates zu Meltdown & Spectre viele Änderungen an den Hypervisoren bewirkt. Wenn Sie Hypervisor From Scratch also in Ihren Projekten, Ihrer Forschung oder was auch immer verwenden möchten, müssen Sie den Treiber aus den neuesten Teilen dieser Tutorial-Serie verwenden, da dieses Tutorial aktiv aktualisiert wird und Änderungen an den neueren Teilen vorgenommen werden (ältere Teile bleiben unangetastet). Daher können in den älteren Teilen Fehler und Stabilitätsprobleme auftreten. Stellen Sie also sicher, dass Sie in realen Projekten die neuesten Teile verwenden.
Um dieses Projekt zu kompilieren, müssen Sie das Windows Driver Kit (WDK) verwenden. Installieren Sie zuerst Visual Studio und anschließend das WDK. Danach können Sie es kompilieren.
Alle Treiber wurden sowohl auf physischen Maschinen als auch mit der verschachtelten Virtualisierung von VMWare Workstation getestet. Ab Teil 8 wurde Unterstützung für Hyper-V hinzugefügt, was bedeutet, dass Sie Teil 8 und neuere Teile auf physischen Maschinen, mit der verschachtelten Virtualisierung von VMWare Workstation und mit der verschachtelten Virtualisierung von Hyper-V testen können.
Wenn Sie mehr über Hypervisoren erfahren möchten, besuchen Sie das Repository awesome virtualization.
Diese Serie wurde geschrieben von:
Besonderer Dank geht an diese Leute für ihre Hilfe und Beiträge:
Hypervisor From Scratch ist unter einer MIT-Lizenz lizenziert.