Catégorie: Revue
Auteur: Olivier Levillain
Date: juillet 2016
BEAST, Lucky13, FREAK, LogJam, ou encore DROWN... Le point commun entre ces attaques sur le protocole TLS : l'exploitation de vulnérabilités connues depuis longtemps sur des algorithmes ou des constructions cryptographiques que l'on aurait dû abandonner depuis longtemps.
L'actualité de la SSI contient régulièrement des annonces concernant des vulnérabilités cryptographiques. Si certaines d'entre elles sont considérées comme théoriques, d'autres donnent directement lieu à une exploitation concrète. Cependant, même dans le premier cas, les faiblesses théoriques peuvent être converties en attaques réelles en quelques mois ou quelques années. C'est la raison pour laquelle les algorithmes ou constructions cryptographiques obsolètes, telles que SHA1, RC4 ou PKCS#1 v1.5, doivent être abandonnées dès que possible. Dans le cas contraire, développer une application de sécurité tient du funambulisme.
Les algorithmes cryptographiques sont omniprésents dans les systèmes d'information. Ils servent à sécuriser les communications, à stocker des mots de passe, ou encore à chiffrer les disques. Cependant, les spécifications qui définissent ces usages reposent souvent sur des algorithmes ou des constructions cryptographiques obsolètes, c'est-à-dire pour lesquels une faiblesse est connue. Bien que ces faiblesses soient parfois uniquement théoriques, ou apparemment inexploitables, force est de constater que les attaques ne peuvent que s'améliorer (Attacks always get better). Il est donc nécessaire de mettre en place des contre-mesures qui forcent les développeurs à faire des acrobaties dans le code cryptographique.
Cet article présente quelques exemples de primitives cryptographiques historiques dont l'implémentation est ainsi rendue délicate.
L'article est disponible sous licence CC BY-NC-ND dans les liens ci-dessous.
Publié dans MISC (Les Éditions Diamond), numéro 86 (pages 61 à 68)
BibTeX Document Version CC BY-NC-ND sur le site de l'éditeur