Skip to content
Snippets Groups Projects
Verified Commit 2c59d5cd authored by iliya.saroukha's avatar iliya.saroukha :first_quarter_moon:
Browse files

fix: slight adjustments

parent c058f2ca
Branches
No related tags found
No related merge requests found
......@@ -102,10 +102,10 @@ le **noyau de l'OS**
- _Hijacking_ complet du système possible
- Bras de fer entre les outils de détection (kernel mode) et le _malware_
- Invisibilité pas forcément garantie !
- Offre une nouvelle opportunité, un **changement de paradigme**
- _Hypervisor as a rootkit_ $\rightarrow$ un **changement de paradigme**
- Insertion \textcolor{red}{entre} le **noyau de l'OS** et le **matériel**
- \textcolor{red}{Ring -1} effectif
- Détection plus complexe
- \textcolor{purple}{Ring -1} effectif
- Détection plus **complexe**
- le _malware_ et l'OS \textcolor{red}{ne sont plus}
sur le **même pied d'égalité**
:::
......@@ -151,16 +151,16 @@ redémarrage du système, est simplement chargé en tant que pilote Windows (`.s
## Hyperviseur sous forme de module noyau chargeable
::: {.incremental}
- Concerne l'architecture x86 pour Intel VT-x
- 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 register"_) pour
déterminer si la virtualisation n'a pas été désactivée depuis le BIOS.
- Appel à **`cpuid`** avec `eax = 1` (bit 5 _set_ de `ecx`)
- 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**
- Activation de **VMX** à travers le **bit 13** du registre **CR4**
- Exécution de l'instruction **`vmxon`** avec comme opérande l'adresse de la
région allouée et initialisée
- Exécution de l'instruction **`vmxon`** avec comme opérande **l'adresse physique**
de la région allouée et initialisée
:::
## Anatomie d'un _world-switch_
......@@ -168,7 +168,7 @@ région allouée et initialisée
::: {.incremental}
- Chaque CPU possèdent une région **VMCS** (_"Virtual Machine Control Structure"_)
- Semblable en tout genre à la région **VMXON**
- Est utilisé pour sauvegarder l'état du CPU ou vCPU à chaque _world-switch_
- Est utilisé pour sauvegarder l'état du CPU à chaque _world-switch_
- VMEntry $\rightarrow$ état du CPU en mode \textcolor{red}{root}
- VMExit $\rightarrow$ état du CPU en mode \textcolor{teal}{non-root}
:::
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment