ActualitésCryptoLe bug de faible entropie de Coldcard pousse les détenteurs de Bitcoin à réévaluer la confiance accordée aux portefeuilles matériels

Le bug de faible entropie de Coldcard pousse les détenteurs de Bitcoin à réévaluer la confiance accordée aux portefeuilles matériels

Auteur: Cointelegraph·

Points clés

  • Des attaquants ont volé plus de 100 millions de dollars en Bitcoin en exploitant une vulnérabilité de faible entropie dans les portefeuilles matériels Coldcard, ce qui leur a permis de forcer des clés privées par brute force.
  • La vulnérabilité est apparue dans la version 4.0.1 du firmware, publiée en mars 2021, qui a remplacé le générateur de nombres aléatoires matériel STM32 par le générateur pseudo-aléatoire Yasmarang de MicroPython.
  • Coinkite estime que les appareils Mk2 et Mk3 produisaient des graines avec environ 40 bits d’entropie, tandis que les modèles Mk4, Mk5 et Q atteignaient environ 70 bits, des niveaux très inférieurs aux 128 bits requis pour une phrase de récupération sécurisée de 12 mots.
  • Les utilisateurs qui ont ajouté une entropie supplémentaire via des dés ou utilisé une phrase secrète BIP-39 avec un chemin de dérivation non standard ont été protégés contre l’exploit.
  • Coinkite a publié un avertissement officiel sur la génération de graines pour les appareils concernés, et plusieurs méthodes d’entropie physique, dont les lancers de dés et les tableaux papier, sont présentées comme des alternatives plus sûres.
Le bug de faible entropie de Coldcard pousse les détenteurs de Bitcoin à réévaluer la confiance accordée aux portefeuilles matériels

À la suite de la révélation d’une grave vulnérabilité de faible entropie dans les portefeuilles matériels Coldcard — liée à des vols observés publiquement à partir du 30 juillet — les détenteurs de Bitcoin réévaluent les hypothèses de confiance qui sous-tendent leurs dispositifs de conservation autonome. Des attaquants ont exploité ce défaut pour forcer des clés privées par brute force, entraînant le vol de plus de 100 millions de dollars de BTC.

Coldcard, fabriqué par Coinkite, est largement considéré comme l’un des portefeuilles matériels les plus axés sur la sécurité dans l’écosystème Bitcoin, notamment en raison de sa conception air-gapped et de la prise en charge de fonctionnalités avancées comme les workflows multisig et PSBT. La remise en cause de ce positionnement a renforcé l’examen de la manière dont les fournisseurs de portefeuilles matériels implémentent et maintiennent leurs chemins de code les plus critiques pour la sécurité.

Comment la faille d’entropie de Coldcard a fonctionné

Les appareils Coldcard étaient équipés de « vrais générateurs aléatoires » (TRNG) STM32, conçus pour s’appuyer sur des processus physiques afin de produire des phrases de récupération impossibles à deviner. Cependant, une vulnérabilité critique semble avoir été introduite lorsque le créateur de Coldcard, NVK, a lancé une réécriture du firmware afin de faire passer le projet d’un modèle de logiciel libre sous licence GPL à un modèle en lecture seule.

À partir de la version de firmware 4.0.1, publiée en mars 2021, les appareils ont utilisé le générateur de nombres pseudo-aléatoires (PRNG) Yasmarang de MicroPython au lieu d’exploiter correctement le générateur matériel STM32. Cet écart a de facto contourné la source d’entropie matérielle. La génération de nombres aléatoires demeure un problème fondamentalement difficile en informatique, raison pour laquelle la création de clés privées sécurisées et imprévisibles doit toujours reposer, au moins en partie, sur des processus physiques externes. Le passage à l’écart du modèle GPL a également réduit la capacité des développeurs indépendants à auditer les modifications du firmware en temps réel — une tension que la communauté des portefeuilles matériels open source a depuis longtemps signalée comme un risque systémique.

Les analystes ont largement décrit l’utilisation de Yasmarang comme un mode de repli préprogrammé. Coinkite, le fabricant de Coldcard, a contesté cette caractérisation dans un récent post X.

