La majorité des terminaux Android actuels contiendrait une vulnérabilité pouvant permettre à un malware de pirater les apps installées et leurs données, voire l'ensemble du terminal. Le noeud du problème viendrait du fait qu'Android, dans ses versions antérieures à KitKat (4.4), échouerait à valider les chaînes de certificats de clefs d'infrastructure publique relatives aux signatures de certaines apps, a fait savoir Jeff Forristal, directeur technique de Bluebox Security.

Selon la documentation de Google, les apps Android doivent être signées pour permettre leur installation sur l'OS, mais le certificat digital utilisé pour les signer n'a pas besoin d'être fourni par une autorité de certification tierce. Cependant, Android contient des certificats codés permettant aux apps conçues par des développeurs certifiés de donner des accès privilégiés à l'intérieur de l'OS, a aussi indiqué Jeff Forristal.

Un de ces certificats appartient à Adobe et permet à d'autres apps d'utiliser le plug-in Flash Player. Le processus typique de validation d'une chaîne de certificat utilise le chiffrement pour vérifier les relations de signature entre tous les certificats de la chaine. Une chaîne de certificats peut contenir des certificats intermédiaires, et Android commence alors à la valider si le certificat utilisé pour signer l'app a bien été signé par le certificat suivant dans la chaîne. Le processus de validation se poursuit ensuite jusqu'à atteindre le certificat de confiance Adobe.

Les apps utilisant le composant WebView sont les cibles privilégiées

Or, selon Jeff Forristal, une vulnérabilité Android permettrait à un hacker de signer une app malicieuse avec un certificat semblant a priori émaner d'Adobe, mais qui en réalité ne l'est pas. Aussi longtemps que le certificat Adobe est présent dans la chaîne de certificat de l'app, l'attaquant pourrait alors prendre le code de l'app et l'injecter dans d'autres apps installées. Le code ainsi injecté altérant leurs permissions, le pirate aurait ainsi accès à toutes les données stockées sur les apps, voire le trafic réseau, et serait alors en mesure de lancer toutes les actions possibles pour que des apps illicites soient autorisées à s'exécuter sur le terminal.

L'attaque pourrait cependant seulement être utilisée pour pirater des apps employant le composant WebView sur des versions plus anciennes qu'Android 4.4. WebView est une fonction couramment utilisées par les apps pour afficher du contenu web utilisant le navigateur d'origine Android.

Abuser le certificat Adobe n'est pas le seul vecteur d'attaque possible, Android a au moins deux autres certificats permettant un accès tronqué à des apps selon Bluebox Secuity. L'un est un certificat pour la technologie MDM développée par la société 3LM, rachetée en 2011 pour Motorola Mobility avec que ce dernier soit racheté à son tour par Google. L'autre est utilisé par Google Wallet et fournit un accès aux éléments de sécurité matériels NFC utilisés pour stocker de l'information sensible comme les numéros de cartes bancaires lors du processus de paiement. Les chercheurs en sécurité de Bluebox n'ont cependant pas eu le temps d'analyser l'impact de ce vecteur d'attaque dans le détail, mais sa simple existence viole probablement le modèle de sécurité Android pour NFC.