Partagez sur
STAGE Research vulnerabilities in hardware emulation on virtualization platforms
Date de mise à jour de l’offre
QUARKSLAB :
Sécurité Informatique
Description de la mission
Les solutions de virtualisation telles que Microsoft Hyper-V, VMWare Workstation, Virtual Box, etc. offrent une isolation du monde extérieur et tout est exécuté dans les limites de la machine virtuelle. Cependant, ces limites peuvent-elles être contournées par un invité malveillant? Dans quelle mesure est-il difficile d'interagir avec le monde extérieur et d'échapper à la matrice? C'est ce que découvrira notre stagiaire en se concentrant sur l'émulation de composants matériels.
Le but de ce stage est d'étudier en profondeur comment les plateformes de virtualisation gèrent l'émulation des composants matériels (bas niveau) pour comprendre leur niveau de sécurité.
Bien entendu, le sujet est large et la première tâche sera de choisir une solution de virtualisation (Hyper-V, VirtualBox, VMWare, QEMU, etc.), en fonction de l'expérience du stagiaire, des travaux existants et des discussions avec l'équipe. Ensuite, le stagiaire étudiera son écosystème, les différents composants qui le composent et comment ils interagissent entre eux. Ces premières étapes devraient leur permettre de comprendre globalement comment les choses fonctionnent et comment aborder le reste du sujet.
Ensuite, ils devront mener une analyse plus approfondie de la façon dont la solution de virtualisation gère l'émulation du matériel. Il existe trois possibilités: une émulation complète des appareils, une para-virtualisation et un accès direct (passthrough) à l'invité. Ils choisiront avec l'équipe l'un de ces mécanismes pour approfondir leurs recherches.
Enfin, ils utiliseront toutes les connaissances acquises lors de la phase de recherche pour attaquer le mécanisme d'émulation étudié. Différentes approches telles que le fuzzing, la rétro-ingénierie manuelle ou toutes les techniques auxquelles ils peuvent penser peuvent être utilisées pour tester la force de la plate-forme de virtualisation et essayer de s'échapper de la matrice en exploitant l'interface d'émulation matérielle.
A l'issue du stage, nous devrions avoir une connaissance approfondie (et une documentation) des mécanismes d'émulation matérielle de la solution de virtualisation choisie et une évaluation des possibilités d'échapper à cet environnement virtualisé en exploitant l'interface d'émulation matérielle.
Le but de ce stage est d'étudier en profondeur comment les plateformes de virtualisation gèrent l'émulation des composants matériels (bas niveau) pour comprendre leur niveau de sécurité.
Bien entendu, le sujet est large et la première tâche sera de choisir une solution de virtualisation (Hyper-V, VirtualBox, VMWare, QEMU, etc.), en fonction de l'expérience du stagiaire, des travaux existants et des discussions avec l'équipe. Ensuite, le stagiaire étudiera son écosystème, les différents composants qui le composent et comment ils interagissent entre eux. Ces premières étapes devraient leur permettre de comprendre globalement comment les choses fonctionnent et comment aborder le reste du sujet.
Ensuite, ils devront mener une analyse plus approfondie de la façon dont la solution de virtualisation gère l'émulation du matériel. Il existe trois possibilités: une émulation complète des appareils, une para-virtualisation et un accès direct (passthrough) à l'invité. Ils choisiront avec l'équipe l'un de ces mécanismes pour approfondir leurs recherches.
Enfin, ils utiliseront toutes les connaissances acquises lors de la phase de recherche pour attaquer le mécanisme d'émulation étudié. Différentes approches telles que le fuzzing, la rétro-ingénierie manuelle ou toutes les techniques auxquelles ils peuvent penser peuvent être utilisées pour tester la force de la plate-forme de virtualisation et essayer de s'échapper de la matrice en exploitant l'interface d'émulation matérielle.
A l'issue du stage, nous devrions avoir une connaissance approfondie (et une documentation) des mécanismes d'émulation matérielle de la solution de virtualisation choisie et une évaluation des possibilités d'échapper à cet environnement virtualisé en exploitant l'interface d'émulation matérielle.
Profil recherché
Curiosité
Capacité à comprendre C ou C ++
Expérience avec les internes du système d'exploitation
Compréhension de la lecture du langage assembleur et de l'utilisation des outils de débogage
Capacité à utiliser un langage de programmation
Expérience de travail avec des désassembleurs tels que IDA Pro
Capacité à comprendre C ou C ++
Expérience avec les internes du système d'exploitation
Compréhension de la lecture du langage assembleur et de l'utilisation des outils de débogage
Capacité à utiliser un langage de programmation
Expérience de travail avec des désassembleurs tels que IDA Pro
Niveau de qualification requis
Bac + 3
Les offres de stage ou de contrat sont définies par les recruteurs eux-mêmes.
En sa qualité d’hébergeur dans le cadre du dispositif des « 100 000 stages », la Région Île-de-France est soumise à un régime de responsabilité atténuée prévu aux articles 6.I.2 et suivants de la loi n°2204-575 du 21 juin 2004 sur la confiance dans l’économie numérique.
La Région Île-de-France ne saurait être tenue responsable du contenu des offres.
Néanmoins, si vous détectez une offre frauduleuse, abusive ou discriminatoire vous pouvez la signaler
en cliquant sur ce lien.
-
EmployeurQUARKSLAB
-
Secteur d’activité de la structureEmploi - Economie - Innovation - Numérique
-
Effectif de la structureDe 51 à 250 salariés
-
Site internet de la structurehttps://quarkslab.com
-
Type de stage ou contratStage pour lycéens et étudiants en formation initiale
-
Date prévisionnelle de démarrage
-
Durée du stage ou contratPlus de 4 mois et jusqu'à 6 mois
-
Le stage est-il rémunéré ?Oui
-
Niveau de qualification requis
Bac + 3 -
Lieu du stage13 Rue Saint-ambroise
75011 PARIS 11E ARRONDISSEMENT -
Accès et transportsMetro 9 & 11