Les mainteneurs d’OpenSSL, la bibliothèque open source utilisée par des millions d’applications Web pour chiffrer les communications, ont publié des mises à jour traitant d’une vulnérabilité de déni de service (DoS) de gravité « élevée ».

Ce problème, qui découle de la façon dont OpenSSL analyse les certificats, affecte les versions OpenSSL 1.0.2, 1.1.1 et 3.0, et a été résolu avec la sortie de 1.0.2zd, 1.1.1n et 3.0.2 hier (15 mars) après-midi .

La divulgation a de graves répercussions sur la chaîne d’approvisionnement étant donné que, selon construitAvecOpenSSL fournit le protocole Transport Layer Security (TLS) pour au moins 2,7 millions de sites Web actifs.

Matt Caswell, développeur à la OpenSSL Software Foundation, a déclaré La gorgée quotidienne que, pour l’instant, « nous ne sommes pas au courant que quelqu’un exploite cela dans la nature ».

‘boucle pour toujours’

Le bogue suspendu au logiciel laisse les sous-systèmes cryptographiques à risque à cause des certificats escrocs.

« Le BN_mod_sqrt() fonction, qui calcule une racine carrée modulaire, contient un bogue qui peut la faire boucler indéfiniment pour les modules non premiers », explique un OpenSSL conseil en sécurité.

« En interne, cette fonction est utilisée lors de l’analyse de certificats contenant des clés publiques de courbe elliptique sous forme compressée ou des paramètres de courbe elliptique explicites avec un point de base codé sous forme compressée. »

La boucle infinie peut être déclenchée en créant un certificat avec des paramètres de courbe explicites non valides, selon le projet OpenSSL.

« Étant donné que l’analyse du certificat a lieu avant la vérification de la signature du certificat, tout processus qui analyse un certificat fourni en externe » est donc exposé à un risque d’attaque DoS. « La boucle infinie peut également être atteinte lors de l’analyse de clés privées conçues car elles peuvent contenir des paramètres de courbe elliptique explicites. »

Scénarios vulnérables

Tout ce qui analyse les paramètres de courbe elliptique ASN.1 est potentiellement à risque, ainsi que « les applications qui utilisent le BN_mod_sqrt() où l’attaquant peut contrôler les valeurs des paramètres », indique l’avis.

Matt Caswell a déclaré : « La création d’un certificat qui exploite ce bogue nécessiterait un certain savoir-faire technique, mais ce n’est pas difficile.

« Le scénario le plus courant où cela poserait un problème serait qu’un client TLS accède à un serveur malveillant qui sert un certificat problématique. Les serveurs TLS peuvent être affectés s’ils utilisent l’authentification client (qui est une configuration moins courante) et qu’un client malveillant tente de s’y connecter.

Bien que la mise à jour de la version 1.0.2 – 1.0.2zd – soit réservée aux utilisateurs premium, la faille est plus difficile à exploiter avec cette version car « la clé publique n’est pas analysée lors de l’analyse initiale du certificat, ce qui la rend légèrement plus difficile à déclencher ». la boucle infinie », indique l’avis.

Néanmoins, « toute opération qui nécessite la clé publique du certificat déclenchera la boucle infinie », poursuit-il, les attaquants pouvant utiliser un certificat auto-signé pour déclencher la boucle lors de la vérification.

Node.js met à jour entrant

La course est lancée pour les mainteneurs d’applications en aval, qui ont reçu avertissement préalable des mises à jour entrantes le 8 mars, afin d’évaluer leur impact potentiel et l’urgence avec laquelle ils doivent mettre à jour leurs propres cadres.

Cela inclut l’environnement d’exécution JavaScript Node.js, qui a donné à ses propres utilisateurs un la tête haute hier (14 mars) qu’il « pourrait publier de nouvelles versions sur toutes ses lignes de version prises en charge en fin de semaine pour incorporer des correctifs en amont d’OpenSSL » une fois les détails techniques arrivés.

A NE PAS MANQUER Sécurité Node.js : vulnérabilité d’exécution de code à distance Parse Server résolue

Écrivant sur son Blog ImperialVioletl’expert infosec Adam Langley a noté que le bogue OpenSSL est survenu en raison de la prise en charge de courbes arbitraires – comme ce fut le cas pour un précédent Contournement de signature Windows – bien qu’il ne sache pas « que quiconque ait déjà utilisé la possibilité de spécifier des courbes arbitraires pour quoi que ce soit d’utile ».

Il a également écrit : « Soit dit en passant, il est intéressant de se demander combien de décennies de CPU ont été passées à fuzzer l’analyse des certificats d’OpenSSL et pourtant le problème d’aujourd’hui n’a pas été signalé auparavant.

La faille de sécurité a été signalée à OpenSSL le 24 février 2022 par Tavis Ormandy de Google.

Le bogue le plus dommageable de la bibliothèque OpenSSL à ce jour reste le tristement célèbre Vulnérabilité Heartbleed de 2014 qui a permis aux attaquants d’accéder à des clés secrètes, des mots de passe et des informations personnelles sensibles.