[INFO] SLOTH, la petite dernière dans le monde des attaques sur les protocoles cryptographiques

Comme chaque semaine, le CERT-XMCO vous partage une information ayant fait l’actualité durant la semaine écoulée. Cette semaine, nous vous proposons un aperçu de l’attaque « SLOTH », permettant des attaques via les algorithmes de signature utilisés au sein des protocoles cryptographiques.

Bulletin CXA-2016-0069
Titre SLOTH, la petite dernière dans le monde des attaques sur les protocoles cryptographiques
Titre officiel Security Losses from Obsolete and Truncated Transcript Hashes (CVE-2015-7575)
Criticité Criticite Elevée
Date 11 Janvier 2016
Exploitation Distante
Description Après LOGJAM, FREAK ou encore POODLE, une nouvelle attaque cryptographique baptisée SLOTH vient d’être révélée par des chercheurs français. Comme toute attaque digne de ce nom, SLOTH est un acronyme, signifiant « Security Losses from Obsolete and Truncated Transcript Hashes ».

Contrairement à certaines attaques divulguées auparavant qui étaient liées à la conception même des protocoles cryptographiques, il ne s’agit pas directement, cette fois-ci, d’une attaque ciblant l’utilisation des protocoles cryptographiques connus comme étant obsolètes (tels que SSL v2, SSL v3 ou encore TLS 1.0), mais plutôt l’utilisation d’algorithmes de hachage obsolètes au sein des protocoles cryptographiques (qu’ils soient obsolètes ou non).

Plus précisément, les chercheurs de l’INRIA, Karthikeyan Bhargavan et Gaëtan Leurent, ont pointé du doigt l’utilisation de SHA-1 et MD5, entre autres au sein des protocoles actuellement sûrs d’utilisation, qui sont aujourd’hui obsolètes, et dont l’usage n’est plus recommandé depuis plusieurs années. Par exemple, TLS 1.2 (la dernière version en date) pourrait être rendu inopérant en cas d’utilisation de SHA-1 ou de MD5. D’autres protocoles tels que IKE (VPN) ou SSH, pourraient également faire les frais de l’utilisation de ces fonctions de hachages obsolètes.

Il est important à cette occasion de rappeler aux administrateurs que la configuration de leurs clients/serveurs ne se limite pas à la sélection de la suite de chiffrement (par exemple ECDHE_RSA_AES_128_GCM_SHA256). Il est également important de se pencher sur les autres aspects du protocole, tels que l’authentification. Pour rappel, l’authentification repose sur la signature d’informations avec une clef privée, procédure pouvant être vérifiée par le correspondant à l’aide de la clef publique associée. Dans ce contexte, ce n’est pas la suite de chiffrement qui est impliquée, mais un autre paramètre dédié. Ainsi, il est tout à fait possible pour un serveur SSH ou TLS par exemple d’utiliser une suite de chiffrement considérée comme étant sûre, et en parallèle d’utiliser RSA-MD5 pour signer les données. Auquel cas, ce serveur est vulnérable à SLOTH.

Dans le cadre de ces recherches, les chercheurs ont identifié un nouveau type d’attaque cryptographique, baptisée « transcript collision ». Le détail de ces travaux, et les résultats obtenus sont détaillés à l’adresse suivante :
http://www.mitls.org/downloads/transcript-collisions.pdf

Les dommages diffèrent bien sûr pour chacun des protocoles reposant sur l’utilisation des fonctions de hachages obsolètes. Ils vont de l’usurpation d’identité sur TLS 1.2 par exemple, jusqu’à des contournements de restrictions de sécurité pour SSH 2.

L’un des principaux résultats de ces recherches est l’abandon, par le groupe de travail en charge des spécifications de TLS 1.3, du support des signatures RSA-MD5. Enfin, pour les administrateurs de serveurs SSH, TLS, ou IKE, la principale recommandation à adopter est de ne plus supporter les signatures RSA-MD5. Par ailleurs, les chercheurs ont identifié une première liste de logiciels concernés par SLOTH. Les développeurs de ces logiciels ont été contactés de manière anticipée, pour proposer des correctifs. Parmi les logiciels impactés figurent :

* OpenSSL <= 10.1e
* Firefox <= 42
* Oracle Java <= 8u66
* Oracle Java <= 7u79)
* GnuTLS <= 3.3.14
* BouncyCastle (Java Client) <= 1.53
* BouncyCastle (C# Client) <= 1.8.0
* PolarSSL/mbedTLS <= 2.2.0

Enfin, selon les chercheurs, un scan réalisé sur l’intégralité d’Internet montrerait que 32% des serveurs TLS supporteraient RSA-MD5, et sont donc vulnérables à SLOTH.

Vulnérable * OpenSSL <= 10.1e
* Firefox <= 42
* Oracle Java <= 8u66
* Oracle Java <= 7u79)
* GnuTLS <= 3.3.14
* BouncyCastle (Java Client) <= 1.53
* BouncyCastle (C# Client) <= 1.8.0
* PolarSSL/mbedTLS <= 2.2.0
Référence http://www.mitls.org/pages/attacks/SLOTH
http://www.mitls.org/downloads/transcript-collisions.pdf

https://nakedsecurity.sophos.com/2016/01/08/the-sloth-attacks-why-laziness-about-cryptography-puts-security-at-risk/
https://threatpost.com/sloth-attacks-up-ante-on-sha-1-md5-deprecation/115807/

Référence CVE http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-7575
Id XMCO CXA-2016-0069
Lien extranet XMCO https://cert.xmco.fr/veille/client/index.xmco?nv=CXA-2016-0069

CERT-XMCO

Découvrir d'autres articles