Qu'est-ce que la vulnérabilité Heartbleed ?

click fraud protection

L'une des vulnérabilités les plus connues du milieu des années 2010 s'appelait "Heartbleed". Heartbleed était particulièrement grave car c'était le logiciel qu'il affectait « OpenSSL », la principale bibliothèque cryptographique pour les connexions HTTPS, qui sont très largement utilisées. Pour aggraver les choses, la vulnérabilité était présente dans OpenSSL depuis plus de deux ans auparavant. il a été découvert, rendu public et corrigé, ce qui signifie que beaucoup de gens utilisaient un version.

Heartbleed était une vulnérabilité de fuite de données dans l'extension Heartbeat qui, lorsqu'elle était exploitée, faisait fuir les données de la RAM du serveur vers le client. L'extension Heartbeat est utilisée pour maintenir une connexion entre le serveur Web et le client sans effectuer une demande de page normale.

Dans le cas d'OpenSSL, le client envoie un message au serveur et informe le serveur de la durée du message, jusqu'à 64 Ko. Le serveur est alors censé renvoyer le même message. Mais surtout, le serveur n'a pas vérifié que le message était aussi long que le client le prétendait. Cela signifiait qu'un client pouvait envoyer un message de 10 Ko, prétendre qu'il était de 64 Ko et obtenir une réponse de 64 Ko, les 54 Ko supplémentaires étant constitués des 54 Ko de RAM suivants, quelles que soient les données qui y étaient stockées. Ce processus est bien visualisé par le

Bande dessinée XKCD #1354.

Image reproduite avec l'aimable autorisation de xkcd.com.

En faisant beaucoup de petites requêtes de battements de cœur et en prétendant qu'elles étaient volumineuses, un attaquant pourrait se faire une idée de la plupart de la RAM du serveur en rassemblant les réponses. Les données stockées dans la RAM qui pourraient être divulguées comprennent les clés de chiffrement, les certificats HTTPS, ainsi que les données POST non chiffrées telles que les noms d'utilisateur et les mots de passe.

Remarque: c'est moins connu mais le protocole heartbeat et l'exploit ont également fonctionné dans l'autre sens. Un serveur malveillant pourrait avoir été configuré pour lire jusqu'à 64 Ko de mémoire utilisateur par requête de pulsation.

Le problème a été découvert par plusieurs chercheurs en sécurité de manière indépendante le 1er avril 2014 et a été divulgué en privé à OpenSSL afin qu'un correctif puisse être créé. Le bogue a été rendu public lorsque le correctif a été publié le 7 avril 2014. La meilleure solution pour résoudre le problème consistait à appliquer le correctif, mais il était également possible de résoudre le problème en désactivant l'extension de pulsation si le correctif immédiat n'était pas une option.

Malheureusement, bien que l'exploit soit public et généralement bien connu, de nombreux sites Web n'ont toujours pas été mis à jour immédiatement, la vulnérabilité étant encore parfois découverte même des années plus tard. Cela a conduit à l'utilisation d'un certain nombre d'exemples d'exploit pour accéder à des comptes ou divulguer des données.