3 points par GN⁺ 2024-11-21 | 1 commentaires | Partager sur WhatsApp
  • Alors que les informations personnelles et professionnelles circulent de plus en plus souvent sur Internet, Let’s Encrypt est apparu comme une autorité de certification visant à abaisser la barrière d’entrée de l’adoption de TLS grâce à des certificats serveur gratuits
  • Les navigateurs et les serveurs prennent déjà en charge TLS, mais pour les administrateurs, l’émission, l’installation et le renouvellement des certificats restaient complexes et coûteux
  • Mozilla, Cisco, Akamai, l’EFF, IdenTrust et des chercheurs de l’University of Michigan ont collaboré via l’ISRG pour mettre en place l’infrastructure au 2e trimestre 2015
  • Les principes de fonctionnement sont la gratuité, l’automatisation, la sécurité, la transparence, l’ouverture et la coopération, y compris la publication des journaux d’émission et de révocation et des protocoles normalisés ouverts
  • L’objectif n’est pas une sécurité contrôlée par une organisation particulière, mais la création d’une sécurité Internet universelle et ouverte dont toute la communauté peut bénéficier

La barrière des certificats serveur qui freinait l’adoption de TLS

  • Les informations personnelles et professionnelles circulent plus fréquemment sur Internet, mais les utilisateurs ont du mal à savoir à quel moment ces transmissions ont lieu
  • TLS est la technologie succédant à SSL, et elle est déjà prise en charge par les navigateurs de tous les appareils ainsi que par les serveurs des datacenters
  • Au cœur des communications protégées par TLS se trouve le certificat à clé publique, qui prouve que l’utilisateur communique bien avec le serveur visé
  • Pour de nombreux administrateurs de serveurs, même un certificat serveur de base restait une contrainte
    • La procédure de demande pouvait être déroutante
    • Cela avait généralement un coût
    • Une installation correcte était délicate
    • Le renouvellement était fastidieux

Let’s Encrypt, une autorité de certification gratuite et automatisée

  • Let’s Encrypt est une nouvelle autorité de certification gratuite fondée sur la coopération et l’ouverture
  • Les propriétaires de domaines peuvent obtenir, pour leur domaine, un certificat serveur de base validé via une procédure en un clic
  • Mozilla Corporation, Cisco Systems, Akamai Technologies, l’Electronic Frontier Foundation, IdenTrust et des chercheurs de l’University of Michigan collaborent via l’Internet Security Research Group (ISRG)
  • L’ISRG est une société d’intérêt public californienne, et la participation d’autres organisations partageant le même objectif est également la bienvenue
  • Les principes de fonctionnement sont les suivants
    • Gratuit : les propriétaires de domaines peuvent obtenir gratuitement un certificat validé pour leur domaine
    • Automatisé : l’enregistrement du certificat s’effectue lors de l’installation ou de la configuration initiale du serveur, et le renouvellement s’effectue automatiquement en arrière-plan
    • Sécurisé : la plateforme sert à mettre en œuvre les techniques de sécurité les plus récentes et les meilleures pratiques
    • Transparent : les journaux d’émission et de révocation des certificats sont publiés afin que chacun puisse les examiner
    • Ouvert : les protocoles d’émission et de renouvellement automatiques sont conçus comme des standards ouverts, et autant de logiciels que possible sont proposés en open source
    • Coopératif : le service fonctionne comme un effort commun qui profite à l’ensemble de la communauté, à l’image des protocoles Internet
  • Des informations sur l’ISRG et ses partenaires sont disponibles sur la page About

