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

fix: every image formatted and cited correctly

parent 5c5346a6
Branches
No related tags found
No related merge requests found
...@@ -81,7 +81,7 @@ d'exploitations \say{invités} qu'il hébèrge. ...@@ -81,7 +81,7 @@ d'exploitations \say{invités} qu'il hébèrge.
\begin{center} \begin{center}
\includegraphics[width=0.55\textwidth]{figures/diagrams/platform_virt} \includegraphics[width=0.55\textwidth]{figures/diagrams/platform_virt}
\end{center} \end{center}
\caption{Diagramme d'un \acrshort{vmm}}\label{fig:platform_virt} \caption{Diagramme simplifiée d'\acrshort{vmm}. Source : tiré de researchgate.net, ref. URL02 / réalisé par ALVARES Frederico}\label{fig:platform_virt}
\end{figure} \end{figure}
Dans le but de pouvoir re-créer des environnements informatiques virtuels Dans le but de pouvoir re-créer des environnements informatiques virtuels
...@@ -222,7 +222,7 @@ côté, l'hyperviseur ainsi que les applications de l'hôte seront exécutés en ...@@ -222,7 +222,7 @@ côté, l'hyperviseur ainsi que les applications de l'hôte seront exécutés en
\begin{center} \begin{center}
\includegraphics[width=0.65\textwidth]{figures/diagrams/cpu_mode_flg} \includegraphics[width=0.65\textwidth]{figures/diagrams/cpu_mode_flg}
\end{center} \end{center}
\caption{Diagramme représentant les deux modes d'exécution du \acrshort{cpu}}\label{fig:cpu_mode_flg} \caption{Diagramme représentant les modes d'exécution du \acrshort{cpu}, privilégié et non-privilégié. Source : tiré du cours 02-Platform\_Virtualization.pdf 2025, p.28, ref. URL03 / réalisé par GLÜCK Florent}\label{fig:cpu_mode_flg}
\end{figure} \end{figure}
...@@ -240,7 +240,7 @@ s'en chargera de la gérer de manière adéquate. ...@@ -240,7 +240,7 @@ s'en chargera de la gérer de manière adéquate.
\begin{center} \begin{center}
\includegraphics[width=0.45\textwidth]{figures/diagrams/vmentry_vmexit_flg} \includegraphics[width=0.45\textwidth]{figures/diagrams/vmentry_vmexit_flg}
\end{center} \end{center}
\caption{Diagramme représentant les transitions entre les modes d'exécution du \acrshort{cpu}}\label{fig:vmentry_vmexit_flg} \caption{Diagramme représentant les transitions entre les modes d'exécution du \acrshort{cpu}. Source : tiré du cours 02-Platform\_Virtualization.pdf 2025, p.29, ref. URL03 / réalisé par GLÜCK Florent}\label{fig:vmentry_vmexit_flg}
\end{figure} \end{figure}
L'implémentation de ses extensions matérielles ont permis de rendre L'implémentation de ses extensions matérielles ont permis de rendre
......
...@@ -206,7 +206,7 @@ conséquence de lancer le \textit{malware} au prochain démarrage. ...@@ -206,7 +206,7 @@ conséquence de lancer le \textit{malware} au prochain démarrage.
\includegraphics[width=0.8\textwidth]{figures/diagrams/subvirt_repr} \includegraphics[width=0.8\textwidth]{figures/diagrams/subvirt_repr}
\end{center} \end{center}
\caption{Diagramme comparant l'état sain et infectée d'une machine infectée \caption{Diagramme comparant l'état sain et infectée d'une machine infectée
par SubVirt. Les parties grises représentent les composantes du \acrshort{vmbr}}\label{fig:subvirt_repr} par SubVirt, les parties grises représentent les composantes du \acrshort{vmbr}. Source : papier scientifique de SubVirt, p.5 \cite{king_subvirt_2006}}\label{fig:subvirt_repr}
\end{figure} \end{figure}
\subsection{Blue Pill}\label{sec:blue_pill} \subsection{Blue Pill}\label{sec:blue_pill}
...@@ -243,7 +243,7 @@ ou exfiltrer des données sensibles. ...@@ -243,7 +243,7 @@ ou exfiltrer des données sensibles.
\begin{center} \begin{center}
\includegraphics[width=0.8\textwidth]{figures/diagrams/blue_pill_diagram} \includegraphics[width=0.8\textwidth]{figures/diagrams/blue_pill_diagram}
\end{center} \end{center}
\caption{Diagramme représentant le fonctionnement simplifié de Blue Pill}\label{fig:blue_pill_simplified} \caption{Diagramme représentant le fonctionnement simplifié de Blue Pill. Source : tiré de la présentation BH-US-06-Rutkowska.pdf, p.29, ref. URL04 / réalisé par RUTKOWSKA Joanna}\label{fig:blue_pill_simplified}
\end{figure} \end{figure}
% NOTE: section 3 (Design) of the paper is interesting % NOTE: section 3 (Design) of the paper is interesting
......
...@@ -91,7 +91,7 @@ est le présenté ci-dessous : ...@@ -91,7 +91,7 @@ est le présenté ci-dessous :
build -czgw build -czgw
ctags -R ctags -R
\end{minted} \end{minted}
\caption{Contenu du script de compilation build\_code.cmd}\label{fig:build_code_script} \caption{Script de compilation build\_code.cmd. Source : tiré du code source de Blue Pill, ref. URL06 / réalisé par RUTKOWSKA Joanna}\label{fig:build_code_script}
\end{figure} \end{figure}
\newpage \newpage
...@@ -123,7 +123,7 @@ est stocké dans le répertoire \verb|.\bin\amd64|. ...@@ -123,7 +123,7 @@ est stocké dans le répertoire \verb|.\bin\amd64|.
\includegraphics[width=1\textwidth]{figures/screenshots/bluepill_compilation} \includegraphics[width=1\textwidth]{figures/screenshots/bluepill_compilation}
\end{center} \end{center}
\caption{Capture d'écran illustrant la compilation réussie du code source \caption{Capture d'écran illustrant la compilation réussie du code source
de Blue Pill}\label{fig:bluepill_compilation} de Blue Pill. Source : \acrshort{vm} Windows Vista / réalisé par SAROUKHANIAN Iliya}\label{fig:bluepill_compilation}
\end{figure} \end{figure}
\subsection{Mise en place du pilote noyau} \subsection{Mise en place du pilote noyau}
...@@ -165,7 +165,7 @@ de démarrage via la touche F8 ...@@ -165,7 +165,7 @@ de démarrage via la touche F8
\includegraphics[width=0.75\textwidth]{figures/screenshots/disable_signature} \includegraphics[width=0.75\textwidth]{figures/screenshots/disable_signature}
\end{center} \end{center}
\caption{Désactivation de l'obligation de signer les pilotes via le menu \caption{Désactivation de l'obligation de signer les pilotes via le menu
avancé de démarrage}\label{fig:disable_signature} avancé de démarrage. Source : tiré de learn.microsoft.com, ref. URL05 / réalisé par MICROSOFT}\label{fig:disable_signature}
\end{figure} \end{figure}
Après que le système ait redémarré, il est finalement possible de lancer le Après que le système ait redémarré, il est finalement possible de lancer le
...@@ -282,7 +282,7 @@ NTSTATUS DriverEntry(PDRIVER_OBJECT DriverObject, ...@@ -282,7 +282,7 @@ NTSTATUS DriverEntry(PDRIVER_OBJECT DriverObject,
[...] [...]
} }
\end{minted} \end{minted}
\caption{Extrait du code source Blue Pill : \lstinline{common/newbp.c:46}}\label{fig:code_driver_entry} \caption{Fichier \lstinline{common/newbp.c:46}. Source : tiré du code source de Blue Pill, ref. URL06 / réalisé par RUTKOWSKA Joanna}\label{fig:code_driver_entry}
\end{figure} \end{figure}
Dans la fonction \verb|HvmSwallowBluepill()|, dont le contenu est illustrer Dans la fonction \verb|HvmSwallowBluepill()|, dont le contenu est illustrer
...@@ -323,7 +323,7 @@ NTSTATUS NTAPI HvmSwallowBluepill ( ...@@ -323,7 +323,7 @@ NTSTATUS NTAPI HvmSwallowBluepill (
[...] [...]
} }
\end{minted} \end{minted}
\caption{Extrait du code source Blue Pill : \lstinline{common/hvm.c:547}}\label{fig:code_hvm_swallow_bp} \caption{Fichier \lstinline{common/hvm.c:547}. Source : tiré du code source de Blue Pill, ref. URL06 / réalisé par RUTKOWSKA Joanna}\label{fig:code_hvm_swallow_bp}
\end{figure} \end{figure}
Après la modification du masque d'affinité, la \textit{callback} \verb|CmSubvert()| Après la modification du masque d'affinité, la \textit{callback} \verb|CmSubvert()|
...@@ -385,7 +385,7 @@ typedef NTSTATUS ( ...@@ -385,7 +385,7 @@ typedef NTSTATUS (
PVOID GuestRsp PVOID GuestRsp
); );
\end{minted} \end{minted}
\caption{Extrait du code source Blue Pill : \lstinline{common/common.h:362}}\label{fig:code_arch_init_func_ptr} \caption{Fichier \lstinline{common/common.h:362}. Source : tiré du code source de Blue Pill, ref. URL06 / réalisé par RUTKOWSKA Joanna}\label{fig:code_arch_init_func_ptr}
\end{figure} \end{figure}
\begin{figure}[tbph!] \begin{figure}[tbph!]
...@@ -418,7 +418,7 @@ typedef struct ...@@ -418,7 +418,7 @@ typedef struct
} HVM_DEPENDENT, } HVM_DEPENDENT,
*PHVM_DEPENDENT; *PHVM_DEPENDENT;
\end{minted} \end{minted}
\caption{Extrait du code source Blue Pill : \lstinline{common/common.h:420}}\label{fig:code_hvm_dependent_struct} \caption{Fichier \lstinline{common/common.h:420}. Source : tiré du code source de Blue Pill, ref. URL06 / réalisé par RUTKOWSKA Joanna}\label{fig:code_hvm_dependent_struct}
\end{figure} \end{figure}
\newpage \newpage
...@@ -501,7 +501,7 @@ NTSTATUS NTAPI HvmSubvertCpu ( ...@@ -501,7 +501,7 @@ NTSTATUS NTAPI HvmSubvertCpu (
return Status; return Status;
} }
\end{minted} \end{minted}
\caption{Extrait du code source Blue Pill : \lstinline{common/hvm.c:356}}\label{fig:code_hvm_subvert_cpu} \caption{Fichier \lstinline{common/hvm.c:356}. Source : tiré du code source de Blue Pill, ref. URL06 / réalisé par RUTKOWSKA Joanna}\label{fig:code_hvm_subvert_cpu}
\end{figure} \end{figure}
\newpage \newpage
...@@ -559,7 +559,7 @@ svm_vmsave MACRO ...@@ -559,7 +559,7 @@ svm_vmsave MACRO
BYTE 0Fh, 01h, 0DBh BYTE 0Fh, 01h, 0DBh
ENDM ENDM
\end{minted} \end{minted}
\caption{Extrait du code source Blue Pill : \lstinline{amd64/svm-asm.asm:24}}\label{fig:code_asm_svm_vmsave} \caption{Fichier \lstinline{amd64/svm-asm.asm:24}. Source : tiré du code source de Blue Pill, ref. URL06 / réalisé par RUTKOWSKA Joanna}\label{fig:code_asm_svm_vmsave}
\end{figure} \end{figure}
...@@ -615,7 +615,7 @@ static NTSTATUS NTAPI SvmInitialize ( ...@@ -615,7 +615,7 @@ static NTSTATUS NTAPI SvmInitialize (
return STATUS_SUCCESS; return STATUS_SUCCESS;
} }
\end{minted} \end{minted}
\caption{Extrait du code source Blue Pill : \lstinline{svm/svm.c:940}}\label{fig:code_svm_initialize} \caption{Fichier \lstinline{svm/svm.c:940}. Source : tiré du code source de Blue Pill, ref. URL06 / réalisé par RUTKOWSKA Joanna}\label{fig:code_svm_initialize}
\end{figure} \end{figure}
\newpage \newpage
...@@ -672,7 +672,7 @@ static NTSTATUS NTAPI SvmVirtualize ( ...@@ -672,7 +672,7 @@ static NTSTATUS NTAPI SvmVirtualize (
return STATUS_UNSUCCESSFUL; return STATUS_UNSUCCESSFUL;
} }
\end{minted} \end{minted}
\caption{Extrait du code source Blue Pill : \lstinline{svm/svm.c:1174}}\label{fig:code_svm_virtualize} \caption{Fichier \lstinline{svm/svm.c:1174}. Source : tiré du code source de Blue Pill, ref. URL06 / réalisé par RUTKOWSKA Joanna}\label{fig:code_svm_virtualize}
\end{figure} \end{figure}
La routine \verb|SvmVmrun()|, illustré par la Figure~\ref{fig:code_asm_svm_vmrun}, La routine \verb|SvmVmrun()|, illustré par la Figure~\ref{fig:code_asm_svm_vmrun},
...@@ -739,7 +739,7 @@ SvmVmrun PROC ...@@ -739,7 +739,7 @@ SvmVmrun PROC
SvmVmrun ENDP SvmVmrun ENDP
\end{minted} \end{minted}
\caption{Extrait du code source Blue Pill : \lstinline{amd64/svm-asm.c:75}}\label{fig:code_asm_svm_vmrun} \caption{Fichier \lstinline{amd64/svm-asm.c:75}. Source : tiré du code source de Blue Pill, ref. URL06 / réalisé par RUTKOWSKA Joanna}\label{fig:code_asm_svm_vmrun}
\end{figure} \end{figure}
Arrivant au terme de l'analyse du code source de Blue Pill, il est souhaitable Arrivant au terme de l'analyse du code source de Blue Pill, il est souhaitable
......
...@@ -109,7 +109,7 @@ all: ...@@ -109,7 +109,7 @@ all:
clean: clean:
$(MAKE) -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean $(MAKE) -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
\end{minted} \end{minted}
\caption{\lstinline{Makefile} du projet d'hyperviseur sous forme de \acrshort{lkm}}\label{fig:makefile_lkm} \caption{Fichier \lstinline{proto/Makefile}. Source : tiré du code source de l'implémentation du \acrshort{lkm}, ref. URL07 / réalisé par SAROUKHANIAN Iliya}\label{fig:makefile_lkm}
\end{figure} \end{figure}
La variable \verb|obj-m| défini le nom que portera le module à travers La variable \verb|obj-m| défini le nom que portera le module à travers
...@@ -165,8 +165,7 @@ et visuelle quant à la transition vers ce mode de fonctionnement. ...@@ -165,8 +165,7 @@ et visuelle quant à la transition vers ce mode de fonctionnement.
\begin{center} \begin{center}
\includegraphics[width=0.55\textwidth]{figures/diagrams/vmm_life_cycle} \includegraphics[width=0.55\textwidth]{figures/diagrams/vmm_life_cycle}
\end{center} \end{center}
\caption{Diagramme représentant le cycle de vie d'un \acrshort{vmm} selon \caption{Diagramme représentant le cycle de vie d'un \acrshort{vmm}. Source : tiré de la documentation officielle d'Intel, p.4 \cite{noauthor_intel_2024}}\label{fig:vmm_life_cycle}
les extensions Intel \acrshort{vmx}}\label{fig:vmm_life_cycle}
\end{figure} \end{figure}
Lorsque l'on exécute l'instruction \verb|VMXON| sur un processeur logique, Lorsque l'on exécute l'instruction \verb|VMXON| sur un processeur logique,
...@@ -263,8 +262,7 @@ static bool vmx_support_cpuid(void) { ...@@ -263,8 +262,7 @@ static bool vmx_support_cpuid(void) {
return (ecx_vmx >> 5) & 1; return (ecx_vmx >> 5) & 1;
} }
\end{minted} \end{minted}
\caption{Code source de l'implémentation du \acrshort{vmm}, \caption{Fichier \lstinline{proto/hypervisor.c:53}. Source : tiré code source de l'implémentation du \acrshort{lkm}, ref. URL07 / réalisé par SAROUKHANIAN Iliya}\label{fig:impl_cpuid_call}
appel à l'instruction \lstinline{CPUID}}\label{fig:impl_cpuid_call}
\end{figure} \end{figure}
\subsection{Préparation de la région VMXON} \subsection{Préparation de la région VMXON}
...@@ -299,13 +297,14 @@ sur un autre processeur. ...@@ -299,13 +297,14 @@ sur un autre processeur.
] ]
{c} {c}
struct vmxon_t { struct vmxon_t {
unsigned long vmcs_rev_id : 31; struct {
unsigned long shadow_vmcs : 1; unsigned long vmcs_rev_id : 31;
unsigned long shadow_vmcs : 1;
} header;
char state[0x1000 - sizeof(unsigned long)]; char state[0x1000 - sizeof(unsigned long)];
}; };
\end{minted} \end{minted}
\caption{Code source de l'implémentation du \acrshort{vmm}, \caption{Fichier \lstinline{proto/region/vmxon.h:3}. Source : tiré code source de l'implémentation du \acrshort{lkm}, ref. URL07 / réalisé par SAROUKHANIAN Iliya}\label{fig:impl_vmxon_t}
structure \lstinline{vmxon_t}}\label{fig:impl_vmxon_t}
\end{figure} \end{figure}
La fonction \verb|alloc_vmxon()| présentée ci-dessous, illustre la manière La fonction \verb|alloc_vmxon()| présentée ci-dessous, illustre la manière
...@@ -341,10 +340,11 @@ struct vmxon_t *alloc_vmxon(void) { ...@@ -341,10 +340,11 @@ struct vmxon_t *alloc_vmxon(void) {
return vmxon; return vmxon;
} }
\end{minted} \end{minted}
\caption{Code source de l'implémentation du \acrshort{vmm}, \caption{Fichier \lstinline{proto/region/vmxon.c:9}. Source : tiré code source de l'implémentation du \acrshort{lkm}, ref. URL07 / réalisé par SAROUKHANIAN Iliya}\label{fig:impl_alloc_vmxon}
fonction \lstinline{alloc_vmxon()}}\label{fig:impl_alloc_vmxon}
\end{figure} \end{figure}
\newpage
Pour pouvoir correctement renseigner la valeur du \acrshort{vmcs} Pour pouvoir correctement renseigner la valeur du \acrshort{vmcs}
\textit{revision identifier} au début de la région VMXON, il est nécessaire \textit{revision identifier} au début de la région VMXON, il est nécessaire
de l'obtenir en lisant les 31 premiers bits du \acrshort{msr} de l'obtenir en lisant les 31 premiers bits du \acrshort{msr}
...@@ -365,8 +365,7 @@ de l'obtenir en lisant les 31 premiers bits du \acrshort{msr} ...@@ -365,8 +365,7 @@ de l'obtenir en lisant les 31 premiers bits du \acrshort{msr}
{c} {c}
#define VMCS_REVISION_ID (__rdmsr(IA32_VMX_BASIC) & 0x7fffffff) #define VMCS_REVISION_ID (__rdmsr(IA32_VMX_BASIC) & 0x7fffffff)
\end{minted} \end{minted}
\caption{Code source de l'implémentation du \acrshort{vmm}, \caption{Fichier \lstinline{proto/msr/msr.h:16}. Source : tiré code source de l'implémentation du \acrshort{lkm}, ref. URL07 / réalisé par SAROUKHANIAN Iliya}\label{fig:impl_vmcs_rev_id}
macro \lstinline{VMCS_REVISION_ID}}\label{fig:impl_vmcs_rev_id}
\end{figure} \end{figure}
\subsection{Restrictions quant aux opérations en \acrshort{vmx}} \subsection{Restrictions quant aux opérations en \acrshort{vmx}}
...@@ -412,8 +411,7 @@ void patch_control_registers(void) { ...@@ -412,8 +411,7 @@ void patch_control_registers(void) {
[...] [...]
} }
\end{minted} \end{minted}
\caption{Code source de l'implémentation du \acrshort{vmm}, \caption{Fichier \lstinline{proto/msr/msr.c:27}. Source : tiré code source de l'implémentation du \acrshort{lkm}, ref. URL07 / réalisé par SAROUKHANIAN Iliya}\label{fig:impl_patch_control_reg}
fonction \lstinline{patch_control_registers()}}\label{fig:impl_patch_control_reg}
\end{figure} \end{figure}
\subsection{Passage en mode \acrshort{vmx} \textit{Root}} \subsection{Passage en mode \acrshort{vmx} \textit{Root}}
...@@ -474,8 +472,7 @@ bool ia32_feature_control_flags(void) { ...@@ -474,8 +472,7 @@ bool ia32_feature_control_flags(void) {
return true; return true;
} }
\end{minted} \end{minted}
\caption{Code source de l'implémentation du \acrshort{vmm}, \caption{Fichier \lstinline{proto/msr/msr.c:6}. Source : tiré code source de l'implémentation du \acrshort{lkm}, ref. URL07 / réalisé par SAROUKHANIAN Iliya}\label{fig:impl_feature_control_flags}
fonction \lstinline{ia32_feature_control_flags()}}\label{fig:impl_feature_control_flags}
\end{figure} \end{figure}
Finalement, il ne reste plus qu'à infomer le processeur actuel que celui-ci Finalement, il ne reste plus qu'à infomer le processeur actuel que celui-ci
...@@ -504,8 +501,7 @@ static int cr4_enable_vmx(void) { ...@@ -504,8 +501,7 @@ static int cr4_enable_vmx(void) {
return 0; return 0;
} }
\end{minted} \end{minted}
\caption{Code source de l'implémentation du \acrshort{vmm}, \caption{Fichier \lstinline{proto/hypervisor.c:34}. Source : tiré code source de l'implémentation du \acrshort{lkm}, ref. URL07 / réalisé par SAROUKHANIAN Iliya}\label{fig:impl_cr4_enable_vmx}
fonction \lstinline{cr4_enable_vmx()}}\label{fig:impl_cr4_enable_vmx}
\end{figure} \end{figure}
Ayant préparé le processeur via ses divers registres et en initialisant Ayant préparé le processeur via ses divers registres et en initialisant
...@@ -516,6 +512,8 @@ de ne pas commettre d'erreur dans cette partie délicate du code, la décision ...@@ -516,6 +512,8 @@ de ne pas commettre d'erreur dans cette partie délicate du code, la décision
été prise de reprendre l'implémentation de cette fonction depuis le code source été prise de reprendre l'implémentation de cette fonction depuis le code source
de \acrshort{kvm} \cite{noauthor_vmxc_nodate}. de \acrshort{kvm} \cite{noauthor_vmxc_nodate}.
\newpage
\begin{figure}[tbph!] \begin{figure}[tbph!]
\begin{minted} \begin{minted}
[ [
...@@ -545,8 +543,7 @@ fault: ...@@ -545,8 +543,7 @@ fault:
return -EFAULT; return -EFAULT;
} }
\end{minted} \end{minted}
\caption{Code source de l'implémentation du \acrshort{vmm}, \caption{Fichier \lstinline{arch/x86/kvm/vmx/vmx.c:2824}. Source : tiré du code source de Linux \cite{noauthor_vmxc_nodate}}\label{fig:impl_kvm_cpu_vmxon}
fonction \lstinline{kvm_cpu_vmxon()}}\label{fig:impl_kvm_cpu_vmxon}
\end{figure} \end{figure}
Ceci conclut donc la partie initiale de l'implémentation d'un hyperviseur Ceci conclut donc la partie initiale de l'implémentation d'un hyperviseur
...@@ -554,13 +551,11 @@ Ceci conclut donc la partie initiale de l'implémentation d'un hyperviseur ...@@ -554,13 +551,11 @@ Ceci conclut donc la partie initiale de l'implémentation d'un hyperviseur
présentées jusqu'à présent ont permis de faire basculer le processeur en mode présentées jusqu'à présent ont permis de faire basculer le processeur en mode
\acrshort{vmx} \textit{Root}. Il sera dès lors possible de mettre ce processeur \acrshort{vmx} \textit{Root}. Il sera dès lors possible de mettre ce processeur
à disposition d'une machine virtuelle créée au préalable à travers à disposition d'une machine virtuelle créée au préalable à travers
l'initialisation de son \acrshort{vmcs}. l'initialisation de son \acrshort{vmcs}. Dans la Section~\ref{sec:preambule_bp},
certaines difficultés quant à l'implémentation de ce travail furent mentionnées,
Dans la Section~\ref{sec:preambule_bp}, certaines difficultés quant à notamment dues à la complexité de la mise en place d'un \acrshort{vmcs}. De ce
l'implémentation de ce travail furent mentionnées, notamment dues à la fait, ce travail fut temporairement suspendu afin d'acquérir davantage de
complexité de la mise en place d'un \acrshort{vmcs}. De ce fait, ce travail connaissances sur le fonctionnement d'un \textit{rootkit} \acrshort{hvm} et
fut temporairement suspendu afin d'acquérir davantage de connaissances sur bénéficier de temps supplémentaire afin de se documenter de manière plus
le fonctionnement d'un \textit{rootkit} \acrshort{hvm} et bénéficier de temps détaillée sur les diverses parties constituantes de cette structure de données
supplémentaire afin de se documenter de manière plus détaillée sur les diverses phare pour la virtualisation.
parties constituantes de cette structure de données phare pour la
virtualisation.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment