Informations générales
Entité de rattachement
Le CEA est un acteur majeur de la recherche, au service des citoyens, de l'économie et de l'Etat.
Il apporte des solutions concrètes à leurs besoins dans quatre domaines principaux : transition énergétique, transition numérique, technologies pour la médecine du futur, défense et sécurité sur un socle de recherche fondamentale. Le CEA s'engage depuis plus de 75 ans au service de la souveraineté scientifique, technologique et industrielle de la France et de l'Europe pour un présent et un avenir mieux maîtrisés et plus sûrs.
Implanté au cœur des territoires équipés de très grandes infrastructures de recherche, le CEA dispose d'un large éventail de partenaires académiques et industriels en France, en Europe et à l'international.
Les 20 000 collaboratrices et collaborateurs du CEA partagent trois valeurs fondamentales :
• La conscience des responsabilités
• La coopération
• La curiosité
Référence
SL-DRT-25-0015
Direction
DRT
Description du sujet de thèse
Domaine
Défis technologiques
Sujets de thèse
Attaque par réutilisation de code : génération d'exploits automatiques et protections
Contrat
Thèse
Description de l'offre
Les vulnérabilités logicielles dues à des erreurs de gestion de la mémoire sont parmi les plus faciles à exploiter. Pour empêcher un attaquant d'injecter son propre code arbitraire (shellcode), les systèmes modernes appliquent généralement une prévention de l'exécution des données (DEP), souvent mise en œuvre sous la forme de permissions de segment (Write xor Execute - W^E).
Cependant, des attaques par réutilisation de code sont apparues pour contourner les protections DEP. Grâce à un problème de logique de mémoire, l'attaquant détourne le flux de contrôle du programme cible et enchaîne de petits fragments de code appelés gadgets pour construire le comportement souhaité, par le biais de la programmation orientée retour (ROP) ou de la programmation orientée saut (JOP).
Au cours des dernières années, plusieurs travaux de recherche ont exploré les moyens d'automatiser la construction d'attaques par réutilisation de code à partir d'attaques de base « sur la pile », abaissant ainsi la barrière à ces méthodes avancées. D'autre part, la protection des programmes repose sur divers mécanismes tels qu'une disposition aléatoire de la mémoire (par exemple, la randomisation de la disposition de l'espace d'adressage - ASLR), l'intégrité du flux de contrôle (CFI) ou un mécanisme de protection de la pile (par exemple, Shadow Stack) pour tenir l'attaquant en échec. Certaines de ces protections peuvent toutefois être coûteuses à mettre en œuvre (temps d'exécution, matériel spécialisé, etc.).
L'objectif général de cette thèse est d'améliorer l'état de l'art de la génération automatique d'exploits dans le but d'évaluer la sécurité de la protection contre la réutilisation des codes. Nous suivrons deux tendances :
(1) d'une part, le candidat fera progresser les méthodes d'automatisation de la réutilisation de code, en prenant en compte la connaissance de la protection pour guider la recherche vers des exploits valides uniquement, en coupant proactivement dans l'espace de recherche, et en recherchant des synergies entre le chaînage ROP/JOP et les méthodes de synthèse de programme telles que la synthèse guidée par la syntaxe ou les méthodes de synthèse stochastiques ;
(2) d'autre part, une fois que le potentiel de ces méthodes sera mieux compris, le candidat concevra une défense efficace contre elles, sur la base d'une analyse complète de leurs principales forces et faiblesses.
Université / école doctorale
Informatique - Automatique - Electronique - Electrotechnique - Mathématiques (IAEM)
Université de Lorraine
Localisation du sujet de thèse
Site
Saclay
Demandeur
Disponibilité du poste
01/10/2024
Personne à contacter par le candidat
RECOULES Frédéric frederic.recoules@cea.fr
CEA
DRT/DILS//LSL
Tuteur / Responsable de thèse
MARION Jean-Yves Jean-Yves.Marion@loria.fr
LORIA
Laboratoire de Haute Sécurité
615, rue du Jardin Botanique
BP-101
54602 Villers-lès-Nancy
FRANCE
0383592030
En savoir plus
https://binsec.github.io