Skip to content
Snippets Groups Projects
Commit 923289a1 authored by iliya.saroukha's avatar iliya.saroukha :first_quarter_moon:
Browse files

feat: should be fine now

parent 45f49613
Branches
No related tags found
No related merge requests found
......@@ -23,12 +23,10 @@ format:
## Enjeux de la virtualisation de plateforme
::: {.incremental}
- Permettre l'exécution de **plusieurs OS** sur une **seule** et même **machine**
- Exploiter **efficacement** les **ressources computationnelles**
- **Faciliter** et **centraliser** la **gestion des ressources IT** en
entreprise
<!-- BUG: not sure about this cross-architecture stuff -->
- Développement et déploiement de solutions logiciels **indépendamment** de
**l'architecture sous-jacente**
:::
. . .
......@@ -43,7 +41,6 @@ pertinence
::: {.incremental}
- **Isolation**/**_sand-boxing_** de chaque environnement virtuel
<!--- TODO: add something about the MMU and shadow page tables-->
- **Impossibilité** (du moins théorique) de s'échapper de son environnement
- **Ne doit affecter** en \textcolor{red}{\textbf{aucun cas}} **l'hôte** ou
**la couche de virtualisation** (VMM) sous-jacente
......@@ -149,12 +146,6 @@ Est simplement chargé en tant que pilote Windows (`.sys`)
[^4]: [Subverting Vista™ Kernel For Fun and Profit](https://media.kasperskycontenthub.com/wp-content/uploads/sites/43/2008/08/20084218/BH-US-06-Rutkowska.pdf)
<!--HACK: à voir si je fais les deux ci-dessous-->
<!--## Cloudskulk-->
<!---->
<!--## CoVirt-->
# _Reverse-Engineering_
## Hyperviseur sous forme de module noyau chargeable
......@@ -174,18 +165,42 @@ région allouée et initialisée
## Anatomie d'un _world-switch_
::: {.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_
- VMEntry $\rightarrow$ état du CPU en mode \textcolor{red}{root}
- VMExit $\rightarrow$ état du CPU en mode \textcolor{teal}{non-root}
:::
# Méthodes de détection
## _Timing analysis_
# Conclusion
::: {.incremental}
- Construire un ensemble d'opérations nécessitant des `VMExit`
- Établir une _baseline_ temporelle sur un hôte **pas soumis** à l'attaque
- Calculer les **différences de temps** entre la _baseline_ et un sujet infecté
:::
# Références bibliographiques
## Détection de virtualisation
- [Rootkits: User Mode](https://www.infosecinstitute.com/resources/general-security/rootkits-user-mode-kernel-mode-part-1/)
::: {.incremental}
- Vérifier si l'on est reparable par `systemd-detect-virt`
- Permet de détecter de manière granulaire QEMU, `kvm` et les technologies
de containerisation (e.g. `docker`)
- De même, avec [`VMAware`](https://github.com/kernelwernel/VMAware)
- Cf. projet de semestre de M. Ricardo Dos Santos
:::
# Conclusion
::: {.incremental}
- Approfondissement des connaissances liées à la virtualisation de plateforme
- Recensement des enjeux liés à la cybersécurité
- Étude de l'utilisation d'hyperviseur en guise de _rootkit_
- Développement d'un hyperviseur à l'aide des instructions matérielles x86
- Études des méthodes de détection
- Analyse temporelle
- Détection de virtualisation
:::
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment