Une équipe, réunissant des chercheurs du MIT et du Georgia Institute of Technology, a mis au point une technique qui se sert de l’accéléromètre d’un smartphone placé près d’un clavier d’ordinateur pour enregistrer ce qu’une personne tape. Elle pourrait être utilisée par un logiciel espion malveillant.

au sommaire


    Où place-t-on le plus souvent son smartphone lorsque l'on s'installe devant son ordinateur ? À portée de main, généralement non loin du clavier. Cette habitude, au demeurant anodine, pourrait servir à un pirate ayant infecté le mobile avec un logiciel espionlogiciel espion (ou keylogger) capable d'enregistrer ce que l'on tape sur le clavier.

    Des chercheurs du Massachusetts Institute of Technology (MIT) et du Georgia Institute of Technology viennent de publier leurs travaux démontrant qu'il est possible de se servir de l'accéléromètre d'un smartphone pour enregistrer et reconstituer les touches qui sont frappées, à partir des vibrationsvibrations qu'elles produisent. Autrement dit, cette technique pourrait être utilisée pour récupérer des mots de passe sécurisant des applicationsapplications sensibles, espionner des échanges ou le contenu de documents. « L'accès aux informations produites par les accéléromètres n'est protégé dans aucun des systèmes d'exploitation mobiles actuels », soulignent les auteurs du projet.

    Pour réaliser leur preuve de concept, les chercheurs ont utilisé un iPhone 4 et un clavier sans fil Bluetooth Apple. Ils soulignent que la qualité de l’accéléromètre de ce modèle est supérieure à celui de l’iPhone 3GS. © <em>MIT Lincoln Laboratory, Georgia Tech Information Security Center</em>

    Pour réaliser leur preuve de concept, les chercheurs ont utilisé un iPhone 4 et un clavier sans fil Bluetooth Apple. Ils soulignent que la qualité de l’accéléromètre de ce modèle est supérieure à celui de l’iPhone 3GS. © MIT Lincoln Laboratory, Georgia Tech Information Security Center

    Leur méthode consiste à identifier les touches en mesurant la position physiquephysique et la distance entre chaque vibration qu'elles produisent. Lorsqu'une touche est pressée, l'accéléromètre du smartphone (en l'occurrence un iPhone 4) capte les vibrations en livrant les valeurs des coordonnées cartésiennes des axes x, y et z. Ces valeurs sont enregistrées à un taux d'échantillonnageéchantillonnage variable (en moyenne 100 HzHz) et analysées par deux réseaux neuronaux. L'apprentissage du système se fait en pressant 150 fois chaque touche des lettres alphabétiques du clavier. Un réseau neuronalréseau neuronal apprend à reconnaître la position horizontale de la touche tandis que l'autre traite la position verticale.

    Un taux de réussite de 80 % pour espionner les frappes

    Mais ces données brutes ne suffisent pas à identifier les touches avec assez de précision. Les chercheurs ont donc renforcé le système en créant des profils par paires de touches, qui sont ensuite confrontés à plusieurs dictionnaires afin de reconstituer les mots. Pour chaque dictionnaire, les mots sont décomposés caractère par caractère puis par couple de caractères.

    Cette méthode a permis d'atteindre un taux de réussite de 80 %. Mais ce pourcentage a drastiquement baissé (46 %) lorsque le nombre de frappes de touche a été augmenté. Il s'est toutefois amélioré si le second choix de mots émis par le système de reconnaissance était pris en compte. Les chercheurs en déduisent que le recours à une analyse sémantique pourrait donc renforcer la fiabilité.

    Bien qu'impressionnante, cette technique trouve rapidement ses limites si par exemple le smartphone est un peu trop éloigné du clavier, si la personne tape trop vite, écoute la radio ou tapote sur le bureau en provoquant des vibrations parasitesparasites. L'équipe à l'origine de la démonstration imagine aussi plusieurs parades qui consisteraient tout simplement à ne pas placer le mobile sur le bureau ou bien à l'enfermer dans un sac posé à côté. Ils suggèrent également de modifier les API afin de restreindre le taux d'échantillonnage de l'accéléromètre pour qu'il ne soit pas exploitable.