La faille Heartbleed d'OpenSSL

La faille Heartbleed d'OpenSSL

11 avril 2014

Depuis le 8 avril, une faille de la librairie logicielle OpenSSL fait beaucoup parler d'elle car elle permet assez facilement d'extraire des informations d'un serveur vulnérable et qu'un grand nombre de serveurs connectés à Internet utilise ce logiciel (globalement, tous les serveurs Linux ou Unix).

L'ironie de l'histoire tient dans le fait qu'OpenSSL est normalement là pour sécuriser les connexions entre les clients (navigateurs web, logiciels de messagerie) et les serveurs (web tels apache et nginx ou de messagerie).

Concrètement, un bug dans le traitement des messages de maintient des connexions (appelé "heartbeat" en anglais) permet d'extraire du serveur des données potentiellement sensibles. Le nom HeartBleed (qui signifie "coeur qui saigne" en anglais) est un jeu de mots autour du nom de la fonction incriminée (heartbeat) dans la librairie logicielle OpenSSL.

La crainte générale est qu'une personne mal intentionnée puisse extraire la clé privée liée au certificat du serveur qui permettrait ensuite de créer une copie parfaite du site d'origine sans qu'il puisse être possible de la distinguer du site d'origine, à cela prêt qu'il serait contrôlé par une personne malveillante. On imagine bien les problèmes que cela pourrait causer si le site en question est un site de banque ou de paiement en ligne ...

En fait, la faille n'était pas présente dans toutes les version d'OpenSSL, ce qui a fortement réduit l'ampleur du problème. Seuls les versions de moins de 3 ans étaient concernées et comme certains serveurs sur Internet ont été installés il y a plus de 3 ans, ils n'étaient pas tous vulnérables.

Les acteurs majeurs du web ont été assez réactifs. Google, qui est à l'origine de la découverte de la faille a bien entendu corrigé cela avant même sa publication. Les autres acteurs concernés ont pour la plupart colmaté la faille rapidement.

Au niveau académique, nous avons été particulièrement concernés par la faille puisque quasiment tous les serveurs web sécurisés accessibles directement sur Internet étaient concernés (en particulier www, courrier, si et votre serviteur ssi) car ils sont gérés par une plate-forme de sécurisation commune mise à jour en août 2012. Les serveurs de messagerie pop, imap et smtps étaient trop vieux pour être concernés par la faille. Nous avons mis à jours l'ensemble des serveurs vulnérables mercredi 9 avril au matin soit le lendemain de la divulgation de la faille.

Si vous hébergez un serveur sécurisé https, pops, imaps ou smtps sous Linux ou Unix sur une machine de moins de 3 ans (comme une Ubuntu à partir de la version 12.04), il est urgent de mettre à jour ce serveur dans les plus brefs délais. A priori, une mise à jour de la libssl suivie d'un redémarrage du service concerné suffit pour corriger la faille.

Le site http://filippo.io/Heartbleed/ permet de tester si un service accessible sur Internet est vulnérable. Pendant les prochains jours, il est fortement recommandé de tester chaque site avant de s'y connecter et il ne faut surtout pas s'y connecter s'il est concerné par la faille.