BT

Diffuser les Connaissances et l'Innovation dans le Développement Logiciel d'Entreprise

Contribuez

Sujets

Sélectionner votre région

Accueil InfoQ Actualités Microsoft Corrige Une Vulnérabilité Grave De Crypto32.dll

Microsoft Corrige Une Vulnérabilité Grave De Crypto32.dll

Microsoft a publié des correctifs pour différentes versions de Windows 10 et Windows Server 2019 et 2016 pour corriger une vulnérabilité grave affectant le système de validation des certificats utilisant la cryptographie à courbe elliptique (ECC). Cette vulnérabilité permet à un attaquant d'usurper la validité d'une chaîne de certificats et d'une validation de signature qui nécessite une correction rapide.

La vulnérabilité a été découverte par la NSA (PDF), qui a fortement conseillé de patcher dès que possible tous les systèmes concernés.

Les conséquences de ne pas corriger la vulnérabilité sont graves et répandues. Des outils d'exploitation à distance seront probablement mis à disposition rapidement et largement.

La vulnérabilité affecte la validation des signatures dans les connexions HTTPS, les courriers électroniques et les fichiers, et les exécutables téléchargés depuis Internet. Cela signifie qu'un site, fichier ou exécutable malveillant peut sembler signé par une entité légitime.

La NSA a également fourni un certain nombre de suggestions sur la façon de patcher les systèmes et d'utiliser les outils certutil et openssl pour identifier les certificats suspects qui peuvent être installés sur un système.

Les certificats contenant des paramètres avec courbe elliptique définis explicitement qui ne correspondent que partiellement à une courbe standard sont suspects, surtout s'ils incluent la clé publique d'un certificat de confiance, et peuvent représenter des tentatives d'exploitation de bonne foi.

Ceci est extrêmement important si vous avez tardé à installer le correctif Microsoft, laissant votre système exposé trop longtemps. Dans ce cas, les instructions NSA sont utiles pour garantir qu'aucun certificat non légitime n'a été ajouté à votre cache de certificats pendant que votre système n'était pas corrigé.

Selon Microsoft, aucun exploit à l'état sauvage n'est connu, mais un certain nombre de praticiens de la sécurité indépendants ont rapidement publié des preuves de concept (POC) concernant une attaque exploitant cette vulnérabilité.

Comme l'explique Yolan Romailler, ingénieur en sécurité au sein de la société suisse Kudelski Security, un moyen d'exploiter la vulnérabilité est d'utiliser un certificat X.509 généré avec des "paramètres explicites".

Le problème ici est vraiment que le cache de certificats d'autorité de certification utilisé par CryptoAPI considère à tort qu'une autorité de certification racine modifiée se trouve dans le magasin de certificats d'autorité de certification dès que sa clé publique et son numéro de série correspondent à un certificat qui se trouve déjà dans le cache de certificats, ignorant le fait que ce certificat modifié n'utilise pas les mêmes paramètres de courbe que celui de son cache.

Une autre explication utile et de haut niveau est fournie par l'utilisateur de Twitter Cem Paya, qui spécule que Crypto32.dll a mis en œuvre la prise en charge des courbes elliptiques "définies par l'utilisateur" de manière "paresseuse" :

Il n'a pas pu vérifier que tous les paramètres de courbe sont identiques à la courbe connue. En particulier, la commutation du point du générateur entraîne une courbe différente dans laquelle un attaquant peut forger des signatures correspondant à une clé publique victime.

Une discussion intéressante sur l'exploit Crypto32, ainsi qu'un point de vue mathématique intéressant, peuvent être trouvés sur le site Trail of Bits.

S'il est vrai que cette vulnérabilité nécessite de mettre à jour tous les systèmes Windows concernés dès que possible, Kudelsky tente de mieux encadrer le contexte dans lequel elle pourrait être exploitée :

Au final, n'oubliez pas qu'une telle vulnérabilité ne risque pas d'être exploitée par des script kiddies ou des ransomwares. [...] vous devrez affronter un adversaire propriétaire du réseau sur lequel vous opérez, ce qui est possible pour les adversaires des états nations, mais moins pour un script kiddie.

Cela a également un corollaire intéressant qui rend la décision de la NSA de divulguer la vulnérabilité plus intelligible :

C'est aussi probablement la raison pour laquelle la NSA a décidé de ne pas exploiter elle-même ses découvertes, mais plutôt de les divulguer : pour eux, il vaut mieux faire patcher les États-Unis plutôt que de les conserver et de prendre le risque de les utiliser contre les États-Unis, car la surface d'attaque est si vaste.

Bien que le bug résidait dans la bibliothèque Windows Crypto32.dll, qui a été introduite avec Windows NT 4.0, la vulnérabilité réside dans les fonctionnalités ECC plus avancées décrites ci-dessus qui ne sont apparemment pas prises en charge sur Windows 7, Windows 8.1 et d'autres versions de Windows autres que celles répertoriées dans l'avis de sécurité Microsoft.

 

Evaluer cet article

Pertinence
Style

Contenu Éducatif

BT