veilletech.fr
8 sept. Feed du jour
#01 SÉCURITÉ Faille

Il factorise les clés RSA d'une AC de 1998

Une clé que personne ne dérange est surtout une clé que personne ne renouvelle.

Matthew McPherrin a extrait les racines de confiance des vieux installeurs Netscape et Internet Explorer archivés sur archive.org, puis factorisé deux certificats 512 bits de l'autorité canadienne E-Certify livrés dans Netscape 4.51 en mars 1999 : 32 heures et 29 heures de CADO-NFS sur un Ryzen 9 5950X de bureau. Les clés privées sont publiées. L'exploit n'a aucune portée pratique — les racines ont expiré en 2003 — mais il matérialise ce que veut dire « clé trop courte » à l'heure où RSA-260 vient d'être factorisé.

3 min de lectureintermédiairevidéo 1:19
Partager
Sommaire4 sections
  1. Ce qui se passe
  2. Pourquoi ça compte
  3. Ce que ça change pour vous
  4. À retenir

Ce qui se passe

Matthew McPherrin cherchait une racine de confiance assez faible pour être cassée sur son ordinateur personnel. Il en a trouvé deux.

Les magasins de certificats n'étaient pas encore mis à jour par le réseau dans les années 1990 : les racines voyageaient dans l'installeur du navigateur. Or archive.org conserve des installeurs Netscape et Internet Explorer d'époque. Il a donc téléchargé les deux collections, extrait toutes les racines, et trié par taille de clé.

Netscape 4.51, publié en mars 1999, embarquait deux certificats de 512 bits émis par E-Certify, une autorité canadienne aujourd'hui disparue : l'un valable pour SSL, l'autre pour S/MIME. Internet Explorer, lui, n'a apparemment jamais livré de racine 512 bits pour SSL.

Factoriser le module de la clé publique donne les deux nombres premiers, donc la clé privée. Sur un Ryzen 9 5950X de bureau, avec CADO-NFS :

Terminal
# E-Certify RSA 512 Gold Server (SSL)   → 32 heures
# E-Certify RSA 512 Gold Client (S/MIME) → 29 heures

Les certificats, les clés privées reconstruites et l'outillage sont publiés dans github.com/mcpherrinm/ancientroots. L'auteur a même monté un serveur TLS d'époque en Go — aucune pile TLS moderne ne parlant plus à Netscape 4.51 — hébergé sur e-certify.fly.dev.

Pourquoi ça compte

La portée offensive est nulle, et l'auteur le dit lui-même : ces racines ont été retirées par Netscape en 2002 et ont expiré le 16 octobre 2003. Il faudrait faire tourner Netscape 4.51 avec l'horloge reculée de vingt-cinq ans.

Ce qui compte est le calendrier, parce qu'il se répète.

Aucun de ces seuils n'a été franchi par surprise. À chaque fois, l'écart entre « on sait que c'est faible » et « on a fini de le remplacer » s'est compté en années.

Ce que ça change pour vous

Le Web PKI est surveillé, daté, audité — vos autorités internes ne le sont pas. Ce sont elles qui portent le risque :

  1. Les racines privées d'un maillage de services ou d'un VPN d'entreprise, émises une fois et jamais revues.
  2. Les clés de signature de paquets, de firmware ou de jetons, souvent créées au démarrage d'un projet avec les valeurs par défaut de l'époque.
  3. Les certificats clients longue durée, dont la date d'expiration est le seul garde-fou.

RSA 2048 bits reste la base aujourd'hui, mais sa fin est déjà écrite face au risque quantique. La bonne question n'est pas « est-ce cassable ce matin », c'est « dans combien d'années expire cette clé, et est-ce que sa taille tiendra jusque-là ».

À retenir

Ce billet est une curiosité, pas une alerte. Sa valeur est démonstrative : deux jours de calcul sur une machine de bureau suffisent à reconstruire l'identité d'une autorité de certification, dès lors que la clé a été dimensionnée avec les habitudes d'il y a vingt-cinq ans. Le fait notable n'est pas que ce soit possible aujourd'hui, c'est que ça l'était déjà en 1999.

Source : Matthew McPherrin