Der Coldcard-Hersteller Coinkite hat am 20. August eine neue Standard-Firmware veröffentlicht, die Bitcoin-Hardware-Wallet-Nutzer dazu zwingt, bei jeder Generierung eines Seeds physische Zufälligkeit hinzuzufügen: mindestens 65 Tastendrücke in unvorhersehbaren Abständen, 50 Würfe mit einem sechsseitigen Würfel oder 128 physische Münzwürfe. Die Vorgabe folgt auf einen Fehler, durch den Angreifer bei betroffener Firmware private Schlüssel mit einem einzigen Tastendruck rekonstruieren konnten. Laut Coinkite haben einige Kunden bereits schwere Verluste erlitten. Die Installation der korrigierten Firmware schützt bestehende Seeds nicht rückwirkend. Betroffene Besitzer müssen daher einen neuen Seed generieren und Guthaben migrieren, es sei denn, eine dokumentierte Ausnahme für Würfelwürfe gilt.
Warum das wichtig ist
Die Ursache wurde von Block unabhängig zurückverfolgt. Sie lag in Code, der Anfragen an einen deterministischen MicroPython-Fallback weiterleitete, weil ein als null definiertes Feature-Flag als vorhanden behandelt wurde. Diese Art von Fehler ist strukturell und kein zufälliger Ausrutscher. Deshalb behandelt Coinkite jeden Seed, der mit der betroffenen Firmware generiert wurde, als potenziell rekonstruierbar. Die für neue Standard-Seeds nun vorgeschriebene menschliche Eingabe fügt externe Entropie hinzu und begrenzt den Schaden, falls die Zufallsgenerierung des Geräts erneut ausfällt. Sie kann jedoch keinem bereits vorhandenen Seed nachträglich Entropie hinzufügen. Coinkite zufolge ermitteln die Strafverfolgungsbehörden, und einige Kunden erlitten schwere Verluste. Eine verifizierte Zahl der Opfer oder die Höhe der Verluste wurde jedoch nicht veröffentlicht.
Auswirkungen auf den Markt
Der betroffene Bereich ist größer als der eigene Sicherheitshinweis von Coinkite. Die Migrationsanweisungen von Coinkite umfassen Mk2- und Mk3-Firmware 4.0.1 bis 4.1.9, Mk4- und Mk5-Standard-Firmware vor 5.6.0 sowie Edge-Firmware vor 6.6.0X, außerdem Q-Standard-Firmware vor 1.5.0Q und Edge-Firmware vor 6.6.0QX. Die technische Analyse von Block erweitert den betroffenen Bereich für Mk2 und Mk3 jedoch um 4.0.0. Besitzer von Version 4.0.0 sollten die Grenzen des Herstellers nicht als Sicherheitsnachweis betrachten. Die aktuellen korrigierten Versionen sind 5.6.1 für Mk4 und Mk5 sowie 1.5.1Q für Q-Geräte.
Häufig gestellte Fragen
-
Was hat sich an der neuen Coldcard-Firmware geändert?
Coinkite veröffentlichte am 20. August Firmware, die für jeden neuen Seed physische Zufälligkeit verlangt: mindestens 65 Tastendrücke in unvorhersehbaren Abständen, 50 Würfelwürfe oder 128 Münzwürfe. Hinzu kommen Härtungen des Signaturpfads, etwa die standardmäßige Blockierung von SIGHASH_SINGLE-Modi.
-
Welche Coldcard-Firmwareversionen sind betroffen?
Die Migrationsanweisungen von Coinkite umfassen Mk2- und Mk3-Firmware 4.0.1 bis 4.1.9, Mk4- und Mk5-Standard-Firmware vor 5.6.0 und Edge-Firmware vor 6.6.0X sowie Q-Standard-Firmware vor 1.5.0Q und Edge-Firmware vor 6.6.0QX. Die Analyse von Block erweitert den betroffenen Bereich für Mk2 und Mk3 um 4.0.0.
-
Sichert die Installation der korrigierten Firmware einen bestehenden Seed?
Nein. Das Firmware-Update härtet nur neue Seeds ab. Besitzer betroffener Firmware müssen einen neuen Seed generieren, dessen Fingerprint überprüfen, eine Testtransaktion senden und jedes mit dem alten Seed verknüpfte Guthaben migrieren, es sei denn, die dokumentierte Ausnahme für Würfelwürfe gilt.
-
Was ist die Ausnahme für Würfelwürfe bei der Migration?
Eine Migration ist nicht erforderlich, wenn der Nutzer mindestens 50 faire, unabhängige und private physische Würfelwürfe über den betroffenen Ablauf hinzugefügt und die Reihenfolge nie aufgezeichnet oder offengelegt hat. Bei weniger Würfen oder jeder Unsicherheit über diese Bedingungen sollte der Nutzer migrieren.
-
Was war die Ursache des Fehlers?
Block führte den Defekt auf Code zurück, der Anfragen an einen deterministischen MicroPython-Fallback weiterleiten konnte, weil ein als null definiertes Feature-Flag als vorhanden behandelt wurde. Dieser strukturelle Fehler ermöglichte es Angreifern, private Schlüssel mit einem einzigen Tastendruck zu rekonstruieren.