Les chercheurs du Georgia Institute of Technology et de la Ruhr University Bochum ont révélé deux nouvelles attaques par canal auxiliaire ciblant les processeurs Apple Silicon. Baptisées SLAP (Speculation Attacks via Load Address Prediction) et FLOP (False Load Output Predictions), ces vulnérabilités exploitent des failles d’exécution spéculative, mettant en péril la sécurité des navigateurs Safari et Chrome. Ces attaques permettraient de voler des informations sensibles comme les emails, l’historique de navigation ou encore des données bancaires.
Une évolution des attaques Spectre et iLeakage
Les failles SLAP et FLOP reposent sur des mécanismes similaires aux attaques Spectre et iLeakage, qui tirent parti des erreurs de prédiction de l’exécution spéculative. Ce procédé, destiné à améliorer les performances des processeurs, peut être détourné pour accéder à des données normalement protégées.
Les chercheurs ont démontré que ces nouvelles vulnérabilités vont au-delà des erreurs classiques de prédiction du contrôle de flux. Elles affectent aussi la prédiction du flux de données, ce qui permet à un attaquant d’exécuter des instructions erronées sur des données sensibles.
Comment fonctionnent les attaques SLAP et FLOP ?
SLAP : une faille exploitant le Load Address Predictor (LAP)
L’attaque SLAP vise le mécanisme Load Address Predictor (LAP) utilisé par les processeurs Apple M2, A15 et leurs successeurs. Ce système tente d’anticiper les prochaines adresses mémoire à charger pour accélérer l’exécution des instructions.
Toutefois, si cette prédiction est erronée, l’exécution spéculative peut traiter des données en dehors des zones mémoire autorisées. Cela ouvre la porte à des attaques permettant de récupérer des emails, des données de navigation ou d’autres informations sensibles.
FLOP : une attaque plus puissante exploitant le Load Value Predictor (LVP)
L’attaque FLOP, quant à elle, cible un mécanisme encore plus avancé, le Load Value Predictor (LVP), introduit avec les puces M3, M4 et A17. Ce système tente de deviner la valeur d’une donnée avant qu’elle ne soit effectivement chargée en mémoire.
Si cette prédiction est manipulée, un attaquant peut induire la lecture de valeurs incorrectes, bypassant ainsi les protections logiques de nombreux logiciels. FLOP permettrait notamment de récupérer des numéros de carte bancaire, des événements de calendrier, ainsi que l’historique de localisation stocké dans Google Maps.
Quelles sont les conséquences pour les utilisateurs Apple ?
Appareils concernés
Selon les chercheurs, les attaques SLAP et FLOP affectent les appareils Apple récents, notamment :
- Tous les MacBooks sortis depuis 2022
- Tous les Mac de bureau sortis depuis 2023
- Tous les iPhone à partir de l’iPhone 13 (2021)
- Tous les iPad Pro, Air et Mini depuis 2021
Un risque majeur pour la confidentialité
Les conséquences de ces failles sont préoccupantes, car elles permettent à un site web malveillant d’accéder à des données personnelles stockées dans d’autres onglets du navigateur. Concrètement, un attaquant pourrait :
- Lire des emails sans authentification
- Récupérer l’historique de navigation
- Accéder aux données bancaires stockées dans les formulaires de paiement
De plus, ces attaques étant basées sur du JavaScript et WebAssembly, elles peuvent être exécutées à distance sans nécessiter d’accès physique à l’appareil ciblé.
Apple a-t-il prévu un correctif ?
Les chercheurs ont informé Apple de ces failles en mai et septembre 2024, mais la firme n’a pas encore publié de correctifs. Un porte-parole d’Apple a indiqué que l’entreprise ne considère pas ces failles comme un risque immédiat.
Cependant, les chercheurs ont proposé des mesures d’atténuation et affirment que des correctifs logiciels pourraient réduire considérablement l’impact de SLAP et FLOP. Des mises à jour de Safari, macOS et iOS pourraient ainsi être déployées prochainement.
Que faire pour se protéger ?
En attendant d’éventuels correctifs de la part d’Apple, voici quelques mesures pour limiter les risques :
- Utiliser un navigateur renforcé : Chrome et Firefox proposent des options de protection contre l’exécution spéculative.
- Désactiver JavaScript sur les sites inconnus ou suspects.
- Utiliser un gestionnaire de mots de passe pour éviter que les données sensibles soient stockées dans le navigateur.
- Éviter d’ouvrir plusieurs onglets contenant des informations sensibles en même temps que des sites non fiables.