Un outil détecte 26 failles dans des systèmes d'exploitation
Des chercheurs de l’EPFL ont développé un nouvel outil baptisé USBFuzz, qui a déjà détecté 26 failles dans les groupes de pilotes USB de systèmes d’exploitation largement utilisés comme Linux, Windows et macOS.
Les groupes de pilotes USB sont des composantes qui permettent aux ordinateurs de communiquer avec des dispositifs externes via une connexion USB (Universal Serial Bus). Les connexions USB – utilisées par des dispositifs tels que des disques durs externes, des claviers, des souris ou des appareils photos – constituent les portes d’entrée d’attaques affectant des ordinateurs avec un système d’exploitation vulnérable.
Pour aider à détecter ce type de vulnérabilités, des chercheurs de l’EPFL ont développé un outil de sécurité appelé fuzzer, qui permet de tester la capacité d’un ordinateur à contrecarrer une attaque en imitant un périphérique USB. L’outil, baptisé USBFuzz, injecte des bits de données aléatoires à un ordinateur cible puis observe de manière autonome comment le logiciel de l’ordinateur gère ces entrées inattendues.
Ce travail a été effectué par Mathias Payer, chef du laboratoire HexHive de la faculté Informatique et Communications (IC) de l’EPFL, et Hui Peng, chercheur à HexHive, actuellement doctorant à l’Université de Purdue.
«Le fuzzing est une approche établie pour tester les logiciels. USBFuzz a développé cette approche pour contrôler les périphériques externes au-delà de la barrière du logiciel/matériel, explique Mathias Payer. Les périphériques sont réputés difficiles à tester; USBFuzz fournit une approche automatisée pour le faire.»
Solutions déjà en cours
Grâce à cette approche, Mathias Payer et Hui Peng ont déjà repéré 26 nouvelles failles, dont des individus malveillants pourraient potentiellement tirer parti. Seize d’entre elles étaient des nouveaux bugs concernant la mémoire avec un impact élevé sur la sécurité; ils ont été découverts dans les systèmes d’exploitation de Linux, pourtant déjà soumis à un fuzzing étendu. Trois failles ont été découvertes dans macOS, quatre dans Windows et une dans FreeBSD.
«La découvertes de failles dans FreeBSD, Windows et macOS souligne la puissance de nos efforts de pollinisation croisée et démontre la portabilité de USBFuzz», écrivent les chercheurs dans un article qui sera présenté à l’Usenix Security Symposium en août 2020.
En sus de repérer ces vulnérabilités, Mathias Payer et Hui Peng ont développé des solutions logicielles ou des correctifs. Les chercheurs collaborent actuellement avec les équipes chargées de la sécurité chez Linux, Android, Microsoft et Apple pour définir et réparer les failles découvertes. Jusque-là, onze des nouveaux bugs de mémoire ont déjà été résolus.
«Nous sommes très impressionnés par la réactivité et l’ouverture d’esprit de la communauté au cœur de la sécurité de Linux. Nos rapports d’erreurs ont été bien reçus et nous avons collaboré avec ces personnes pour développer des correctifs destinés aux pilotes individuels», ajoute Mathias Payer.