Il y a toujours un décalage entre le moment où des failles sont découvertes, la mise en place de correctifs et l’application des mises à jour. Mais pendant ce laps de temps, les pirates n’hésitent pas à saisir cette opportunité pour attaquer les terminaux ou les logiciels vulnérables. Et c’est de cela qu’il s’agit avec un ensemble de cinq vulnérabilités actives et corrigées dans le pilote du GPU Mali d’ARM que l'on retrouve sur différents SoC (MediaTek, HiSilicon Kirin et Exynos). Le problème est que les patchs ne sont toujours pas appliqués plusieurs mois après leur publication.
Les terminaux de Google, Samsung, Xiaomi, Oppo ainsi que d'autres fabricants de téléphones sont actuellement touchés et attendent la mise à jour des firmwares. A l’origine de cette alerte, il y a l’équipe de Project Zero de Google qui a mis en évidence ce « patch lag ». Les partenaires OEM ont souvent besoin de temps pour tester les correctifs et les implémenter dans les terminaux.
Plusieurs pilotes concernés par les failles
Les failles en question ont été découvertes en juin dernier. Elles sont répertoriées sous les noms de CVE-2022-33917 et CVE-2022-36449 (identifiant collectif pour plusieurs problèmes de sécurité). Le premier groupe de failles donne à un utilisateur non privilégié les moyens d’effectuer des traitements GPU inappropriés pour accéder à des sections de mémoire libre. La vulnérabilité a un impact sur les pilotes du noyau du GPU Mali d'Arm Valhall r29p0 à r38p0. Le second groupe de vulnérabilités rend possible pour un utilisateur non privilégié l'accès à la mémoire libérée, et lui permet d'écrire au-delà des limites de la mémoire tampon et de divulguer les détails des mappages de mémoire. Il affecte les pilotes de noyau de GPU Arm Mali Midgard r4p0 à r32p0, Bifrost r0p0 à r38p0 et r39p0 avant r38p1, et Valhall r19p0 à r38p0 et r39p0 avant r38p1.
Project Zero identifie ces problèmes sous les numéros 2325, 2327, 2331, 2333 et 2334 et a divulgué des détails techniques pour chacun d'entre eux, ainsi qu'un code de démonstration. Bien que le degré de gravité de ces bugs soit moyen, ils sont exploitables et ont un impact sur un grand nombre d'appareils Android. Les pilotes Valhall sont utilisés dans les puces Mali G710, G610 et G510 que l'on trouve à l'intérieur des Google Pixel 7, Asus ROG Phone 6, Redmi Note 11 et 12, Honor 70 Pro, RealMe GT, Xiaomi 12 Pro, Oppo Find X5 Pro et Reno 8 Pro, Motorola Edge et OnePlus 10R. Les pilotes Bifrost se trouvent dans les puces Mali G76, G72 et G52 plus anciennes (2018) utilisées par Samsung Galaxy S10, S9, A51 et A71, Redmi Note 10, Huawei P30 et P40 Pro, Honor View 20, Motorola Moto G60S et Realme 7. Enfin, les pilotes Midgard sont intégrés dans des puces encore plus anciennes (2016) des séries Mali T800 et T700, que l'on retrouve notamment à l'intérieur des Samsung Galaxy S7 et Note 7, Sony Xperia X XA1, Huawei Mate 8, Nokia 3.1, LG X et Redmi Note 4.