La reconnaissance d’empreintes digitales est considérée comme une méthode d’authentification relativement sécurisée. Des publications sur les différentes façons de déjouer la sécurité du capteur d’empreintes digitales apparaissent de temps à autre, mais toutes les méthodes suggérées se résument, d’une manière ou d’une autre, à l’imitation physique du doigt du propriétaire du téléphone, que ce soit à l’aide d’un tampon en silicone ou d’une impression à l’encre conductrice. Il s’agit d’obtenir une image de haute qualité d’un doigt, et pas n’importe lequel : celui qui est enregistré dans le système.
En résumé, toutes ces méthodes s’accompagnent de nombreuses difficultés dans le monde réel. Mais est-il possible de réaliser ce tour de force de manière plus élégante, sans quitter le monde purement numérique et tous les avantages qu’il offre ? Il s’avère que c’est le cas : les chercheurs chinois Yu Chen et Yiling He ont récemment publié une étude expliquant comment pirater par force brute presque tous les smartphones Android protégés par des empreintes digitales. Ils ont appelé l’attaque BrutePrint.
Dans quelle mesure les empreintes digitales sont-elles uniques ?
Avant de nous pencher sur le travail de nos camarades chinois, quelques notions théoriques… Tout d’abord, et vous le savez peut-être, les empreintes digitales sont vraiment uniques et ne changent jamais avec l’âge.
En 1892, le scientifique anglais Sir Francis Galton a publié un ouvrage intitulé Les empreintes digitales. Il y résume les données scientifiques de l’époque sur les empreintes digitales, et les travaux de Galton jettent les bases théoriques de l’utilisation pratique ultérieure des empreintes digitales en criminalistique.
Sir Francis Galton a notamment calculé que la probabilité de concordance des empreintes digitales était « inférieure à 2<sup>36</sup>, soit une chance sur environ soixante-quatre milliards ». Les experts en médecine légale s’en tiennent encore aujourd’hui à cette valeur.
Par ailleurs, si vous vous intéressez à l’anatomie pure et dure ou aux facteurs biologiques à l’origine du caractère unique des empreintes digitales, voici un nouveau document de recherche sur le sujet.
Quelle est la fiabilité des capteurs d’empreintes digitales ?
Les travaux de Sir Francis et tout ce qui en découle se rapportent toutefois au monde analogique (chaud) et couvrent des domaines tels que la prise d’empreintes digitales, leur comparaison avec celles laissées, par exemple, sur une scène de crime, et cela s’arrête là. Mais les choses sont sensiblement différentes dans la réalité numérique (froide). La qualité de la représentation des empreintes digitales dépend de plusieurs facteurs : le type de capteur, sa taille et sa résolution et, dans une large mesure, les algorithmes de post-traitement et de comparaison de » l’image « .
Et, bien sûr, le développeur doit faire en sorte que l’appareil soit très bon marché (sinon personne ne l’achètera), qu’il permette une authentification en une fraction de seconde (sinon il sera submergé par les plaintes concernant la lenteur) et qu’il évite à tout prix les faux négatifs (sinon l’utilisateur rejettera l’ensemble du système). Il en résulte des systèmes d’authentification peu précis.
Ainsi, en ce qui concerne les capteurs utilisés dans les smartphones, les chiffres cités pour la probabilité de correspondance des fragments d’empreintes digitales sont beaucoup moins optimistes que le fameux chiffre de 1 chance sur 64 milliards. Par exemple, Apple estime la probabilité de Touch ID entre 1 et 50 000. On peut donc supposer que pour les modèles de capteurs économiques, la probabilité diminuera encore d’un ordre de grandeur ou deux.
Nous passons ainsi de milliards de combinaisons possibles à des milliers. Ce chiffre est déjà à la portée des attaques par force brute. Il ne reste donc plus au pirate potentiel qu’un obstacle à franchir : la limite du nombre de tentatives de reconnaissance d’empreintes digitales. Normalement, seules cinq d’entre elles sont autorisées, suivies d’une période prolongée de verrouillage de l’authentification par empreinte digitale.
Cet obstacle peut-il être surmonté ? Yu Chen et Yiling He y répondent par l’affirmative dans leur étude.
BrutePrint : préparation à l’utilisation de la force brute pour les smartphones Android protégés par une empreinte digitale
La méthode du chercheur repose sur une faille dans l’implémentation générique du capteur d’empreintes digitales des smartphones Android : aucun des modèles testés ne chiffre le canal de communication entre le capteur et le système. Cela ouvre la possibilité d’une attaque MITM sur le système d’authentification : avec un dispositif connecté au smartphone via le port SPI de la carte mère, il est possible d’intercepter les messages entrants du capteur d’empreintes digitales et d’envoyer ses propres messages en émulant le capteur d’empreintes digitales.
Les chercheurs ont construit un tel dispositif (pseudo-capteur) et l’ont complété par un gadget permettant de cliquer automatiquement sur l’écran du capteur du smartphone. La partie matérielle a donc été mise en place pour alimenter les smartphones en images d’empreintes digitales multiples en mode automatique.
À partir de là, ils ont procédé à la préparation de spécimens d’empreintes digitales pour l’attaque par force brute. Les chercheurs ne révèlent pas la source de leur base de données d’empreintes digitales, se limitant à des spéculations générales sur la manière dont les pirates ont pu l’obtenir (collections de recherche, fuites de données, propre base de données).
L’étape suivante a consisté à soumettre la base de données d’empreintes digitales à une IA afin qu’elle génère une sorte de dictionnaire d’empreintes digitales pour maximiser les performances de l’attaque par force brute. Les images d’empreintes digitales ont été adaptées par l’IA pour correspondre à celles générées par les capteurs installés sur les smartphones participant à l’étude.
Les deux failles à la base de l’approche BrutePrint : Cancel-After-Match-Fail et Match-After-Lock
L’attaque BrutePrint exploite deux failles. Les chercheurs les ont découvertes dans la logique de base du cadre d’authentification par empreintes digitales qui, à première vue, est fourni avec tous les smartphones Android sans exception. Les vulnérabilités étaient appelées Cancel-After-Match-Fail (annulation après l’échec de la correspondance) et Match-After-Lock (correspondance après verrouillage).
La faille Cancel-After-Match-Fail
Cancel-After-Match-Fail (CAMF) exploite deux caractéristiques importantes du mécanisme d’authentification par empreinte digitale. La première est le fait que ce mécanisme repose sur un échantillonnage multiple, ce qui signifie que chaque tentative d’authentification utilise non pas une mais une série de deux à quatre images d’empreintes digitales (en fonction du modèle de smartphone). La seconde est le fait qu’en plus de l’échec, une tentative d’authentification peut également entraîner une erreur ; dans ce cas, le mécanisme revient au début.
Cela permet d’envoyer une série d’images se terminant par un cadre prédéfini pour déclencher une erreur. Ainsi, si l’une des images de la série déclenche une correspondance, l’authentification est réussie. Si ce n’est pas le cas, le cycle se terminera par une erreur, après quoi une nouvelle série d’images pourra être soumise sans perdre la précieuse tentative.
La faille Match-After-Lock
La deuxième faille est appelée Match-After-Lock (MAL). La logique d’authentification par empreinte digitale prévoit une période de verrouillage après un échec, mais de nombreux fournisseurs de smartphones ne parviennent pas à mettre en œuvre correctement cette fonctionnalité dans leurs versions d’Android. Ainsi, même si l’authentification des empreintes digitales n’est pas possible en mode verrouillage, il est toujours possible de soumettre de plus en plus de nouvelles images, auxquelles le système répondra toujours par une valeur » vrai » ou » faux « . En d’autres termes, une fois que vous avez détecté l’image correcte, vous pouvez l’utiliser dès que le système n’est plus verrouillé, ce qui permet de mener à bien l’authentification.
Attaques exploitant Cancel-After-Match-Fail et Match-After-Lock
L’attaque exploitant la première faille a été couronnée de succès pour tous les smartphones testés équipés d’Android authentique, mais pour une raison inconnue, elle n’a pas fonctionné avec HarmonyOS. La faille Match-After-Lock a été exploitée sur les smartphones vivo et Xiaomi, ainsi que sur les deux téléphones Huawei fonctionnant sous HarmonyOS.
Tous les smartphones Android et HarmonyOS participant à l’étude se sont avérés vulnérables à au moins une des attaques décrites. Cela signifie qu’ils autorisent tous un nombre indéfini de tentatives malveillantes d’authentification par empreinte digitale.
Selon l’étude, il a fallu entre 2,9 et 13,9 heures pour pirater le système d’authentification d’un smartphone Android avec une seule empreinte digitale enregistrée. Mais pour les smartphones ayant le nombre maximum d’empreintes enregistrées pour un modèle donné (quatre pour Samsung, cinq pour tous les autres), le temps a été considérablement réduit : le piratage a pris de 0,66 à 2,78 heures.
Qu’en est-il des iPhones ?
Le système Touch ID utilisé dans les iPhones s’est avéré plus résistant à BrutePrint. Selon l’étude, le principal avantage de l’iPhone est que la communication entre le capteur d’empreintes digitales et le reste du système est cryptée. Il n’y a donc aucun moyen d’intercepter ou de fournir au système une empreinte digitale préparée sur un appareil équipé de Touch ID.
L’étude souligne que les iPhones peuvent être partiellement vulnérables aux manipulations utilisées pour maximiser le nombre de tentatives de reconnaissance d’empreintes digitales. Mais ce n’est pas aussi grave qu’il n’y paraît : alors que les smartphones Android permettent de prolonger les tentatives à l’infini, sur les iPhones, le nombre de tentatives ne peut être augmenté que de 5 à 15.
Les utilisateurs d’iOS peuvent donc dormir sur leurs deux oreilles : Touch ID est beaucoup plus fiable que l’authentification par empreinte digitale utilisée dans Android et HarmonyOS. De plus, de nos jours, la plupart des modèles d’iPhone utilisent de toute façon Face ID.
À quel point tout cela est-il dangereux ?
Les propriétaires de smartphones Android ne devraient pas non plus s’inquiéter outre mesure de BrutePrint : en pratique, cette attaque ne constitue pas une menace majeure. Il existe plusieurs raisons à cela :
- BrutePrint nécessite un accès physique à l’appareil. Ce seul facteur réduit considérablement la probabilité qu’un tel événement vous arrive.
- De plus, pour réussir l’attaque, il faut ouvrir l’appareil et utiliser un connecteur spécifique sur la carte mère. Faire cela à l’insu du propriétaire n’est pas facile.
- Même dans le meilleur des cas, l’attaque nécessitera un temps considérable, mesuré en heures.
- Et, bien sûr, BrutePrint nécessite une configuration particulière – à la fois matérielle et logicielle – comprenant un équipement personnalisé, une base de données d’empreintes digitales et une intelligence artificielle entraînée.
La combinaison de ces facteurs rend extrêmement improbable l’utilisation d’une telle attaque dans la vie réelle : à moins que des personnes à l’esprit d’entreprise ne construisent un produit commercial facile à utiliser sur la base de l’étude.
Protéger les smartphones Android contre les attaques par force brute des empreintes digitales
Si, malgré tout, vous craignez d’être victime d’une telle attaque, voici quelques conseils pour vous en prémunir :
- Enregistrez le moins d’empreintes digitales possible (idéalement une seule). Plus vous utilisez de doigts pour l’authentification, plus le système devient vulnérable à la tactique décrite ainsi qu’à d’autres attaques.
- N’oubliez pas d’utiliser un code PIN ou un mot de passe supplémentaire pour les applications disposant de cette option.
- Par ailleurs, la fonction AppLock disponible dans la version payante de Kaspersky pour Android permet d’utiliser des mots de passe distincts pour chacune de vos applications.