Conception et développement d’algorithmes asynchrones pour la résolution de l’équation du transport des neutrons sur des architectures massivement parallèles et hétérogènes
Cette proposition de thèse s’inscrit dans le cadre de la résolution numérique d’équations aux dérivées partielles par le biais d’une discrétisation des variables. Elle s’intéresse, dans un formalisme d’éléments finis, à travailler sur la conception d’algorithmes au travers de modèles de programmation parallèle et asynchrone pour la résolution de ces équations.
Le cadre industriel applicatif est la résolution de l’équation de Boltzmann appliquée au transport des neutrons dans le cœur d’un réacteur nucléaire. Dans ce contexte, beaucoup de codes modernes de simulations’appuient sur une discrétisation par éléments finis (plus précisément, un schéma Galerkin discontinu décentré amont) pour des maillages cartésiens ou hexagonaux du domaine spatial. L’intérêt de ce travail de thèse prolonge des travaux précédents pour explorer leur extension dans un cadre d’architecture distribuée qui n’ont pas été abordé jusque-là dans notre contexte. Il s’agira de coupler des stratégies algorithmiques et numériques pour la résolution du problème à un modèle de programmation qui expose du parallélisme asynchrone.
Ce sujet s’inscrit dans le cadre de la simulation numérique des réacteurs nucléaires. Ces simulations multiphysiques coûteuses requièrent le calcul du transport des neutrons en cinétique qui peuvent être associées à des transitoires de puissance violents. La stratégie de recherche adopté pour cette thèse permettra de gagner en coût de calcul, et alliée à un modèle massivement parallèle, peut définir les contours d’un solveur neutronique efficace pour ces problèmes multiphysiques.
Un travail réussi dans le cadre de cette thèse permettra à l’étudiant de prétendre à un poste de recherche en simulation et analyse numérique de problèmes physiques complexes, par-delà la seule physique des réacteurs nucléaires.
Transformer de vision multimodale efficace pour système embarqué
La thèse proposée se concentre sur l'optimisation des transformers multimodaux de vision (ViT) pour la segmentation panoptique d'objets, en explorant deux axes principaux. Il s'agit d'abord de développer un pipeline de fusion polyvalent pour intégrer des données multimodales (RGB, IR, profondeur, événements, nuages de points), en exploitant les relations d'alignement inter-modales. Ensuite, une approche combinant le pruning et la quantification à précision mixte sera étudiée. L'objectif global est de concevoir des modèles ViT multimodaux légers, adaptés aux contraintes des systèmes embarqués, tout en optimisant leurs performances et en réduisant la complexité computationnelle.
Attaque par réutilisation de code : génération d'exploits automatiques et protections
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.