Les terminaux mobiles sont vulnérables à de nombreuses attaques qui ne viennent pas uniquement de failles logicielles. Parfois aussi, leurs composants matériels sont aussi pris en défaut comme cela a été le cas par exemple de processeurs (Intel, AMD...) exposés à la faille Spectre/Meltdown. Cette fois ce sont les DSP (digital signal processor), des puces spécialisées dans le traitement audio numérique embarquées dans les SoC de Mediatek équipant plus des deux-tiers des smartphones et terminaux IoT dans le monde dont des Xiaomi, Oppo, Realme et Vivo.
Des chercheurs en sécurité de Check Point Software ont en effet découvert plusieurs vulnérabilités dans le firmware des DSP Mediatek. « En remontant dans les bibliothèques des partenaires OEM, les problèmes de sécurité que nous avons trouvés pourraient conduire à une élévation des privilèges locaux à partir d'une application Android. Une exploitation réussie des vulnérabilités du DSP pourrait potentiellement permettre à un attaquant d'écouter les conversations des utilisateurs et/ou de masquer du code malveillant », ont expliqué les chercheurs. Les vulnérabilités découvertes dans le micrologiciel DSP (CVE-2021-0661, CVE-2021-0662, CVE-2021-0663) ont déjà été corrigées et publiées dans le bulletin de sécurité Mediatek d'octobre 2021. Concernant la CVE-2021-0673, cette dernière a été corrigée le mois dernier et sera publiée dans le prochain bulletin de sécurité de décembre du fournisseur.
La couche d'abstraction matérielle du DSP aussi visée
Pour effectuer son test de rétroingénierie, Check Point a utilisé un smartphone Xiaomi Redmi Note 9 5G basé sur le chipset MT6853 (Dimension 800U) tournant sur la version 12.5.2.0 de la surcouche MIUI Global (Android 11 RP1A.200720.011). Selon l'éditeur, les vulnérabilités peuvent être utilisées par une application Android détournée pour infecter le DSP d'un SoC Mediatek avec des logiciels malveillants et espionner les utilisateurs. Les pirates peuvent installer un malware en provoquant la génération d'une faille logicielle de type heap overflow. Dans ce scénario, des parties de la mémoire d'un processeur qui contiennent des données d'application sont écrasées par du code malveillant.
Les chercheurs ont ausi trouvé un moyen « d'attaquer » le DSP depuis Android au travers du driver /dev/audio_ipi et en trouvant le moyen d'exploiter la couche d'abstraction matérielle (HAL) pour y accéder depuis le contexte mtk_hal_audio. « En cherchant un moyen d'attaquer Android HAL, nous avons trouvé plusieurs paramètres audio dangereux implémentés par Mediatek à des fins de débogage. Une application Android tierce peut abuser de ces paramètres pour attaquer les bibliothèques MediaTek Aurisys HAL », expliquent les chercheurs.