ClickCease Vulnérabilités importantes d'OpenSSL corrigées par TuxCare |tuxcare.com

Rejoignez notre populaire bulletin d'information

Rejoignez 4 500+ professionnels de Linux et de l'Open Source !

2 fois par mois. Pas de spam.

Vulnérabilités importantes d'OpenSSL corrigées par TuxCare CVE-2021-3711/3712

24 août 2021 - L'équipe de relations publiques de TuxCare

Peu de bibliothèques sont aussi largement utilisées qu'OpenSSL. Elle est omniprésente sur les plates-formes matérielles et les systèmes d'exploitation, les applications userland et l'IoT. Il y a de fortes chances que le navigateur web que vous utilisez en ce moment pour lire cette page s'appuie d'une manière ou d'une autre sur OpenSSL pour négocier le "s" de "https" avec le serveur web.

Avec curl, zlib et glibc, c'est l'un des noms qui font trembler les administrateurs système lorsqu'ils apparaissent dans la même phrase que "nouvelles vulnérabilités trouvées". Malheureusement, aujourd'hui est un autre de ces jours. Deux nouvelles vulnérabilités sont apparues pour OpenSSL; l'une est considérée comme étant de gravité "élevée" et l'autre de gravité "faible". Elles affectent toutes les versions d'OpenSSL 1.1.1, ainsi que les versions bêta/alpha actuelles de 3.0.0, mais la version finale de cette série inclura les corrections.

Le service Live Patching de TuxCare a déjà préparé des correctifs qui sont déjà livrés - le jour même de l'annonce des vulnérabilités - pour les distributions basées sur EL8, ainsi que pour Debian 10, Ubuntu 18.04 et 20.04 - celles qui utilisent les versions affectées d'OpenSSL.

 

En commençant par CVE-2021-3712, il a été découvert que plusieurs endroits différents dans le code OpenSSL supposent de manière inappropriée que les chaînes ASN.1 sont toujours terminées par NUL. La terminaison NUL est le jargon pour une séquence de caractères qui se termine par l'octet NUL (0). Les programmeurs l'utilisent souvent lorsqu'ils cherchent la fin d'une chaîne de caractères, c'est-à-dire qu'ils la parcourent jusqu'à ce qu'ils trouvent l'octet NUL. Il se trouve qu'il est possible de construire ces chaînes en dehors des fonctions d'OpenSSL et de les passer ensuite dans OpenSSL pour traitement, ce qui peut, pour un acteur malveillant correctement motivé, conduire à des dépassements de tampon et être une voie vers la corruption de mémoire. D'après des exploits précédents utilisant des techniques similaires, nous savons que cela peut éventuellement conduire à une escalade de privilèges.

Il est important de noter que, dans le message de validation de la correction dans le dépôt de code d'OpenSSL, l'auteur mentionne spécifiquement que la correction ne concerne que les cas qu'il a pu trouver. D'autres utilisations de chaînes ASN.1 supposées être terminées par NUL peuvent encore subsister dans la base de code. Il n'est pas impensable que, dans un avenir proche, d'autres corrections de code soient nécessaires pour résoudre des problèmes exactement comme celui-ci.

D'un point de vue plus pratique, les fonctions d'OpenSSL connues pour être vulnérables à ce problème incluent, sans s'y limiter, celles relatives à la validation des noms dans les certificats, dans les situations où le certificat n'est pas directement construit par OpenSSL mais transmis à OpenSSL pour validation.

En ce qui concerne CVE-2021-3711, la vulnérabilité évaluée comme étant de gravité "élevée" est liée au déchiffrement SM2. SM2 est un algorithme basé sur une courbe elliptique. OpenSSL inclut plusieurs fonctions différentes supportant cet algorithme, dont EVP_PKEY_DECRYPT(). Cette fonction est généralement appelée deux fois, la première pour déterminer la taille du tampon nécessaire pour contenir les données et la seconde pour effectuer le décryptage, en lui transmettant cette fois le tampon de taille appropriée.

Il s'avère qu'en raison d'un bogue dans l'implémentation de cette fonction, il est possible de recevoir une taille de tampon lors du premier appel qui est en fait plus petite que la taille de tampon requise pour le second appel, auquel cas l'application appelante transmettra un tampon trop petit pour contenir l'ensemble des données, ce qui entraînera un dépassement de tampon. Cela peut entraîner une corruption de la mémoire qui, comme nous l'avons mentionné précédemment, peut conduire à des résultats plus dangereux pour des attaquants correctement motivés.

L'équipe de TuxCare continue à suivre ces vulnérabilités et à évaluer comment elles peuvent avoir un impact sur les systèmes des abonnés à nos services, en fournissant des correctifs le cas échéant.

Si vous souhaitez en savoir plus sur les services de TuxCare, vous pouvez trouver des détails ici.

Vous cherchez à automatiser la correction des vulnérabilités sans redémarrage du noyau, temps d'arrêt du système ou fenêtres de maintenance programmées ?

Découvrez le Live Patching avec TuxCare

Devenez rédacteur invité de TuxCare

Commencer

Courrier

Rejoindre

4,500

Professionnels de Linux et de l'Open Source
!

S'abonner à
notre lettre d'information