Polémique sur la sécurité des tokens d’authentification
Des chercheurs de l’Inria prévoient de présenter cet été, à Santa Barbara, sur l’édition 2012 de l’événement Crypto, des travaux dévoilés en avril dernier. Ceux-ci mettent en évidence des vecteurs de compromission de tokens d’authentification sécurisée - dont ceux de RSA. Ce dernier n’a pas manqué de réagir vigoureusement.
Dans un rapport d’avril dernier, les chercheurs de l’équipe du projet Prosecco de l’Inria ont présenté le fruit de travaux qu’ils décrivent comme la manière «d’exploiter l’interface de plusieurs appareils cryptographiques pour extraire leurs clés cryptographiques ». Des attaques «effectuées par oracle de padding» sur le standard PKCS#1. Ils doivent en faire la démonstration publique lors de Crypto 2012, cet été, à Santa Barbara. Pour faire simple, et comme le résume Matthew Green, professeur de cryptographie à l’université Johns Hopkins, «grâce une combinaison puissante (subtile mais pas nouvelle) de failles cryptographiques, un attaquant peut extraire les clés sensibles de plusieurs tokens cryptographiques courants ». Le problème viendrait d’une implémentation «peu précautionneuse» du standard PKCS#1.
Dans leur rapport, les chercheurs expliquent qu’une commande définie par le standard «est souvent implémentée sur les appareils commercialement disponibles de telle sorte qu’elle offre un ‘oracle de padding’, à savoir un canal de communication séparé qui permet de savoir si le déchiffrement a réussi ou non ». Et de proposer deux types d’attaques, dont l’une déjà connue mais largement optimisée pour l’occasion afin de la rendre exploitable - en termes de temps nécessaire à son succès - dans des conditions réalistes. Ou presque. Et c’est un point sur lequel réplique précisément RSA.
Le groupe spécialiste de la sécurité informatique insiste tout d’abord sur le fait que les essais de l’équipe du projet Prosecco ne concernent - pour ses équipements - que la fonctionnalité carte à puce du token RSA SecurID 800 - «pas sa fonctionnalité mot de passe à usage unique» - et pas d’autre produit. Surtout, pour RSA, «ce n’est pas une attaque utile» car elle «nécessite un accès à la carte à puce RSA SecurID 800 et le PIN de son utilisateur. Et si l’attaquant dispose de la carte et du PIN, il n’est pas nécessaire de lancer la moindre attaque ». Mais certains éléments du rapport de l’Inria interpellent, à commencer par les temps d’attaque médians : 92 minutes pour le Cyberflex de Gemalto, 88 minutes pour l’Ikey 2032 de Safenet, puis seulement 21 minutes pour le CardOS de Siemens et 13 minutes le SecurID 800 de RSA.
RSA souligne surtout que le travail des chercheurs porte surtout sur une version datée du standard PKCS#1, la 1.5. Et de recommander à ses clients d’utiliser la version 2.0. Et là, Matthew Green ne contredira pas RSA : «si vous utilisez le padding PKCS#1 1.5 pour le chiffrement RSA, supprimez-le. C’est le dernier avertissement.»