diff --git a/presentations/dry-run/dry-run.qmd b/presentations/dry-run/dry-run.qmd index e9f9518eef0450cb0c4918017c6c3f75b26e7b31..10b6a462bcea3a5ecd592a6114fb384c988b3655 100644 --- a/presentations/dry-run/dry-run.qmd +++ b/presentations/dry-run/dry-run.qmd @@ -94,7 +94,7 @@ of a computer system **without being detected**"_ [^2] [^2]: [Oxford English Dictionary, s.v. "rootkit (n.)," December 2024](https://doi.org/10.1093/OED/6892331220) -## Valeur offensive ajoutée par un hyperviseur +## Valeur "offensive" ajoutée par un hyperviseur ::: {.incremental} - Point de départ $\rightarrow$ \textcolor{red}{Ring 0}, on se situe déjà au **même niveau** que @@ -130,7 +130,7 @@ Microsoft[^3] ::: {.incremental} - \small 1ère démonstration lors du _Black Hat Briefings_ du 3 août 2006[^4] -- \small Développé par Mme Joanna Rutkowska (Invisible Things Labs, Qubes OS) +- \small Développé par Joanna Rutkowska (Invisible Things Labs, Qubes OS) - \small VMBR utilisant les **instructions matérielles** exposées par les CPUs x86 - \small \textbf{Premier exemple} d'un rootkit \textbf{HVM} (_hardware based virtual machine_) - \footnotesize Basé initialement sur la technologie AMD-V (Pacifica, _aka_ SVM), puis @@ -139,7 +139,7 @@ Microsoft[^3] . . . -::: {.callout-warning} +::: {.callout-important} \scriptsize Migration de l'OS natif **à la volée**, ne requiert pas de redémarrage du système, est simplement chargé en tant que pilote Windows (`.sys`) ::: @@ -154,7 +154,7 @@ redémarrage du système, est simplement chargé en tant que pilote Windows (`.s - Concerne l'architecture x86 pour Intel VT-x - Détection du CPU et de ses capacités pour la virtualisation (_support for VMX_) - Appel à `cpuid` avec `eax = 1` (bit 5 _set_ de `ecx`) -- Vérification du _"feature control"_ MSR (_"model specific registers"_) pour +- Vérification du _"feature control"_ MSR (_"model specific register"_) pour déterminer si la virtualisation n'a pas été désactivée depuis le BIOS. - Initialisation de la région **VMXON** associée à une future VM - Vérification des valeurs dans les registres de contrôle **CR0** et **CR4** @@ -175,7 +175,7 @@ région allouée et initialisée # Méthodes de détection -## _Timing analysis_ +## Analyse temporelle ::: {.incremental} - Construire un ensemble d'opérations nécessitant des `VMExit` @@ -204,3 +204,5 @@ région allouée et initialisée - Analyse temporelle - Détection de virtualisation ::: + +# Questions ?