GnuTLS est une bibliothèque libre qui, au même titre que OpenSSL, permet d’établir une connexion chiffrée sur Internet via le protocole SSL/TLS.
Une faille de sécurité qui permet de faire planter GnuTLS et, dans certaines conditions, lui faire exécuter du code arbitraire a été découverte.
Concrètement, lors d’une poignée de main, l’envoi d’un identifiant de session extrêmement long par le serveur provoque un dépassement de tampon. Pour résumer, on veut enregistrer en mémoire l’identifiant de session qui est plus grand que l’espace prévu à cet effet, l’excédent est écrit à côté et, en particulier, sur le programme en mémoire. En choisissant bien l’identifiant de session, on peut donc altérer le fonctionnement du logiciel en cours d’exécution à son avantage.