Return to search

Enforcing information-flow policies by combining static and dynamic analyses

Tableau d'honneur de la Faculté des études supérieures et postdoctorales, 2018-2019 / Le contrôle de flot d’information est une approche prometteuse permettant aux utilisateurs decontrôler comment une application utilise leurs informations confidentielles. Il reste toutefois plusieurs défis à relever avant que cette approche ne puisse être utilisée par le grand public. Plus spécifiquement, il faut que ce soit efficace, facile à utiliser, que ça introduise peu de surcharge à l’exécution, et que ça fonctionne sur des applications et langages réels. Les contributions présentées dans cette thèse nous rapprochent de ces buts. Nous montrons qu’une combinaison d’analyse statique et dynamique permet d’augmenter l’efficacité d’un mécanisme de contrôle de flot d’information tout en minimisant la surcharge introduite. Notre méthode consiste en trois étapes : (1) à l’aide d’analyse statique, vérifier que le programme ne contient pas de fuites d’information évidentes; (2) instrumenter l’application (c.-à-d., insérer des commandes) pour prévenir les fuites d’information confidentielles à l’exécution; (3) évaluer partiellement le programme pour diminuer l’impact de l’instrumentation sur le temps d’exécution. Pour aider les utilisateurs à identifier les applications qui sont les plus susceptibles de faire fuirde l’information confidentielle (c.à.d., les applications malicieuses), nous avons développé un outil de détection de maliciel pour Android. Il a une précision de 94% et prend moins d’une seconde pour effectuer son analyse.Pour permettre aux utilisateurs de prioriser l’utilisation de ressources pour protéger l’information provenant de certaines sources, nous introduisons le concept defading labels. Pour permettre aux chercheurs de développer plus facilement et rapidement des mécanismes de contrôle de flot d’informations fiables, nous avons développé un outil permettant de générer automatiquement la spécification d’un mécanisme à partir de la spécification d’un langage de programmation. Pour permettre aux chercheurs de plus facilement communiquer leurs preuves écrites en Coq, nous avons développé un outil permettant de générer des versions en langue naturelle de preuves Coq. / Information-flow control is a promising approach that enables users to track and control how applications use their sensitive information. However, there are still many challenges to be addressed before it can be used by mainstream users. Namely, it needs to be effective, easy to use, lightweight, and support real applications and languages. The contributions presented in this thesis aim to bring us closer to these goals. We show that a combination of static and dynamic analysis can increase the overall effectiveness of information-flow control without introducing too much overhead. Our method consists of three steps: (1) using static analysis, we verify that the program does not contain anyobvious information leaks; (2) we instrument the program to prevent less obvious leaks from occurring at runtime; (3) we partially evaluate the program to minimize the instrumentation’simpact on execution time. We present a static-based malware detection tool for Android that allows users to easily identify the applications that are most likely to leak sensitive information (i.e., maliciousapplications). It boasts an accuracy of 94% and takes less than a second to perform its analysis. We introduce the concept of fading-labels, which allows information-flow control mechanisms to prioritize the usage of resources to track information from certain sources. We present a tool that can, given a programming language’s specification, generate information-flow control mechanism specifications. This should allow researchers to more easily develop information-flow control mechanisms. Finally, we present a tool that can generate natural-language versions of Coq proofs so that researchers may more easily communicate their Coq proofs.

Identiferoai:union.ndltd.org:LAVAL/oai:corpus.ulaval.ca:20.500.11794/33727
Date22 February 2019
CreatorsBedford, Andrew
ContributorsDesharnais, Josée, Tawbi, Nadia
Source SetsUniversité Laval
LanguageFrench
Detected LanguageFrench
Typethèse de doctorat, COAR1_1::Texte::Thèse::Thèse de doctorat
Format1 ressource en ligne (xiii, 151 pages), application/pdf
Rightshttp://purl.org/coar/access_right/c_abf2

Page generated in 0.0021 seconds