Des chercheurs du Secure Mobile Networking Lab (rattachés à l'université de Darmstadt) et du CNIT (rattachés à l’université de Brescia) ont publié un article intitulé « Attaques sur la coexistence sans fil : Exploitation de caractéristiques de performance inter-technologies pour l'escalade de privilèges inter-puces » dans lequel ils démontrent qu'il est possible d'extraire des mots de passe et de manipuler le trafic sur une puce WiFi en ciblant le composant Bluetooth d'un appareil. Les appareils touchés sont principalement des smartphones, à l’exemple du Nexus 5, iPhone 6, 7, 8, X et XR, 11 et SE2, ainsi que des appareils Samsung Galaxy – S6, S8, S10, S20.

Exécution de code WiFi et fuite de données via la RAM partagée WiFi/Bluetooth (CVE-2020-10368, CVE-2020-10367). (Crédit : Arxiv)

 

Les interfaces de coexistence telles que documentées pour la puce Google Nexus 5 avec les vulnérabilités découvertes marquées en rouge. (Crédit : Arxiv)

Les chercheurs ont, dans un premier temps, exécuté du code sur la puce Bluetooth ou WiFi. Une fois cette étape passée, ils expliquent avoir mené des attaques latérales sur les autres puces de l'appareil en utilisant des ressources de mémoire partagée. Il s’agit d’un déni de service OTA (Over-the-Air), qui permet d’exécuter du code mais aussi extraire des mots de passe réseau et lire des données sensibles sur des puces de Broadcom, Cypress et Silicon Labs.

Des failles difficiles à corriger

Un résumé des attaques pratiques de coexistence démontrées dans l'article scientifique. (Crédit : Arxiv)

Certaines des failles mentionnées ne peuvent être corrigées que par une nouvelle révision du matériel, indiquent les experts. Par ailleurs, les mises à jour des microprogrammes ne peuvent pas corriger tous les problèmes de sécurité identifiés. Pour preuve, les failles reposant sur le partage de la mémoire physique ne peuvent pas être corrigées par des mises à jour de sécurité, quelles qu'elles soient.

Une remédiation partielle

Toutes les failles ont été signalées aux fournisseurs de puces, et certains ont publié des mises à jour de sécurité lorsque cela était possible. Cependant, beaucoup n'ont pas résolu les problèmes de sécurité, soit parce qu'ils ne prennent plus en charge les produits concernés, soit parce qu'il est pratiquement impossible d'appliquer un correctif au micrologiciel. « Par exemple, le correctif initial a pu être contourné avec un débordement de l'interface UART (CVE-2021-22492) dans le firmware de la puce jusqu'à un correctif récent, qui a été au moins appliqué par Samsung en janvier 2021. De plus, bien que l'écriture dans la RAM Bluetooth via cette interface ait été désactivée sur les appareils iOS, l'iPhone 7 sous iOS 14.3 permettrait toujours à une autre commande d'exécuter des adresses arbitraires dans la RAM » ont précisé les chercheurs.

« La correction des architectures et du matériel des puces prendra beaucoup de temps avant d'atteindre les clients. Le déploiement de correctifs matériels nécessite une nouvelle génération de puces, et en novembre 2021, nous n'avons pas vu de génération de puces Broadcom ou Cypress qui résout le problème de la mémoire partagée » précisent les experts. Ajoutant que « les puces des derniers iPhone 12 et 13 ont une date de compilation du firmware d'octobre 2019, ce qui est antérieur à notre rapport sur la faille d'exécution de code de la mémoire partagée. Ainsi, nous nous attendons à des correctifs matériels au plus tôt lors de la sortie de l'iPhone 14 ».

La porte ouverte à d’autres vulnérabilités

« Cet article montre que la coexistence sans fil s'accompagne d'une énorme surface d'attaque et ouvre de nouveaux vecteurs de compromission pour exécuter du code malveillant au niveau des puces ». La découverte de ces problèmes architecturaux de puces nécessite un travail de rétro-ingénierie de façon à ne pas laisser la porte ouverte sur des attaques DoS et l'accès à des informations sensibles.

La conclusion qui suit n’est pas plus positive, laissant penser que d’autres stratégies d'escalade basées sur des composants inter-puces câblés pourraient voir le jour. « Comme le vecteur d'attaque se situe directement entre les puces, il contourne le système d'exploitation principal. Une correction complète nécessitera une nouvelle conception des puces. Les correctifs actuels du firmware sont incomplets » conclut l’article.