Memory-Constrained Security Enforcement
Chamseddine Talhi · 2007
Avec l'extension des cellulaires, des réseaux sans fil et des périphériques mobiles, Java est devenu incontestablement l'environnement d'exécution le plus populaire. Cela est dû à ses aspects de sécurité, portabilité, mobilité et réseaux. Dans ce contexte, la plateforme de choix est Java ME-CLDC. Aussi, vu le nombre grandissant d'applications Java destinées aux périphériques mobiles, la sécurité est devenue un enjeu crucial à considérer d'une manière primordiale. Sécuriser ce type d'applications devient plus qu'impératif, notamment lorsque celles-ci manipulent des données confidentielles telles que les informations relatives aux transactions électroniques. Plus encore, les périph ériques supportant Java se retrouvent souvent interconnectées, ce qui signifie que les applications peuvent ainsi créer des connexions réseaux et faire circuler des données critiques sur les canaux de communications. Cependant, les efforts considérables déployés afin de sécuriser Java ME-CLDC se heurtent à des contraintes de limitations strictes de l'espace mémoire disponible, au sein des périphériques en question. Dans cette optique, cette thèse étudie le problème du maintien de la sécurité sous contraintes mémoire, et cela en analysant la sécurité de la plateforme Java ME-CLDC. Plus précisément, les objectifs majeurs de notre sujet de recherche sont (1) l'évaluation et l'amélioration de la sécurité de Java ME-CLDC et (2) la modélisation du monitoring d'exécution (EM) en y introduisant des contraintes mémoire. à vrai dire, EM constitue une classe importante et omniprésente parmi tous les mécanismes de sécurité utilisés dans les plateformes Java. Les principaux résultats auxquels a abouti notre investigation sont les suivants : - Une analyse de la sécurité de Java ME-CLDC. Les deux contributions principales qu'a engendré cette analyse sont l'analyse de vulnérabilité et l'analyse des risques de cette plateforme. L'analyse de vulnérabilité a révélé la présence de certaines faiblesses dans la plateforme, elle a montré également la manière permettant d'améliorer son modèle de sécurité. Quant à l'analyse des risques, elle a fourni une estimation de la gravité des risques associés aux vulnérabilités décelées. - Une modélisation du monitoring d'exécution sous contraintes mémoire. Cette modélisation couvre aussi bien les moniteurs conventionnels que des moniteurs plus puissants. Les contributions principales qui découlent de notre modélisation sont les suivantes: Premièrement, nous avons défini une nouvelle classe d'automates, dite Bounded History Automata (BHA) ou automates à historique borné, classe d'automate qui permet de spécifier les mécanismes EM opérant sous contraintes mémoire. Deuxièmement, nous avons identifié une nouvelle taxonomie orientée mémoire des propriétés assurées par EM. Troisièmement, nous avons étudié les propriétés localement testables qui peuvent être assurées par des EMs opérant sous contraintes mémoire. Cela est fait en deux étapes: on commence par identi- fier les propriétés assurées par EMs qui sont de nature locale, ensuite on vérifie si ces dernières peuvent être spécifiées par des BHAs.