Une nouvelle faille critique affecte SSL

Trois ingénieurs de Google viennent de mettre la main sur une faille dans SSL 3.0 permettant de réaliser des attaques man-in-the middle (c’est-à-dire une attaque qui a pour but d’intercepter les communications entre deux parties, sans que ni l’une ni l’autre ne puisse se douter que le canal de communication entre elles a été compromis) et de déchiffrer une partie du trafic sécurisé. Suffisamment, en tous les cas, pour pouvoir rentrer dans des comptes de messagerie par exemple.

Le nom attribué à la faille est à coucher dehors : « Padding Oracle On Downgraded Legacy Encryption ». En abrégé, cela fait « Poodle », soit « Caniche » en anglais, ce qui est déjà mieux. Techniquement, cette vulnérabilité est assez complexe. Elle s’appuie sur le fait que le mécanisme cryptographique CBC (Cipher Block Chaining) de SSL v3 est trop faible et peut être cassé.

Certes, SSL v3 est un protocole obsolète qui date des années 1990 et qui est très peu utilisé de nos jours. Mais il y a un hic : les navigateurs qui implémentent les protocoles plus récents tels que TLS 1.0, TLS 1.1 ou TLS 1.2 peuvent, dans certains cas, être amenés à se mettre en mode SSL v3 par souci de rétrocompatibilité. Les spécialistes appellent cela le « downgrade dance », la danse du retour à la version antérieure.

Supposons qu’un pirate puisse intercepter le trafic réseau et le manipuler (par exemple au travers d’un faux hotspot Wi-Fi). Il lui suffit de faire capoter toutes les tentatives de connexion en TLS, et hop, le navigateur et le serveur Web établissent une connexion SSL v3, et le tour est joué. S’il se débrouille bien, le cybermalfrat pourra déchiffrer les cookies de session HTTP, ce qui lui permettra de rentrer dans des comptes utilisateurs.

Comment se protéger ? SSL v3 dispose d’un second mode cryptographique appelé RC4, mais il est encore plus vulnérable que CBC. D’après les ingénieurs Google, le meilleur moyen de se protéger est donc de désactiver SSL v3, quitte à prendre en compte les quelques rares problèmes de compatibilité. Les développeurs de Chrome comptent procéder à cette désactivation dans les mois qui viennent. Dans Firefox, elle est prévue pour la version 34 à venir.

Il est possible de désactiver SSL v3 dans les navigateurs actuels, mais c’est un peu sportif. Pour Firefox, il faut aller sur la page « about:config » et mettre comme valeur pour l’option « security.tls.version.min » le chiffre 1. Pour Chrome, il faut faire en sorte que l’application se lance avec l’option «–ssl-version-min=tls1 ». Le site Chromium.org explique comment procéder pour les différents types de système d’exploitation.

Ceux qui veulent absolument préserver une rétrocompatibilité avec SSL v3, sachez qu’il existe un mécanisme développé par l’IETF et baptisé « TLS_Fallback-Scsv » qui permet d’éviter qu’un pirate force une connexion SSL v3 si elle n’est pas nécessaire. Mais ce mécanisme n’est pas totalement finalisé. Certaines entreprises, comme Google, l’ont déjà implémenté à titre expérimental.

Les commentaires sont fermés pour cet article.