Crashes dans OpenBSD, DragonFly BSD et Electron en raison de l'expiration du certificat racine IdenTrust

La dépréciation du certificat racine IdenTrust (DST Root CA X3), utilisé pour signer de manière croisée le certificat racine Let's Encrypt CA, a provoqué des problèmes avec la vérification du certificat Let's Encrypt dans les projets utilisant d'anciennes versions d'OpenSSL et de GnuTLS. Des problèmes ont également affecté la bibliothèque LibreSSL, dont les développeurs n'ont pas pris en compte l'expérience passée associée aux échecs survenus après que le certificat racine AddTrust de l'autorité de certification Sectigo (Comodo) soit devenu obsolète.

Rappelons que dans les versions d'OpenSSL jusqu'à la branche 1.0.2 incluse et dans GnuTLS avant la version 3.6.14, il y avait un bug qui ne permettait pas de traiter correctement les certificats à signature croisée si l'un des certificats racines utilisés pour la signature devenait obsolète. , même si d'autres chaînes de confiance valides étaient préservées (dans le cas de Let's Encrypt, l'obsolescence du certificat racine IdenTrust empêche la vérification, même si le système prend en charge le propre certificat racine de Let's Encrypt, valable jusqu'en 2030). L'essentiel du bug est que les anciennes versions d'OpenSSL et de GnuTLS analysaient le certificat comme une chaîne linéaire, alors que selon la RFC 4158, un certificat peut représenter un graphe circulaire distribué dirigé avec plusieurs ancres de confiance qui doivent être prises en compte.

Comme solution de contournement pour résoudre l'échec, il est proposé de supprimer le certificat « DST Root CA X3 » du stockage système (/etc/ca-certificates.conf et /etc/ssl/certs), puis d'exécuter la commande « update -ca-certificats -f -v” "). Sur CentOS et RHEL, vous pouvez ajouter le certificat « DST Root CA X3 » à la liste noire : trust dump —filter « pkcs11:id=%c4%a7%b1%a4%7b%2c%71%fa%db%e1% 4b%90 %75%ff%c4%15%60%85%89%10" | ouvressl x509 | sudo tee /etc/pki/ca-trust/source/blacklist/DST-Root-CA-X3.pem sudo update-ca-trust extract

Certains des plantages que nous avons constatés se sont produits après l'expiration du certificat racine IdenTrust :

  • Dans OpenBSD, l'utilitaire syspatch, utilisé pour installer les mises à jour binaires du système, a cessé de fonctionner. Le projet OpenBSD a publié aujourd'hui en urgence des correctifs pour les branches 6.8 et 6.9 qui résolvent les problèmes de LibreSSL liés à la vérification des certificats à signature croisée, dont l'un des certificats racine de la chaîne de confiance a expiré. Pour contourner le problème, il est recommandé de passer de HTTPS à HTTP dans /etc/installurl (cela ne menace pas la sécurité, puisque les mises à jour sont en outre vérifiées par une signature numérique) ou de sélectionner un miroir alternatif (ftp.usa.openbsd. org, ftp.hostserver.de, cdn.openbsd.org). Vous pouvez également supprimer le certificat racine DST Root CA X3 expiré du fichier /etc/ssl/cert.pem.
  • Dans DragonFly BSD, des problèmes similaires sont observés lors de l'utilisation de DPorts. Lors du démarrage du gestionnaire de packages pkg, une erreur de vérification du certificat apparaît. Le correctif a été ajouté aujourd'hui aux branches master, DragonFly_RELEASE_6_0 et DragonFly_RELEASE_5_8. Pour contourner ce problème, vous pouvez supprimer le certificat DST Root CA X3.
  • Le processus de vérification des certificats Let's Encrypt dans les applications basées sur la plateforme Electron est interrompu. Le problème a été résolu dans les mises à jour 12.2.1, 13.5.1, 14.1.0, 15.1.0.
  • Certaines distributions ont des problèmes pour accéder aux référentiels de packages lors de l'utilisation du gestionnaire de packages APT associé aux anciennes versions de la bibliothèque GnuTLS. Debian 9 a été affecté par le problème, qui utilisait un paquet GnuTLS non corrigé, ce qui a entraîné des problèmes d'accès à deb.debian.org pour les utilisateurs qui n'ont pas installé la mise à jour à temps (le correctif gnutls28-3.5.8-5+deb9u6 a été proposé le 17 septembre). Pour contourner ce problème, il est recommandé de supprimer DST_Root_CA_X3.crt du fichier /etc/ca-certificates.conf.
  • Le fonctionnement d'acme-client dans le kit de distribution pour créer des pare-feu OPNsense a été perturbé, le problème a été signalé à l'avance, mais les développeurs n'ont pas réussi à publier un correctif à temps.
  • Le problème a affecté le package OpenSSL 1.0.2k dans RHEL/CentOS 7, mais il y a une semaine, une mise à jour du package ca-certificates-7-7.el2021.2.50_72.noarch a été générée pour RHEL 7 et CentOS 9, à partir de laquelle IdenTrust le certificat a été supprimé, c'est-à-dire la manifestation du problème était bloquée à l'avance. Une mise à jour similaire a été publiée il y a une semaine pour Ubuntu 16.04, Ubuntu 14.04, Ubuntu 21.04, Ubuntu 20.04 et Ubuntu 18.04. Les mises à jour ayant été publiées à l'avance, le problème de vérification des certificats Let's Encrypt affectait uniquement les utilisateurs des anciennes branches de RHEL/CentOS et Ubuntu qui n'installent pas régulièrement les mises à jour.
  • Le processus de vérification du certificat dans grpc est interrompu.
  • La construction de la plateforme Cloudflare Pages a échoué.
  • Problèmes dans Amazon Web Services (AWS).
  • Les utilisateurs de DigitalOcean ont des problèmes de connexion à la base de données.
  • La plateforme cloud Netlify est tombée en panne.
  • Problèmes d'accès aux services Xero.
  • Une tentative d'établissement d'une connexion TLS à l'API Web du service MailGun a échoué.
  • Crashes dans les versions de macOS et iOS (11, 13, 14), qui n'auraient théoriquement pas dû être concernées par le problème.
  • Les services Catchpoint ont échoué.
  • Erreur lors de la vérification des certificats lors de l'accès à l'API PostMan.
  • Le pare-feu Guardian est tombé en panne.
  • La page d'assistance de monday.com est en panne.
  • La plateforme Cerb est tombée en panne.
  • La vérification de la disponibilité a échoué dans Google Cloud Monitoring.
  • Problème de vérification du certificat dans Cisco Umbrella Secure Web Gateway.
  • Problèmes de connexion aux proxys Bluecoat et Palo Alto.
  • OVHcloud rencontre des problèmes de connexion à l'API OpenStack.
  • Problèmes de génération de rapports dans Shopify.
  • Il y a des problèmes pour accéder à l'API Heroku.
  • Ledger Live Manager plante.
  • Erreur de vérification du certificat dans les outils de développement d'applications Facebook.
  • Problèmes dans Sophos SG UTM.
  • Problèmes avec la vérification du certificat dans cPanel.

Source: opennet.ru

Ajouter un commentaire