Une faille dans le firmware Coldcard a compromis la sécurité des clés Bitcoin pendant cinq ans

Découvrez comment une erreur de configuration dans le firmware Coldcard a rendu les clés Bitcoin devinables pendant cinq ans, mettant en péril la sécuri...

Le 30 juillet dernier, un attaquant a réussi à vider 1 196 adresses Bitcoin en à peine 41 minutes, s’emparant ainsi d’environ 1 082 bitcoins, soit près de 70 millions de dollars. Ce qui est particulièrement alarmant, c’est que les victimes n’ont pas cliqué sur des liens suspects ou téléchargé des logiciels malveillants. Elles avaient simplement acheté et utilisé un Coldcard, un portefeuille matériel réputé pour sa sécurité et recommandé par les puristes du bitcoin. Le Coldcard, conçu par la société canadienne Coinkite, est censé être un appareil sécurisé qui ne se connecte jamais à Internet, ce qui le rend théoriquement inviolable. Cependant, une erreur de configuration dans le firmware de l’appareil a conduit à une faille de sécurité majeure, permettant à l’attaquant de deviner les clés Bitcoin des utilisateurs.

La faille de sécurité dans le firmware Coldcard

La faille en question a été introduite en mars 2021, avec la mise à jour du firmware 4.0.0. L’objectif de cette mise à jour était de désactiver le générateur de nombres aléatoires intégré de MicroPython et de l’utiliser pour générer des clés de chiffrement. Cependant, lors de la configuration, le paramètre MICROPY_HW_ENABLE_RNG a été défini sur zéro, ce qui a conduit à une erreur d’intégration. La bibliothèque libngu, utilisée pour vérifier la configuration, ne vérifiait pas la valeur du paramètre, mais uniquement son existence. Par conséquent, le test a passé, mais la sécurité de l’appareil a été compromise. Pendant cinq ans, les clés générées par les Coldcard ont été vulnérables à une attaque, car elles reposaient sur un générateur pseudo-aléatoire non cryptographique.

Cette faille de sécurité a des implications importantes pour les utilisateurs de Coldcard, car elle signifie que leurs clés Bitcoin peuvent être devinées par un attaquant. Les utilisateurs qui ont acheté et utilisé un Coldcard Mk3, Mk4, Mk5 ou Q sont particulièrement vulnérables, car ces appareils utilisent le même générateur pseudo-aléatoire non cryptographique. Les Mk3 se retrouvent avec une quarantaine de bits d’imprévisibilité, au lieu des 128 promis, tandis que les Mk4, Mk5 et Q ont 72 bits. Cela signifie que l’ensemble des clés que l’appareil peut produire est limité à quelques milliards de combinaisons, ce qui est facilement exploitable par un attaquant.

Les conséquences de la faille de sécurité

La faille de sécurité dans le firmware Coldcard a des conséquences graves pour les utilisateurs qui ont été touchés. Les attaquants peuvent générer des seeds candidates sur leur propre machine, calculer les adresses que chacune produirait, et les comparer à la blockchain publique. Lorsqu’une adresse contient des fonds, l’attaquant peut récupérer la clé. Aucun appareil Coldcard n’a jamais été physiquement touché, mais les clés Bitcoin des utilisateurs ont été compromises. Coinkite, la société canadienne qui fabrique les Coldcard, a publié un firmware d’urgence le 31 juillet pour tous les modèles concernés, mais la mise à jour ne répare pas les clés déjà générées. Les utilisateurs doivent générer de nouvelles clés et déplacer leurs fonds vers de nouvelles adresses.

Les configurations multisignature, où le Coldcard n’est qu’une clé parmi plusieurs, sont largement épargnées, car les attaquants doivent deviner plusieurs clés pour accéder aux fonds. Cependant, les utilisateurs qui ont utilisé leur Coldcard comme clé unique pour leurs fonds Bitcoin sont particulièrement vulnérables. Rodolfo Novak, le patron de Coinkite, a exprimé son désarroi et son désespoir face à cette faille de sécurité, et a reconnu que l’attaquant a peut-être découvert la faille à l’aide d’une intelligence artificielle, sans apporter de preuve concrète. Il est important de noter que la revue de code assistée par IA de Coinkite avait passé à côté de cette faille, ce qui soulève des questions sur l’efficacité de ces outils pour détecter les erreurs de sécurité.

Les leçons à tirer de cette faille de sécurité

Cette faille de sécurité dans le firmware Coldcard nous rappelle l’importance de la sécurité et de la vérification dans le développement de logiciels, en particulier lorsqu’il s’agit de systèmes critiques comme les portefeuilles matériels pour les cryptomonnaies. Il est essentiel de mettre en place des processus de vérification et de validation robustes pour détecter et corriger les erreurs de sécurité avant qu’elles ne puissent être exploitées. Les utilisateurs doivent également être conscients des risques associés à l’utilisation de ces appareils et prendre des mesures pour protéger leurs fonds, comme l’utilisation de configurations multisignature et la mise à jour régulière de leur firmware.

Conclusion et recommandations

En conclusion, la faille de sécurité dans le firmware Coldcard est un rappel important de l’importance de la sécurité et de la vérification dans le développement de logiciels. Les utilisateurs de Coldcard doivent prendre des mesures pour protéger leurs fonds, comme la mise à jour de leur firmware et la génération de nouvelles clés. Les développeurs de logiciels doivent également prendre des mesures pour détecter et corriger les erreurs de sécurité, en utilisant des outils de vérification et de validation robustes. Il est essentiel de tirer les leçons de cette faille de sécurité pour améliorer la sécurité des systèmes et protéger les utilisateurs contre les attaques malveillantes.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *