Résumé
Android étant le système d’exploitation pour mobiles le plus utilisé, il est crucial de pouvoir s’assurer, autant pour l’utilisateur que pour le développeur d’applications, que ces dernières sont fiables.Une des techniques pour vérifier cette fiabilité est l’analyse statique (analyse de diverses caractéristiques du programme sans l’exécuter).
Dans ce travail il sera question, plus précisément, de la construction des graphes d’appels de ces applications (ici, à partir de leur bytecode Dalvik) qui peuvent aider à mettre en évidence des structures de code dangereuses.
Cependant, il n’existe pas d’outil de construction de graphes d’appels à l’heure actuelle qui inclut toutes les spécificités d’Android (intents, fichiers de layout, ...) dans ses graphes d’appels, ce qui est utile pour avoir un vision plus précise des appels entre méthodes (dont certains pourraient être cachés par ces spécificités d’Android).
Pour construire ces graphes d’appels, un outil qui existe déjà - Rundroid - sera exploité et amélioré. Ils pourront être générés soit via l’algorithme RTA ou XTA (tels qu’exposés dans le papier de TIP et PALSBERG), soit via l’algorithme 0-CFA de Jean PRIVAT.
Ces graphes prennent en compte les points d’entrée multiples, les fichiers de layout, la réflexion et les intents, ce qui permet une analyse plus détaillée et plus précise de l’application.
la date de réponse | 22 juin 2020 |
---|---|
langue originale | Français |
L'institution diplômante |
|
Superviseur | Wim VANHOOF (Promoteur) |