Faille RNG du COLDCARD : 88 millions de dollars dérobés, procédure de sécurisation
Apollinaire Monteclair
En juillet 2026, une vulnérabilité critique du générateur de nombres aléatoires (RNG) des portefeuilles matériels COLDCARD a provoqué une onde de choc dans l’écosystème Bitcoin. Environ 88,6 millions de dollars ont été dérobés sur plus de 4 500 adresses en l’espace de 41 minutes. Cette faille RNG COLDCARD, identifiée par les équipes de Galaxy Research et Block, résulte d’une erreur d’intégration logicielle ayant rendu la génération de seeds prévisible. Dans cet article, nous détaillons la chronologie de l’attaque, les fondements techniques de la vulnérabilité, et surtout, les étapes concrètes pour sécuriser vos fonds si vous utilisez un appareil concerné.
Chronologie du piratage : une attaque automatisée et chirurgicale
Le 30 juillet 2026, une première vague de transactions a drainé 1 083 BTC depuis 1 196 adresses. L’attaquant a utilisé un outil automatisé, caractérisé par des frais de transaction identiques de 30 satoshis/vB et l’absence de monnaie rendue. Selon Galaxy Research, cette signature ne laisse aucun doute sur la nature automatisée et malveillante de l’opération.
“Signature: every sweep paid an identical hardcoded 30.0 sat/vB - a 30-75x overpay vs the 0.4-1.0 sat/vB median that week - and left no change output. That looks like an automated tool spending keys it already held, not owners moving funds.”
Chainalysis a observé que l’attaquant a ciblé en priorité les portefeuilles les plus riches, soutirant 30 millions de dollars dans les dix premières minutes. Un seul portefeuille a perdu 1,8 million de dollars. Par ailleurs, une deuxième et une troisième vague d’attaques, identifiées le 1er août, ont porté l’estimation totale à 1 367 BTC, soit environ 88,6 millions de dollars, touchant 4 585 adresses. Et pourtant, l’attaquant n’a eu besoin d’aucun accès physique aux appareils des victimes.
Les caractéristiques distinctives de l’attaque
- Frais de transaction identiques et anormalement élevés (30 sat/vB contre une médiane de 0,4 à 1,0 sat/vB cette semaine-là).
- Absence totale de monnaie rendue, indiquant un script de vidage automatisé.
- Ciblage prioritaire des adresses à haute valeur dans les premières minutes.
- Fenêtre d’attaque extrêmement rapide : 41 minutes pour la première vague.
Comprendre la vulnérabilité RNG du COLDCARD
La racine du problème réside dans une erreur d’intégration du RNG. Le firmware COLDCARD, dans les versions affectées, utilise la fonction ngu.random. Or, un test conditionnel incorrect force le système à utiliser le générateur déterministe Yasmarang de MicroPython plutôt que le générateur matériel (HWRNG) du microcontrôleur STM32.
“COLDCARD firmware contains an RNG integration error that causes ngu.random to use MicroPython’s deterministic Yasmarang fallback instead of the STM32 hardware RNG,” explains Block’s report.
Ce générateur logiciel se base sur l’identifiant du microcontrôleur et des horodatages système, des sources de hasard cryptographiquement faibles et potentiellement observables ou reconstructibles. Dans la pratique, cela signifie qu’un attaquant peut recréer l’état du RNG et générer les mêmes seeds que les utilisateurs, puis les comparer aux adresses sur la blockchain pour confirmer leur validité. Le pire dans cette histoire est que l’attaquant a probablement généré les clés privées des victimes avant même que le vol ne soit détecté, en préparant ses adresses cibles en amont.
Pourquoi un RNG matériel est-il crucial ?
- Il puise son entropie dans des phénomènes physiques (bruit thermique, effet d’avalanche).
- Il est non déterministe et imprévisible par nature.
- Il résiste aux attaques par observation de l’environnement logiciel.
- Il est souvent certifié selon des standards stricts (ex : CC EAL5+, FIPS 140-2).
Quels modèles de COLDCARD sont concernés par cette faille ?
Coinkite a publié une liste précise des firmwares affectés. Il est impératif de vérifier la version de votre appareil dès maintenant.
| Modèle | Firmware affecté (Versions) | Firmware corrigé |
|---|---|---|
| Mk2 / Mk3 | 4.0.1 à 4.1.9 | ≥ 4.2.0 |
| Mk4 / Mk5 | < 5.6.0 (Standard) / < 6.6.0X (Edge) | ≥ 5.6.0 / ≥ 6.6.0X |
| Q | < 1.5.0Q (Standard) / < 6.6.0QX (Edge) | ≥ 1.5.0Q / ≥ 6.6.0QX |
En revanche, les produits TAPSIGNER, OPENDIME et SATSCARD ne sont pas affectés car ils utilisent des bases de code différentes. Coinkite a également détruit tous les appareils en attente d’expédition contenant le firmware vulnérable et a contacté les clients concernés par email.
Note importante : La mise à jour du firmware ne corrige que la génération des futures seeds. Les seeds générées sur une version vulnérable restent intrinsèquement compromises. La migration vers une nouvelle seed est obligatoire.
Procédure de sécurisation : étapes actionnables pour les utilisateurs
Si vous possédez un COLDCARD concerné, suivez scrupuleusement cette procédure. Ne sautez aucune étape.
- Vérifiez votre version de firmware dans les paramètres de l’appareil ou via la ligne de commande :
ckcc firmware version - Sauvegardez votre seed actuelle sur son support physique (carte en acier inoxydable, papier). Ne la détruisez pas tant que la migration n’est pas entièrement terminée et confirmée.
- Mettez à jour le firmware vers la version corrigée (≥ 4.2.0 pour Mk2/Mk3, ≥ 5.6.0 pour Mk4/Mk5, ≥ 1.5.0Q pour Q).
- Générez une nouvelle seed sur l’appareil mis à jour. Assurez-vous que l’appareil confirme l’utilisation du RNG matériel.
- Notez et vérifiez la nouvelle seed en suivant les instructions à l’écran. Une double vérification est fortement recommandée.
- Effectuez une transaction test d’un petit montant depuis l’ancienne seed vers la nouvelle adresse. Confirmez la réception.
- Transférez l’intégralité des fonds depuis l’ancienne seed vers la nouvelle.
- Détruisez l’ancienne sauvegarde de manière sécurisée une fois la migration confirmée.
Imaginons un investisseur français ayant acheté un COLDCARD Mk4 en 2024 avec la version 5.4.0 du firmware. Sans le savoir, son RNG utilisait Yasmarang. Lors de l’attaque du 30 juillet, son adresse Bitcoin, visible sur la blockchain, a été identifiée par l’attaquant comme étant dérivée d’une seed faible. En quelques secondes, les fonds ont été transférés vers un portefeuille contrôlé par l’attaquant. Cet incident souligne l’urgence d’agir.
Mesures compensatoires : dés et passphrase
Coinkite indique que les seeds complétées par au moins 50 lancers de dés privés, indépendants et correctement enregistrés ne sont pas considérées comme à risque par cette seule faille. De même, une passphrase BIP-39 forte et unique complique considérablement l’exploitation, car l’attaquant doit bruteforcer la passphrase en plus de la seed.
Toutefois, ces mesures ne sont que des palliatifs. Elles ne réparent pas la faiblesse intrinsèque du RNG. Un attaquant disposant de ressources suffisantes pourrait tenter de contourner une passphrase faible. La migration vers une nouvelle seed générée avec le firmware corrigé est la seule solution garantissant une sécurité absolue à long terme. En pratique, nous recommandons de considérer toute seed générée sur un firmware vulnérable comme compromise, quel que soit le niveau de protection additionnel.
Leçons pour l’industrie et perspectives réglementaires
Cette affaire est un cas d’école sur les dangers des erreurs d’implémentation cryptographique. Elle a permis le vol de 88 millions de dollars en exploitant une simple faute de code dans le firmware. Selon l’ANSSI, l’utilisation d’un RNG certifié conforme au standard NIST SP 800-90A est une exigence fondamentale pour les produits de sécurité visant la certification CSPN ou les référentiels européens. En outre, cet incident rappelle que la confiance dans le matériel ne doit jamais être aveugle.
Nous avons observé que même les portefeuilles matériels les plus réputés peuvent présenter des failles d’intégration logicielles. La transparence de Coinkite et la réactivité des équipes de sécurité de Block sont à saluer, mais cet incident impose une réflexion plus large. En France, le RGPD et les futures régulations MiCA imposent des standards de sécurité élevés pour la conservation des actifs numériques par les professionnels. La démonstration de l’utilisation d’un RNG certifié et d’un processus de génération de seed robuste pourrait devenir un critère obligatoire pour les prestataires de services sur actifs numériques (PSAN).
Conclusion : une action immédiate est nécessaire
La vulnérabilité RNG COLDCARD est un incident majeur qui a démontré qu’une simple erreur d’intégration logicielle peut compromettre la sécurité de milliers de portefeuilles matériels. Si vous possédez un COLDCARD Mk2, Mk3, Mk4, Mk5 ou Q, vérifiez immédiatement votre version de firmware et suivez la procédure de migration sans attendre. Les produits TAPSIGNER, OPENDIME et SATSCARD ne sont pas affectés. La sécurité de vos bitcoins dépend de votre réactivité face à ce type d’incident. N’attendez pas d’être la prochaine cible.