1 commentaires

 
GN⁺ 2024-11-21
Avis sur Hacker News
  • C’est de loin l’un des meilleurs services qui soient ; il a mis fin au commerce des certificats et rendu Internet plus sûr.
    À une époque, une connexion HTTPS était réservée aux projets « sérieux », car le coût du certificat dépassait largement celui du domaine. On commençait sans certificat et, si ça marchait bien, on payait environ 100 dollars pour en acheter un.

    • Il y a encore pas mal de gens qui, faute de bien connaître le sujet, achètent eux-mêmes chaque année un certificat auprès de leur hébergeur, ou paient un renouvellement automatique, comme en 2013.
    • Un proxy configuré à la va-vite demandait un certificat quel que soit le domaine qu’on lui fournissait ; un attaquant s’en est rendu compte et a continué à envoyer des requêtes HTTP avec des sous-domaines aléatoires.
      Quand je l’ai découvert, ma première pensée n’a pas été « et si Let’s Encrypt me bloquait ? », mais « désolé d’imposer une charge inutile à Let’s Encrypt à cause de ma config paresseuse ». Let’s Encrypt est au moins la meilleure chose qui soit arrivée au Web ces dix dernières années.
    • Mozilla reçoit beaucoup de critiques, mais rien qu’avec letsencrypt, il rend déjà le monde meilleur.
      Avant cela, je n’utilisais pas du tout SSL pour mes services. Le rapport coût/bénéfice n’y était pas. Depuis, je ne m’en passe plus.
    • Il existait déjà auparavant des services permettant d’obtenir gratuitement de « vrais » certificats pour un domaine unique, mais les démarches étaient compliquées et pénibles.
      Si l’on avait besoin d’un certificat wildcard couvrant plusieurs sous-domaines pour des projets personnels, cela devenait soudain très cher ; c’est formidable que ce problème ait été complètement résolu.
    • Google/Chrome et Firefox ont aussi contribué à rendre possible une autorité de certification gratuite et ouverte.
  • De notre point de vue, le 10e anniversaire tombe en 2025, mais nous apprécions ces mots chaleureux.
    Aujourd’hui marque à peu près les 10 ans de l’annonce publique de notre intention de lancer Let’s Encrypt ; l’an prochain marquera les 10 ans de l’émission effective du premier certificat par Let’s Encrypt : https://letsencrypt.org/2015/09/14/our-first-cert/
    En décembre 2015, soit il y a environ 9 ans à compter d’aujourd’hui, le service est devenu accessible à tous sans invitation : https://letsencrypt.org/2015/12/03/entering-public-beta/

    • Le fait que ce soit précisément en décembre 2015 tombait, par hasard, parfaitement pour moi.
      À l’époque, j’avais juste de quoi acheter un domaine, mais pas de quoi payer SSL, alors que le site en avait besoin. Grâce au SSL gratuit de Let’s Encrypt, le projet a réussi.
  • J’ai l’impression que l’époque où l’on payait pour des certificats était hier, et, pire encore, il y avait aussi des moments où l’on exploitait des services sans certificat du tout.
    J’ai du mal à croire que cela fasse déjà 10 ans.

    • J’ai du mal à croire qu’il existe encore des originaux anti-TLS.
  • J’ai un avis un peu partagé sur Let’s Encrypt.
    C’est une bonne chose d’avoir pu obtenir des certificats TLS gratuits sans dépendre d’acteurs douteux comme StartSSL. Grâce à cela, n’importe quel site Web a pu passer facilement en HTTPS, et l’envoi de données sensibles comme les identifiants de connexion sur des connexions non chiffrées a pratiquement disparu.
    En revanche, je pense que cela a renforcé la structure fondamentalement défaillante du modèle de confiance des certificats TLS, où n’importe quelle autorité de certification peut émettre un certificat pour mon domaine sans mon intervention. Il existe de nombreuses mesures d’atténuation, comme les enregistrements CAA ou la transparence des certificats, mais ce ne sont pas des solutions à 100 %. Sans Let’s Encrypt, il y aurait peut-être eu davantage d’incitation à mettre en œuvre de meilleurs mécanismes de confiance, comme DNSSEC+DANE, qui limitent l’émission de certificats aux entités réellement habilitées à déterminer la propriété d’un domaine.
    Je m’inquiète aussi du manque délibéré de rétrocompatibilité dans le passage des sites à TLS. Ce n’est pas simplement une question ponctuelle d’activer ou de désactiver TLS, mais un problème récurrent de protocoles et de suites cryptographiques qui sont progressivement abandonnés. C’est justifié pour ce qui doit être sécurisé, comme les banques ou l’e-mail, mais je ne pense pas que ce soit indispensable jusqu’à la consultation d’informations statiques et peu sensibles, comme des recettes. Pour les problèmes d’injection de publicités ou d’éléments douteux par les opérateurs télécoms, je pense qu’une solution réglementaire serait préférable.

    • Sur l’idée que, sans Let’s Encrypt, il y aurait eu une incitation à mettre en œuvre de meilleurs mécanismes de confiance, je pense au contraire que Let’s Encrypt a rendu ces problèmes plus visibles et pousse désormais les personnes en position d’autorité à s’en préoccuper réellement.
      Si les certificats étaient restés une souffrance permanente, quelque chose de meilleur que TLS aurait peut-être pu émerger, mais ce n’est pas l’impression que j’en ai. Le problème fondamental reste difficile.
  • Ce dont je suis le plus reconnaissant, c’est le protocole ACME
    Vous vous souvenez de la façon dont on renouvelait les certificats avant Let’s Encrypt ? Les clés privées circulaient parfois par e-mail en pièces jointes ZIP. C’était presque du théâtre de sécurité et, pour autant que je sache, une pratique courante chez plusieurs autorités de certification. Merci à Let’s Encrypt.

    • Je gère encore les renouvellements GlobalSign à la main
      Lors de la génération du CSR, on crée une nouvelle clé sur le serveur et on exécute l’opération sur le serveur lui-même, afin que la clé ne quitte pas le stockage interne du serveur. Le CSR est envoyé à GlobalSign, passe ensuite par un tiers à cause des procédures d’une grande entreprise, puis, quelques jours plus tard, on reçoit le certificat et on l’installe sur le serveur.
      J’aimerais utiliser ACME et garder la clé en mémoire, sur un ramdisk ou autre, mais c’est l’inconvénient de travailler dans une entreprise moins agile qu’un pétrolier.
    • Où sont passées les demandes de signature de certificat ? Leur objectif initial était justement d’éviter d’échanger des clés privées.
      Avant cela, je n’avais été impliqué que marginalement dans quelques certificats TLS, mais au moins les endroits que j’ai connus imposaient le système des CSR. Cela dit, dans la réalité, ces pratiques horribles étaient peut-être plus répandues que je ne le pensais.
    • Que l’on utilise Let’s Encrypt ou non, ce qu’on envoie dans un fichier ZIP devrait être la clé publique, pas la clé privée.
    • Dans certaines de mes configurations, je dois encore faire ce genre d’absurdités
      Les load balancers dans les environnements cloud ne s’intègrent souvent pas facilement avec des fournisseurs ACME externes comme letsencrypt, et les fournisseurs internes exigent de transférer le domaine chez eux, ce qui n’est pas toujours possible. Tous les fournisseurs cloud ne proposent même pas cette fonctionnalité, et la plupart semblent traiter ACME comme une fonction ajoutée après coup.
      On peut bricoler quelque chose avec des scripts en combinant terraform, des tâches cron, etc., mais ça devient sale. Le mode de défaillance, c’est que le site s’arrête si le renouvellement du certificat échoue, et avec la durée de vie désormais très courte des certificats, cela arrive souvent. Je l’ai vécu.
      Donc, il y a quelques jours, j’ai payé la taxe du certificat wildcard. J’ai payé quelques centaines de dollars pour éviter de me prendre la tête à contourner ça, et même si ça me laisse un goût amer, ça ne vaut pas la peine de passer plusieurs jours pour économiser ce qui représente en pratique moins de deux heures de mon temps. Émettre le CSR, recevoir le certificat et le copier vers les load balancers concernés, c’est une tâche de 20 minutes.
    • Combien de ces autorités de certification sont encore présentes aujourd’hui dans le magasin de confiance de tout le monde ?
  • J’aimerais qu’une chose de ce genre existe aussi dans le monde des certificats desktop
    Microsoft est passé en mode complètement délirant avec ses exigences actuelles, et ses revendeurs de certificats gagnent plus d’argent qu’avant sans lever le petit doigt.
    Ce qui est drôle, c’est que toute cette sécurité, ces audits et ces vérifications interminables reposent encore sur une photo de passeport envoyée par e-mail.

  • Peter Eckersley (1978–2022) a été intronisé à titre posthume à l’Internet Hall of Fame pour son travail fondateur sur Let’s Encrypt
    Grâce à Peter et à ses nombreux collaborateurs et collègues, Internet est devenu un meilleur endroit.

  • Justement, j’ai reçu un e-mail d’un prospect, une administration néerlandaise, qui me demande de ne pas utiliser Letsencrypt
    Ils préfèrent apparemment payer eux-mêmes les certificats, mais je ne sais pas pourquoi. On dirait qu’ils ne lui font pas confiance.

  • Beaucoup de gens ne savent pas que les certificats HTTPS ne protègent pas nécessairement contre certains types d’attaques, comme l’injection DNS
    Un exemple de la campagne d’attaque DNSPionage, qui a obtenu des certificats valides pour ses attaques, est visible ici : <https://www.youtube.com/watch?v=exy5JwAU8qk>
    En bref, l’émission de certificats HTTPS est automatisée et repose sur la sécurité du DNS, ce que DNSSEC permet d’obtenir, mais que la plupart des gens n’implémentent pas.

    • Techniquement, c’est une attaque contre l’autorité de certification, qui contourne la vérification d’autorisation : « cette personne a-t-elle vraiment le droit d’émettre un certificat pour ce domaine ? »
      Le problème, c’est que les enregistrements CAA n’aident pas non plus ici. Si l’on peut falsifier l’enregistrement A, on peut aussi falsifier l’enregistrement CAA. Je ne connais pas assez bien le DNS pour être certain que DNSSEC aiderait dans ce cas.
      Une autre attaque est le détournement d’IP. Dans ce cas, on peut réussir une méthode ACME courante comme la validation HTTP, mais pas contourner l’enregistrement CAA. Même si quelqu’un possède l’adresse IP vers laquelle pointe mon enregistrement A ou AAAA, il ne peut pas obtenir un certificat via letsencrypt si mon CAA ne liste pas letsencrypt comme émetteur autorisé.
  • Let’s Encrypt est une immense réussite et fait désormais partie de l’infrastructure essentielle
    Le choix de s’appuyer sur un protocole ouvert pour ne pas devenir un point de défaillance unique était judicieux, et permet à l’idée de survivre même si une organisation venait à disparaître.
    J’espère qu’il y aura encore beaucoup d’anniversaires comme celui-ci.