Thèse soutenue

Développement et évaluation d'obfuscations de protocoles basées sur la spécification

FR  |  
EN
Auteur / Autrice : Julien Duchene
Direction : Vincent NicometteEric AlataColas Le Guernic
Type : Thèse de doctorat
Discipline(s) : Réseaux, Télécoms, Systèmes et Architecture
Date : Soutenance le 20/12/2018
Etablissement(s) : Toulouse, INSA
Ecole(s) doctorale(s) : École Doctorale Mathématiques, Informatique et Télécommunications (Toulouse)
Partenaire(s) de recherche : Laboratoire : LAAS - Laboratoire d'Analyse et d'Architecture des Systèmes - Laboratoire d'analyse et d'architecture des systèmes / LAAS
Jury : Président / Présidente : Mohamed Kaâniche
Examinateurs / Examinatrices : Sarah Zennou, Georges Bossert
Rapporteurs / Rapporteuses : Marie-Laure Potet, Jean-Yves Marion

Résumé

FR  |  
EN

Il existe de plus en plus de protocoles de communications différents. La spécification de beaucoup d’entre eux est disponible. Cependant, quand il s’agit de moyens de communication propriétaires, cette spécification est gardée secrète : un attaquant qui aurait accès à cette spécification pourrait compromettre un système utilisant ce protocole. Même s’il n’a pas accès à cette spécification, l’attaquant peut l’obtenir par rétro-conception. Ainsi, il est intéressant de créer des protocoles qui sont difficiles à rétro-concevoir. Dans cette thèse, nous proposons une nouvelle approche spécifiquement développée pour rendre complexe la rétro-conception de protocole. Nous appliquons pour cela des obfuscations au format du message et ceci de façon automatique à partir de la spécification du protocole. Pour cela, nous avons dans un premier temps étudié plus de 30 contributions différentes concernant des outils de rétro-conception de protocole et en avons tiré des conclusions suivantes : 1) les outils de rétro-conception de protocole pratiquent l’inférence de modèles réguliers ; 2) ils supposent que le parsing d’un message s’effectue de gauche à droite ; 3) ils délimitent le message en champs d’après des délimiteurs bien connus ou via des algorithmes ad-hoc ; 4) ils regroupent les messages d’après des mesures de similarité sur des patterns. Ainsi, pour créer un protocole difficile à rétro-concevoir, une solution est de s’assurer que le protocole ne respecte pas ces conditions. Dans un second temps, nous avons donc proposé un modèle de format de messages qui permet l’application d’obfuscations. Nous avons défini des obfuscations atomiques qui peuvent être composées. Chacune de ces obfuscations cible une ou plusieurs des hypothèses des outils de rétro-conception. La composition des obfuscations assure l’efficacité de notre solution et rend la rétro-conception de protocole complexe. Ce modèle est utilisé pour générer automatiquement le code du parseur, du sérialiseur et des accesseurs. Cette solution est implémentée dans un prototype nommé ProtoObf grâce auquel nous avons pu évalué les performances des obfuscations. Les résultats montrent une nette augmentation de la complexité de la rétro-conception avec le nombre de compositions d’obfuscation tandis que les coûts induits (particulièrement la taille du buffer sérialisé) restent bas.