diff --git a/presentations/defense/defense.qmd b/presentations/defense/defense.qmd index 141859ac3e79132b966f25068fc316ec3fb48038..92fce0dcc4cc5cb9d4522597385b0145fccdd70c 100644 --- a/presentations/defense/defense.qmd +++ b/presentations/defense/defense.qmd @@ -48,9 +48,9 @@ format: - Début **d'implémentation** d'un _POC_ (Dec-Jan 2025) - Module noyau GNU/Linux - Extensions matérielles Intel VT-x (documentation technique) - - Interception d'instructions -- **Étude** détaillée de Blue Pill (Fév-Mars 2025) - Virtualisation du CPU +- **Étude** détaillée de Blue Pill (Fév-Mars 2025) + - Mise en place d'un hyperviseur léger - Migration à la volée de l'OS - Conception d'une VM à partir des briques de base @@ -176,13 +176,14 @@ redémarrage du système, est simplement chargé en tant que pilote Windows (`.s [^3]: [Subverting Vista™ Kernel For Fun and Profit](https://media.kasperskycontenthub.com/wp-content/uploads/sites/43/2008/08/20084218/BH-US-06-Rutkowska.pdf) -## Déroulement du code source +## Déroulement du code source -- étapes clés +::: {.incremental} - Lancement du pilote -- `DriverEntry` - Préparation du CPU - Épinglage de l'exécution -- `KeSetSystemAffinityThread` - Contexte de l'hyperviseur - - Pile noyau + - Pile noyau - GDT et IDT - Initialisation du VMCB - Définition des interceptions -- `SvmSetupControlArea` @@ -191,6 +192,7 @@ redémarrage du système, est simplement chargé en tant que pilote Windows (`.s - Chargement du VMCB via `VMLOAD` - Exécution de `VMRUN` - Gestion des `#VMEXIT` par le pilote noyau +::: ## Principe de fonctionnement