Projet Wycheproof de Google : plus de 80 tests pour vérifier les algorithmes de cryptographie

Projet Wycheproof de Google : plus de 80 tests pour vérifier les algorithmes de cryptographie

C'est toujours mieux que de ne rien faire...

Avatar de l'auteur
Sébastien Gavois

Publié dans

Internet

22/12/2016 4 minutes
5

Projet Wycheproof de Google : plus de 80 tests pour vérifier les algorithmes de cryptographie

Avec son projet Wycheproof, Google propose une suite de tests permettant de vérifier des implémentations cryptographiques et de les tester face aux attaques les plus courantes. L'outil se veut simple et s'adresse à ceux qui ne sont pas des experts en cryptographie.

Dans l'informatique, il est pratiquement impossible de garantir un risque zéro, que ce soit au niveau de la sécurité des infrastructures ou de la confidentialité des données. Même si ces dernières sont chiffrées, certaines vulnérabilités permettent parfois de les récupérer, que ce soit à cause d'un algorithme trop faible, d'une faille de sécurité ou d'une implémentation hasardeuse. Au cours des derniers mois, ces cas se sont tous présentés, plusieurs fois même.

Une suite de 80 tests pour vérifier la robustesse de la cryptographie

Google a décidé de faire profiter la communauté de son expertise dans ce domaine en mettant à disposition une suite de 80 tests permettant de vérifier les bibliothèques cryptographiques sur des vulnérabilités déjà connues. Elle s'adresse principalement aux utilisateurs non experts dans ce domaine et qui ne peuvent/veulent pas se plonger dans des dizaines de documents techniques.

Ce projet porte le nom de Wycheproof, en hommage à la plus petite montagne du monde qui mesure 43 mètres et qui se trouve en Australie. Le choix n'est pas anodin : « Plus la montagne est petite, plus il est facile de l'escalader » explique Google. Il s'agit évidemment d'une analogie à la pénibilité de la tâche et à la simplification que propose Google. Utiliser Wycheproof vaut mieux que rien, et il est préférable de pouvoir escalader une petite montagne qu'aucune. Libre à vous ensuite de vous attaquer au mont Blanc, au K2 ou à l'Himalaya tout entier.

Une erreur subtile peut conduire à des conséquences catastrophiques

Le géant du Net explique que dans le petit monde de la cryptographie, « les erreurs subtiles peuvent avoir des conséquences catastrophiques », et ce n'est pas la multitude de bugs remontés à la surface ces dernières années qui diront le contraire. De plus une implémentation correcte n'est pas toujours facile à mettre en place et nécessite de « digérer des décennies de littérature académique », ce qui mène forcément à des problèmes.

Pour cette première mouture, les tests sont en Java car c'est un langage largement utilisé pour la cryptographie explique Google. Un dépôt GitHub a été mis en place pour l'occasion et tous les détails sur les protocoles et algorithmes testés, ainsi que les attaques utilisées se trouvent par ici.

Déjà des vulnérabilités identifiées

Quoi qu'il en soit, les premiers résultats sont déjà là puisque, selon Google, plus de 40 bugs ont d'ores et déjà été découverts grâce à Wycheproof. Dans le lot, il est question de récupérer les clés privées dans des implémentations de DSA (Digital Signature Algorithm) et ECDH (échange de clés Diffie-Hellman basé sur les courbes elliptiques). Certaines vulnérabilités ne sont pas encore dévoilées publiquement car elles ne sont pas encore corrigées. 

Google rappelle enfin que passer avec succès les tests de son outil ne signifie pas que l'implémentation et les algorithmes ne présentent pas de vulnérabilités, mais simplement qu'ils ne sont pas sensibles à ces attaques précises à un instant T. De nouvelles brèches sont régulièrement découvertes et il faut donc y accorder une attention de tous les jours ou presque.

Bien évidemment, les contributions externes sont encouragées afin d'améliorer cet outil. Les personnes intéressées trouveront des détails sur cette page.

Écrit par Sébastien Gavois

Tiens, en parlant de ça :

Sommaire de l'article

Introduction

Une suite de 80 tests pour vérifier la robustesse de la cryptographie

Une erreur subtile peut conduire à des conséquences catastrophiques

Déjà des vulnérabilités identifiées

next n'a pas de brief le week-end

Le Brief ne travaille pas le week-end.
C'est dur, mais c'est comme ça.
Allez donc dans une forêt lointaine,
Éloignez-vous de ce clavier pour une fois !

Fermer

Commentaires (5)


Une montagne de 43 mètres !!! Fichtre ! C’est les habitants de Ffynnon Taf qui vont pas être content… <img data-src=" />




Pour cette première mouture, les tests sont en Java car c’est un langage

largement utilisé pour la cryptographie explique Google.





Changez de langage, ça fera déjà une faille de moins. <img data-src=" />


Bonne initiative, tellement c’est compliqué de sécurisé correctement un site/serveur. J’utilise testssl pour vérifier la sécurité :https://testssl.sh et ça m’a bien aidé.


C’est finalement très limité : seules des librairies écrites en java peuvent être testées, et avec uniquement des algos servant au chiffrement du web.

On est bien loin de “vérifier les algorithmes de cryptographie” que suggère le titre.


je ne suis pas certain d’avoir compris, mais il s’agit de tester non pas l’efficacité et la résistance d’un algorithme en particulier, mais partant d’un algorithme connu (RSA, …) une implémentation particulière ? Pas mal mais j’aurais souhaité l’inverse personnellement.