L’hypothèse selon laquelle les Coldcard étaient programmés pour basculer vers une méthode de génération de graines manifestement peu sûre a également alimenté des spéculations sur X quant à l’éventualité d’une porte dérobée délibérément placée. Le journaliste d’investigation spécialisé Bitcoin Hodlnaut a avancé que le bug provenait de pratiques de développement négligentes et de tentatives de suppression des erreurs par des modifications arbitraires du code.

Selon les estimations de Coinkite, les appareils Mk2 et Mk3 généraient des graines avec seulement environ 40 bits d’entropie, tandis que les modèles Mk4, Mk5 et Q atteignaient environ 70 bits. Dans les deux cas, c’est largement en deçà des 128 bits requis pour une phrase de récupération sécurisée de 12 mots.

À lire aussi : Des hackers de Coldcard transfèrent 64 BTC et 200 ETH vers des mixers de cryptomonnaies

Depuis lors, James O’Beirne a mis en place un site web contenant des adresses leurres, intitulé cktripwire, afin d’estimer quels types de portefeuilles les attaquants balayent effectivement.

Ce que traque cktripwire. Source : cktripwire.com

Comment l’entropie physique a protégé certains portefeuilles

L’exploit Coldcard a une nouvelle fois rappelé avec force l’un des principes fondamentaux de la communauté : ne pas faire confiance, vérifier.

Les utilisateurs qui ne se sont pas appuyés sur un composant matériel opaque pour générer l’entropie dans l’étape la plus critique pour la sécurité, mais ont utilisé un nombre suffisant de lancers de dés, ont protégé leurs coins de l’exploit. Lancer des dés est un processus simple et visiblement transparent qu’un utilisateur ordinaire peut vérifier lui-même et comprendre intuitivement. Vérifier un TRNG, en revanche, exigerait une inspection physique détaillée de l’électronique et un examen du firmware.

Bien que certains aient utilisé les événements récents comme prétexte pour déclarer la fin de la conservation autonome, suivre cette bonne pratique ne laisse que très peu d’options à un attaquant distant. Si la phrase de récupération est générée par une entropie physique sans dépendre de la sécurité du portefeuille matériel, le seul véritable point unique de défaillance dans la génération du portefeuille est supprimé.

La clé publique étendue (xpub) et les adresses de réception dérivées de la graine peuvent être vérifiées en les important dans d’autres appareils. L’exfiltration de nonce via un airgap peut également être détectée en vérifiant si deux appareils génèrent la même signature conforme à RFC 6979 lorsqu’ils reçoivent une transaction non signée identique.

La génération d’une entropie sûre est donc la condition préalable absolue à un portefeuille sécurisé. Diverses méthodes et propositions pour la générer circulent sur X depuis la publication de l’exploit Coldcard.

La méthode la plus populaire consiste à vérifier la capacité de l’appareil à convertir correctement les faces des dés en phrase de récupération BIP-39 en appliquant un hash SHA-256. Avec plus de 100 lancers de dés, cela suffit à générer l’entropie nécessaire pour une graine de 24 mots.

Des méthodes papier simples, comme le tableau publié par Bitbox, segmentent l’espace des mots BIP-39 afin qu’une combinaison de six lancers de dés et d’un pile ou face puisse être directement associée à un mot de la graine sans utiliser d’électronique.

Des modèles plus sophistiqués, comme la feuille de travail de dé-biaisage aux dés codex32, utilisent un extracteur de von Neumann — une procédure calculable entièrement à la main — pour générer une phrase de récupération sécurisée même avec des dés biaisés.

Une alternative aux dés consiste à imprimer l’ensemble des mots BIP-39, à les découper en petits morceaux de papier de taille uniforme, à les mélanger soigneusement, puis à en tirer 24 au hasard. Des produits comme Seedsticks ou Entropia rendent cette méthode plus pratique et plus robuste.

Du matériel spécialisé comme Frostsnap tente de répartir de manière vérifiable la génération d’entropie entre plusieurs appareils. Certains utilisateurs ont même commencé à concevoir leurs propres dispositifs physiques d’entropie capables de produire des phrases de récupération presque aussi rapidement qu’un portefeuille électronique dédié.

Magazine : Les attaques contre Coldcard signifient-elles que tous les portefeuilles matériels sont désormais compromis ?