22/05/2017
Publications
Confusion de Type en C++ : État de l’Art et Difficultés de Détection
Florent Saudel / Amossys et IRISA
Abstract
Le langage C++ s’est imposé comme une référence dans les domaines où la modularité du développement ne doit pas empiéter sur les performances du logiciel final. Les principaux navigateurs, les interpréteurs et même certaines parties du système d’exploitation de Microsoft utilisent le langage C++.
L’étude des bases de données de vulnérabilités montre que ces logiciels sont sujets à une catégorie de vulnérabilités particulières, les confusions de type, qui sont tout aussi exploitables que les vulnérabilités plus connues.
Cet article présente les mécanismes à l’origine des confusions de type et dresse un état de l’art des méthodes servant à les détecter dans du code source ou du binaire seul. Il met aussi en avant les principales difficultés que rencontrent les analyses de binaire, et propose les grandes lignes d’une nouvelle approche pour détecter des confusions de type dans du binaire.