Libssh publie des mises à jour corrigeant 9 vulnérabilités dont 4 importantes

L’équipe de développement de libssh2 a publié un bulletin de sécurité le 18 mars 2019 corrigeant 9 vulnérabilités dont 4 considérées comme importantes. Un attaquant pourrait les exploiter afin d’exécuter du code arbitraire sur les systèmes d’exploitation Linux utilisant la libraire libssh2. Ces attaques sont complexes à mettre en œuvre et ne nécessitent pas d’authentification. 

L’impact estimé sur la confidentialité, l’intégrité et la disponibilité des données est élevé. Ces vulnérabilités ont été remontées pour la première fois aux équipes de développement le 3 décembre 2018 par le chercheur de sécurité Chris Coulson.

Libssh2 est une bibliothèque implémentant le protocole SSH2, disponible dans les systèmes d’exploitation UNIX tels que Ubuntu, Red Hat, Debian et parfois utilisée comme bibliothèque par défaut. Le protocole SSH2 permet notamment de sécuriser les sessions de terminal et FTP ainsi que les commandes permettant d’agir sur un serveur UNIX distant : rlogin, rcp, rexec, etc.

La vulnérabilité permet ainsi à un attaquant de créer des paquets malveillants afin d’effectuer des accès mémoire hors limites.

Une nouvelle version de libssh2 (1.8.1) a été publiée afin de corriger ces 9 vulnérabilités.

Détails techniques :

Les vulnérabilités ont été référencées comme suit :

  • CVE-2019-3855CVE-2019-3856CVE-2019-3857 et CVE-2019-3863 [CVSS 7.5] : Un dépassement de mémoire tampon est possible dans une variable de type entier permettant à un attaquant ayant compromis un serveur SSH de créer des paquets malveillants afin d’exécuter du code arbitraire sur le poste de la victime qui se connecte au serveur.
  • CVE-2019-3858 et CVE-2019-3860 [CVSS 5] : Un dépassement de mémoire tampon est possible lorsqu’un paquet SFTP est reçu depuis un serveur SSH compromis. Un attaquant pourrait alors réaliser une attaque de type déni de service ou lire des données stockées dans la mémoire vive (RAM) sur le poste de la victime qui se connecte au serveur.
  • CVE-2019-3859 [CVSS 5] : Un dépassement de mémoire a été découvert dans les fonctions _libssh2_packet_require et _libssh2_packet_requirev. Un attaquant pourrait compromettre un serveur SSH et effectuer une attaque de type déni de service ou lire des données stockées dans la RAM de la victime se connectant au serveur.
  • CVE-2019-3861 [CVSS 5] : Un dépassement de mémoire tampon est possible sur libssh2 lorsque des paquets SSH ont une valeur de remplissage supérieure à celle normalement analysée. Un attaquant ayant compromis un serveur SSH pourrait provoquer un déni de service ou lire les données stockées dans la RAM de la victime qui se connecte au serveur.
  • CVE-2019-3862 [CVSS 5] : Un dépassement de mémoire tampon a été découvert dans les paquets SSH_MSG_CHANNEL_REQUEST lorsque celui-ci contient un message d’état de sortie et aucune charge utile. Un attaquant ayant compromis un serveur SSH pourrait provoquer un déni de service ou lire les données stockées dans la RAM de la victime qui se connecte au serveur.

Il est recommandé d’appliquer la dernière mise à jour de libssh2 (1.8.1) qui porte sur les correctifs des vulnérabilités précédemment citées.

Informations
+

Risques

  • Exécution de code à distance.

Criticité

  • Score CVSS : 7.5

Existence d’un code d’exploitation de la vulnérabilité

  • Aucun code d’exploitation n’est disponible.

Composants & versions vulnérables

  • Versions inférieures à 1.8.1 de libssh2.

CVE

  • CVE-2019-3855
  • CVE-2019-3856
  • CVE-2019-3857
  • CVE-2019-3858
  • CVE-2019-3859
  • CVE-2019-3860
  • CVE-2019-3861
  • CVE-2019-3862
  • CVE-2019-3863

Recommandations
+

Mise en place de correctif de sécurité

  • ??????Il est recommandé d'appliquer les correctifs apportés par la version 1.8.1 de libssh2.

  • Des correctifs ont été publiés par les équipes de libssh2 dans leurs publications de vulnérabilités respectives.

Solution de contournement

  • Aucune solution de contournement n’est proposée.