Ce dernier billet de la série consacrée aux conférences sur le GSM porte sur la conférence donnée par Karsten Nohl à propos du chiffrement A5. Ce chiffrement est connu pour présenter des faiblesses. De nombreuses attaques ont été suggérées par les chercheurs académiques afin de casser ce chiffrement au cours des dernières années. Cependant jusqu'à présent aucun de ces chercheurs n'a mené une implémentation complète de l'attaque. En 2008 un groupe de hackers appelé The Hackers Choice a décidé de mener l'attaque jusqu'au bout. Toutes les attaques proposées nécessitent le précalcul de table de correspondance de taille gigantesque (plus téraoctets de données). Calculer une telle table même sur un PC moderne peut prendre plusieurs dizaines ou centaines de milliers d'années. Il semble que la table en question ne soit toujours pas calculée !
Karsten Nohl qui est chercheur à l'université de Virginie a décidé de reprendre ce travail du début. Il propose d'utiliser une amélioration des rainbow tables. Cette technique s'est déjà rendue célèbre en permettant d'inverser les hachés des mots de passe au format NTLM. Cela permettait de retrouver quasiment instananément le mot de passe d'un utilisateur de Windows à partir du mot de passe chiffré stocké sur le disque. C'est une technique applicable à de nombreux schéma de chiffrement lorsque la taille de l'espace de départ n'est pas suffisante. C'est une technique dite de compromis entre le temps et l'espace nécessaire au déchiffrement. La taille des tables générées dans ces attaques est grande, mais reste maitrisable par des PC récents. Elles nécessitent par contre un peu de temps de calcul lors de l'utilisation (c'est-à-dire une fois construites). C'est là où se situe le compromis. Trop petites les tables sont facilement stockables mais nécessitent beaucoup de temps de calcul pour faire le déchiffrement. Trop grandes, le déchiffrement peut quasiment être instantané, mais il n'existe plus de disques durs assez grand pour les contenir. Ce compromis ne vaut que pour l'utilisation des tables. Leurs constructions est toujours extrêmement gourmandes en temps de calcul et en général absolument inattaquable par un PC seul. Il est toujours nécessaire de recourir à des clusters de plusieurs centaines ou milliers de machines. Par contre, une fois construites ces tables peuvent être distribuées et réutilisées par n'importe qui.
Pour le cas du chiffrement A5, Karsten Nohl a décidé d'utiliser la puissance de calcul absolument gigantesque contenue dans les cartes graphiques modernes. En effet celles-ci peuvent mener en parallèle des centaines de milliers de calculs (sous des conditions bien particulières bien évidemment). Il se trouve que les calculs nécessaires à l'établissement des tables de correspondance nécessaire pour casser le chiffrement A5 tombe dans la catégories des programmes facilement parallélisables sur des cartes graphiques. Il a retenu les cartes de type Nvidia car ce sont celles qui sont actuellement le plus facilement exploitable. En effet Nvidia a lancé un projet baptisé Cuda qui permet de programmer notamment depuis Linux les cartes graphiques de ce constructeur. Karsten Nohl et ses collègues ont donc développé un logiciel tournant sur carte graphique Nvidia et calculant les tables nécessaires. Selon lui, il ne faudrait que quelques mois à 80 de ces cartes pour terminer le travail titanesque que représente la génération de table arc-en-ciel pour le chiffrement A5. Une fois ce travail effectué il deviendra possible de déchiffrer une conversation GSM enregistrée avec airprobe. Même si ce déchiffrement n'est pas instantané, cela représente une véritable menace pour le respect de la vie privée. Attention ne vous méprenez pas sur le sens de ma phrase. Je ne veux pas dire qu'il faut emprisonner sur le champ les chercheurs académiques se lassant dans de tels travaux. Je veux simplement dire qu'il est grand temps que tous les acteurs de la téléphonie mobile (constructeurs de téléphone, opérateurs, etc) se mettent autour de la table afin de concevoir un nouveau standard qui soit plus robuste que le chiffrement A5/1 qui est reconnu comme cassé dans la théorie depuis au moins 5 ans.
Par ailleurs, j'attire votre attention sur le fait que si un chercheur aidé de 80 cartes graphiques Nvidia peut se permettre de casser ce chiffrement, il ne faut se faire aucune illusion. Les états comme les grands groupes privés peuvent se payer la technologie permettant de faire des écoutes sauvages de la téléphonie mobile. Ceci n'est évidemment pas souhaitable, et la seule manière que cela change est que la pression sur les acteurs du secteur deviennent plus forte. Elle ne pourra l'être que lorsque l'écoute du GSM aura été suffisamment banalisée pour que les grands médias s'emparent du sujet. Le projet de Karsten Nohl va donc dans le bon sens.