BENABIDALLAH Raounak

Soutenance de thèse de doctorat - Raounak BENABIDALLAHRaounak BENABIDALLAH, en vue de l’obtention du grade de docteur en « INFORMATIQUE », présentera ses travaux intitulés : « Identification automatique des vulnérabilités de sécurité dans les systèmes logiciels » le 30 novembre.

Résumé

La menace posée par les vulnérabilités logicielles croît de manière exponentielle. Ce phénomène est dû, d'une part, à l'omniprésence des logiciels, et d'autre part, au nombre important de failles existantes. Pour faire face à ce problème, plusieurs stratégies ont été élaborées au fil du temps. Certaines visent à mettre en place de bonnes pratiques de développement et les intégrer dès la phase de conception tandis que d'autres consistent à effectuer des inspections de sécurité en indiquant les zones vulnérables. Cette thèse s’inscrit dans la deuxième catégorie de travaux et porte essentiellement sur la construction de modèles de prédiction de vulnérabilités. La création de ces derniers soulève différents problèmes. Le plus important étant le manque de données sur les vulnérabilités logicielles. À cet effet, nous mettons en place une chaîne de traitement complète allant de la création et l’annotation automatique d’un corpus de sécurité jusqu’à la construction et l’évaluation des modèles de prédiction de vulnérabilités. La première contribution de cette thèse est plus axée sur l'approche de construction de corpus que sur le corpus lui-même. L’approche est basée sur la conception de méta-scanners de vulnérabilités permettant d'identifier des vulnérabilités de code efficacement. Cela consiste à combiner plusieurs outils d'analyse statique en se basant sur leurs performances individuelles pour chaque catégorie de vulnérabilités. Notre deuxième contribution correspond au corpus SecureQualitas qui consiste en un corpus d'applications Java annotées avec les vulnérabilités qu'elles contiennent. Nous construisons ce corpus en utilisant un méta-scanner construit à l’aide de trois outils d’analyse de vulnérabilités. Enfin, notre troisième contribution est de construire un modèle de prédiction du code vulnérable. Nous avons opté pour l'utilisation de métriques de qualité pour caractériser le code et nous avons étudié les performances des modèles à la fois sur des catégories de vulnérabilités apprises par les modèles et sur des catégories non encore connues par le modèle. Les résultats de nos expérimentations ont montré l'efficacité des modèles sur les deux populations de vulnérabilités : connues et non connues.

Mots clés : Analyse statique, identification de vulnérabilités, modèles de prédiction

Abstract

Automatic identification of security vulnerabilities in software systems 

The threat caused by software vulnerabilities is growing exponentially. This phenomenon is due, on the one hand, to the omnipresence of software, and on the other hand, to the large number of existing vulnerabilities. To deal with this problem, several strategies have been developed over time. Some aim to establish good development practices and integrate them right from the design phase, while others consist of carrying out security inspections by identifying vulnerable areas. This thesis is related to the second category of work and focuses on the construction of vulnerability prediction models. The creation of the latter raises various problems.  The most important one is the lack of data on software vulnerabilities. For this purpose, we are setting up a complete processing chain from the creation and annotation of a security corpus to the construction and evaluation of vulnerability prediction models.

The first contribution of this thesis focuses more on the corpus construction approach than on the corpus itself. The approach is based on the design of vulnerability meta-scanners allowing to identify code vulnerabilities efficiently. This consists in combining several static analysis tools based on their individual performance for each category of vulnerabilities. Our second contribution corresponds to the SecureQualitas corpus which consists of a corpus of Java applications annotated with the vulnerabilities they contain. We build this corpus using a meta-scanner built with three vulnerability analysis tools. Finally, our third contribution is to build a prediction model of vulnerable code.  We opted and studied the use of quality metrics to characterize code and we have studied the performance of the models both on categories of vulnerabilities learned by the models and on categories not yet known by the model. The results of our experiments showed the efficiency of the models on both populations of vulnerabilities: known and unknown.

 

Key words:Static analysis, vulnerability identification, prediction models

 

Thèse en direct

Assistez à cette thèse en direct sur Youtube

Membres du jury

  • Prof. Tegawendé BISSYANDE, Université du Luxembourg, Laboratoire SnT
  • Dr Tibermacine CHOUKI, Maître de Conférences HDR, Université de Montpellier, LIRMM
  • Dr Christelle URTADO, Maître de Conférences HDR - IMT Mines Alès
  • Prof. Isabelle BORNE, Université Bretagne Sud - IRISA
  • Prof. Salah SADOU, Université Bretagne Sud - IRISA

 

 Les travaux ont été encadrés par Salah Sadou et Isabelle Borne

École doctorale MathSTIC

Informations pratiques

Lundi 30 novembre 2020 à 10h

Arrêté du 27 octobre 2020 - soutenance dématérialisée

École Nationale Supérieure d'Ingénieurs de Bretagne Sud - Vannes