Crédit :Pixabay/CC0 Domaine public
Plusieurs programmes exécutés simultanément sur un appareil reposent sur des données stockées dans le matériel de mémoire de l'appareil, mais les informations sensibles peuvent ne pas être partagées entre tous les programmes, exposant l'appareil à une "attaque par canal latéral de synchronisation de la mémoire".
Lors d'une tentative d'accès au matériel mémoire, les délais de réponse sont notés et exploités pour récupérer des informations sensibles telles que des mots de passe ou des clés cryptographiques. La solution actuelle consistant à limiter le matériel mémoire à un seul programme ralentit le calcul.
Des chercheurs boursiers de la National Science Foundation des États-Unis basés au Massachusetts Institute of Technology ont développé une approche qui permet de partager du matériel mémoire sans compromettre la sécurité des attaques par canal latéral de synchronisation de la mémoire, et augmente la vitesse de calcul de 12 % par rapport aux solutions de pointe. La recherche est publiée dans Proceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems .
"De nos jours, il est très courant de partager un ordinateur avec d'autres, surtout si vous effectuez des calculs dans le cloud ou même sur votre propre appareil mobile", a déclaré l'auteur principal Mengjia Yan. "Grâce à ces ressources partagées, un attaquant peut rechercher des informations même très fines."
Un programme malveillant peut cibler la mémoire partagée de plusieurs manières pour accéder à des informations sensibles. L'équipe s'est concentrée sur une solution pour déjouer les attaques conflictuelles, lorsque le programme malveillant tente d'accéder à la mémoire matérielle en même temps qu'un autre programme.
"L'agresseur pique le contrôleur de mémoire, la porte de la bibliothèque, pour dire :'est-ce qu'il est occupé maintenant ?'", a déclaré le co-auteur Joel Emer. "S'ils sont bloqués parce que la porte de la bibliothèque s'ouvre déjà, parce que le programme victime utilise déjà le contrôleur de mémoire, ils vont être retardés."
Les chercheurs ont développé un schéma qui utilise une structure de graphe, connue sous le nom de graphe acyclique dirigé, ou DAG, pour traiter les requêtes et soumettre les requêtes au contrôleur de mémoire selon un calendrier fixe. La structure permet au matériel de mémoire d'être partagé en toute sécurité entre les programmes. L'équipe a nommé le schéma de sécurité DAGguise.
DAGguise pourrait être modifié pour se défendre contre différentes attaques par canal latéral qui ciblent les ressources informatiques partagées comme les réseaux sur puce.