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.

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

Niveau de qualification requis

Bac + 3
  • Employeur
    QUARKSLAB
  • Secteur d’activité de la structure
    Emploi - Economie - Innovation - Numérique
  • Effectif de la structure
    De 51 à 250 salariés
  • Site internet de la structure
    https://quarkslab.com
  • Type de stage ou contrat
    Stage pour lycéens et étudiants en formation initiale
  • Date prévisionnelle de démarrage
  • Durée du stage ou contrat
    Plus de 4 mois et jusqu'à 6 mois
  • Le stage est-il rémunéré ?
    Oui
  • Niveau de qualification requis

    Bac + 3
  • Lieu du stage
    13 Rue Saint-ambroise
    75011 PARIS 11E ARRONDISSEMENT
  • Accès et transports
    Metro 9 & 11