Détecter les failles de sécurité sur Android avant les hackers
Des chercheuses et chercheurs de l’EPFL spécialisés en informatique et communications piratent les téléphones Android et corrigent les bugs avant les hackers malveillants. Ils ont détecté 31 failles de sécurité dans le système Android, étudié les risques et développé des méthodes pour atténuer quelques failles majeures grâce à de meilleurs tests et à des mesures d’atténuation plus vastes.
«Les vulnérabilités dans les dispositifs intelligents sont les talons d’Achille qui peuvent compromettre les aspects les plus critiques d’un appareil mobile», indique Mathias Payer, qui dirige le Laboratoire HexHive de l’EPFL et mène des travaux de recherche en cybersécurité. «Le principal risque est que des hackers s’introduisent dans votre système et aient un accès permanent à vos données, tant que vous avez le même téléphone. Votre téléphone n’est alors plus sûr.»
Mathias Payer, responsable du Laboratoire HexHive - 2024 EPFL/Murielle Gerber - CC-BY-SA 4.0
Les diverses failles de sécurité critiques identifiées par les chercheuses et chercheurs auraient pu être exploitées pour voler des informations personnelles telles que les empreintes digitales, les données faciales, ainsi que d’autres données sensibles stockées sur le téléphone, comme les informations relatives à la carte de crédit ou à la sécurité sociale.
«Nous avons étudié le système Android en raison de la nature ouverte de sa plateforme, mais des failles de sécurité similaires sont probablement présentes dans l’écosystème de l’iPhone. La recherche publique en matière de sécurité sur les iPhones est beaucoup moins répandue en raison de l’approche fermée d’Apple, qui oblige les chercheuses et chercheurs à procéder d’abord à une rétroconception des informations essentielles disponibles publiquement sur Android», explique Mathias Payer.
Marcel Busch, postdoctorant au Laboratoire HexHive aux côtés de Mathias Payer, a mené les recherches sur les couches privilégiées d’Android avec les doctorants Philipp Mao et Christian Lindenmeier. Leurs travaux ont abouti à trois publications présentées lors de l’événement Usenix Security Symposium de cette année, l’un des quatre principaux événements mondiaux en matière de cybersécurité. Dans leurs travaux, ils expliquent comment ces failles de sécurité se manifestent et quelles sont les couches de l’architecture du système Android concernées.
L’essentiel des failles de sécurité d’Android sur trois couches
Le système Android traite essentiellement les informations via trois couches de code (l’iOS de l’iPhone suit une architecture similaire).
La première couche est le Secure Monitor. Il s’agit du code qui traite les commutations vers et depuis l’environnement de données cryptées appelé Secure World. La deuxième couche est divisée en deux parties: l’environnement sécurisé (Secure World) où les données sensibles sont cryptées et l’environnement normal (Normal World) basé sur un noyau Linux. La troisième couche s’appuie sur la deuxième couche et contient toutes les applications. Comme l’application photo ou l’application de messagerie, les applications quotidiennes communiquent dans l’environnement normal avec des applications sécurisées appelées applications de confiance (Trusted Applications ou TA), telles que l’application maîtresse qui gère les clés cryptographiques ou l’application de gestion des informations biométriques, qui contiennent des données sensibles sur l’utilisatrice ou l’utilisateur et qui fonctionnent dans l’environnement sécurisé.
2024 EPFL/HexHive Laboratory - CC-BY-SA 4.0
De nombreuses failles et vulnérabilités détectées
L’équipe de l’EPFL a découvert des failles de sécurité dans les trois couches du système Android. Les chercheuses et chercheurs ont développé un programme, EL3XIR, qui consiste à envoyer des données inattendues au code cible afin de révéler les failles et les vulnérabilités des logiciels, une technique appelée fuzzing. EL3XIR a détecté 34 bugs dans la couche de sécurité Android la plus fondamentale et la plus privilégiée, le Secure Monitor, dont 17 ont été classés comme critiques sur le plan de la sécurité (le niveau de risque le plus élevé).
Les chercheuses et chercheurs ont également révélé une confusion dans la manière dont le système Android communique avec les applications de confiance. Cette confusion a lieu lorsque des informations provenant d’applications de confiance sont mal étiquetées lors de leur traitement entre les couches. En particulier, l’interaction complexe et critique entre les applications quotidiennes accessibles et les applications de confiance, qui doit d’abord passer par le Secure Monitor, puis remonter dans l’environnement sécurisé et dans les applications de confiance, est concernée par ce problème. Sur les 15 000 applications de confiance analysées, les chercheuses et chercheurs ont découvert 14 nouvelles failles de sécurité critiques, 10 bugs corrigés discrètement par les fournisseurs sans en informer les utilisatrices et utilisateurs, et ont confirmé 9 bugs connus.
Mathias Payer, Marcel Busch et Philipp Mao du Laboratoire HexHive - 2024 EPFL/Murielle Gerber - CC-BY-SA 4.0
Ils ont également découvert que, si les fournisseurs ne mettaient pas correctement à jour le système Android avec des correctifs sécurisés, les hackers pouvaient forcer une rétrogradation vers des versions antérieures vulnérables d’applications de confiance et récupérer des données sensibles, compromettant ainsi l’ensemble de l’écosystème Android sur toute l’architecture à trois couches. Les chercheuses et chercheurs ont analysé plus de 35 000 applications de confiance déployées par de nombreux fabricants de téléphones.
«Android est un écosystème complexe avec de nombreux fournisseurs et appareils différents. La correction des failles de sécurité est difficile», précise Philipp Mao, doctorant au Laboratoire HexHive. «Nous avons respecté les normes du secteur en révélant de manière responsable tous nos résultats aux fournisseurs concernés, et nous leur avons donné 90 jours pour développer des correctifs pour leurs systèmes – ce qu’ils ont fait – avant de publier des informations. Les enseignements tirés de nos conclusions et de notre outil automatisé contribueront à sécuriser les futurs systèmes.»
Qu’est-ce que cela signifie pour les consommatrices et consommateurs? Ils doivent maintenir leur système et leurs applications à jour en installant les mises à jour dès qu’elles sont disponibles, télécharger les applications uniquement via des app stores de confiance et acheter un appareil auprès d’un fabricant qui garantit de longs cycles de mise à jour. Marcel Busch observe que «pour certains des fabricants que nous avons étudiés, le délai de mise sur le marché est l’indicateur clé, ce qui laisse peu de place à l’attention nécessaire pour la création de systèmes sécurisés».