Google a lancé la série Pixel 9 avec quelques améliorations par rapport aux générations précédentes. Si les nouvelles fonctionnalités et le design se démarquent par-dessus tout, il y a également des améliorations au niveau de la sécurité. Google a révélé comment il a amélioré la sécurité contre les attaques de modem ou de bande de base dans la série Pixel 9.
L’importance de prévenir les vulnérabilités liées aux modems
Nos smartphones sont devenus une extension de nous-mêmes. Protéger ces appareils contre les attaques potentielles est crucial car ils stockent une quantité importante de données personnelles. Google a travaillé dur pour résoudre ou atténuer les vulnérabilités pouvant être présentes dans Android. Bien que les efforts les plus visibles se situent au niveau du système d’exploitation, certains composants, tels que les bandes de base, nécessitent un traitement spécial.
La bande de base fait partie de l'ensemble du matériel et des logiciels qui gèrent les signaux mobiles sur votre appareil. La bande de base et le modem de l'appareil fonctionnent ensemble pour remplir respectivement les tâches d'envoi/réception et de traitement des signaux. Lorsqu’on parle de vulnérabilités, beaucoup se concentrent principalement sur le système d’exploitation ou sur les applications. Cependant, le micrologiciel de bande de base est un composant sensible dont la nature le rend vulnérable à certains types d'attaques externes, comme les campagnes de phishing utilisant de fausses stations de base.
Google a eu des problèmes de sécurité avec les modems Exynos
Google a déjà dû faire face à des vulnérabilités de bande de base dans les puces Tensor. Le matériel de l'entreprise a hérité de ces vulnérabilités des modems Exynos sur lesquels elle s'appuie. Entre fin 2022 et début 2023, Google a découvert et divulgué une vulnérabilité de modem qui « compromet à distance un téléphone au niveau de la bande de base sans aucune interaction de l’utilisateur ». À l’époque, le géant de Mountain View conseillait aux utilisateurs de désactiver les appels VoLTE et Wi-Fi pendant qu’ils travaillaient sur un correctif.
De plus, la sécurité de la bande de base relève de la responsabilité de chaque marque Android. « Les techniques matures de renforcement des logiciels qui sont courantes dans le système d'exploitation Android, par exemple, sont souvent absentes des firmwares cellulaires de nombreux smartphones populaires », explique Google dans un article de blog. Quoi qu'il en soit, Android inclut des protections au niveau du système contre les attaques résultant de vulnérabilités potentielles de la bande de base.
C'est ainsi que Google a « protégé » le modem de la série Pixel 9 contre les vulnérabilités de la bande de base
Les Pixel 9, Pixel 9 Pro, Pixel 9 Pro XL et Pixel 9 Pro Fold utilisent un nouveau modem Exynos 5400 et un ensemble de bande de base. Le modem est non seulement plus efficace mais aussi plus sécurisé. Google a intégré plusieurs couches de sécurité au niveau matériel, en plus des couches de sécurité natives d'Android. Premièrement, « Bounds Sanitizer » empêche l'exécution de codes malveillants ou la corruption de la mémoire due aux techniques de débordement de données.
« Integer Overflow Sanitizer » est une autre mesure de sécurité mise en œuvre par Google. Le système garantit que les calculs lors du traitement des données sont précis pour empêcher les attaquants de « confondre » la bande de base avec de fausses valeurs qui provoquent un comportement inattendu. « Stack Canaries » est un système qui garantit le bon déroulement de l'exécution du code. Si un bloc de code tente de « contourner » l'ordre correct, le modem recevra une alerte.
« Control Flow Integrity (CFI) » agit de la même manière que « Stack Canaries », mais se concentre sur les « chemins » le long desquels le code est exécuté plutôt que sur l'ordre d'exécution. Si le système détecte un code qui tente de s'écarter des chemins d'exécution définis, il réinitialisera le modem. Enfin, « Auto-Initialize Stack Variables » empêche la fuite ou la manipulation de données confidentielles causées par des erreurs d'initialisation du code.
