|
Nous souhaitons nous intéresser aux techniques utilisables pour garantir une exécution sûre de code téléchargé sur un système. Elles doivent permettre de mettre en échec les menaces dues au chargement et à l’exécution de code pernicieux. Ces considérations ne sont pas nouvelles et ont trouvé leur réponse dans tous les systèmes d’exploitation Multi-Utilisateur depuis des années. L’approche traditionnelle pour résoudre ces problèmes consiste à mettre en place un mécanisme lourd d’adressage et de protection des espaces mémoire alloués, parallèlement aux droits d’accès au système de fichiers et aux autres ressources. Cependant, il y a une différence fondamentale entre cette approche et celle nécessitée par du code mobile : le code mobile vise une exécution rapide et légère. Le code mobile ne peut donc pas se satisfaire des mécanismes existants. De plus, chaque unité en exécution doit être considérée comme appartenant à un utilisateur particulier pour fournir une protection entre ces codes mobiles et le système, et même entre les codes mobiles eux-mêmes. Les méthodes classiques de création d’utilisateurs ne peuvent pas satisfaire ce besoin. Il est donc essentiel de définir une autre stratégie de sécurité basée sur des contraintes techniques similaires : l’emploi de la mobilité dans la sécurité. Des travaux ont déjà été entrepris au sein de l’équipe de recherche d’Elisabeth Pelz au LACL et plus particulière le groupe de Fabrice Mourlin sur la spécification formelle de système concurrents mobiles. Ces travaux s’intéressent avant tout à la création d’agents mobiles à partir de spécifications formelles, autorisant ainsi une phase de validation par jeu de test. L’utilisation de ces résultats au domaine de la sécurité logicielle est une orientation importante dont l’objectif clairement annoncé est d’offrir une stratégie de surveillance d’agents mobiles communicants dont la description est initialement fournie à partir de spécifications formelles (c’est à dire résultant de la plate forme créée par Andreea Barbu et Fabrice Mourlin).
|