攻撃は少なくとも4回の波に分けて行われました。最初の3回の波で確認された被害は、約7,300のアドレスから盗まれた1,596 BTCです。さらに第4の波が疑われており、被害総額は約2,000~2,055 BTCに達する可能性があります 。ブロックチェーン分析会社によって、集計の締め切りや第4の波を含めるかどうかで若干の数値の違いがあります :
| 情報源 | 盗まれたBTC | 米ドル換算 |
|---|---|---|
| Galaxy Research(確定) | 約1,596 BTC | 約1億ドル以上 |
| Galaxy Research(第4波含む) | 約2,000 BTC | 約1.3億ドル |
| TRM Labs | 約1,816 BTC | 約1億1600万ドル |
| K33 | — | 約1億1400万ドル |
| CryptoQuant / その他 | 1,432~1,367 BTC | 約8,900万~1億ドル |
Galaxy Researchは、この脆弱性を同時に悪用した少なくとも15の別々の攻撃者を特定しています。注目すべき点として、8月上旬の時点で盗まれたBTCの90%はまだ移動されていません。Galaxyは攻撃者のアドレスを米国連邦法執行機関に提供しています。
この脆弱性は、2021年3月にリリースされたColdcardファームウェアv4.0.1で導入されたプリプロセッサマクロのエラーでした。Cプリプロセッサのガードが、マクロの値をチェックする代わりに、マクロが定義されているかどうかをテストしていたのです。これにより、リンカがシード生成をSTM32ハードウェア乱数生成器(TRNG)ではなく、決定論的なソフトウェア疑似乱数生成器(PRNG)に解決するようになりました。このバグは、オープンソースのコードの中で5年以上も気付かれないままでした。
エントロピーの崩壊: Mk2およびMk3デバイス(ファームウェアv4.0.1~v4.1.9を実行)では、有効なエントロピーが意図された128ビットから、およそ40ビットにまで低下しました。Mk4、Mk5、Qモデルでは、フォールバックで約72ビットが生成されましたが、これも仕様を下回っています。約40ビットのエントロピーで生成されたシードは、デバイスに物理的にアクセスしなくてもブルートフォース攻撃が可能です。
攻撃は驚くべき速さで進行しました:
影響を受けたウォレットはすべてシングルシグネチャ構成でした。マルチシグネチャウォレットは影響を受けていません。
Coinkiteは、将来のシード生成のために正しいハードウェアRNGパスを復元するパッチファームウェアをリリースしました。しかし、このパッチは脆弱性のあるファームウェアで既に生成されたシードを事後的に修正することはできません。2021年3月からパッチリリースまでの間にウォレットを作成したユーザーは、新しく生成したシードで新しいウォレットに直ちに資金を移動するようアドバイスされました。同社は2019年までの顧客にメールでバグを警告し、脆弱な在庫を破棄しました。
事件前、Coinkiteは顧客データ(メール、購入記録)を90~120日後に自動的に削除するという厳格なプライバシーポリシーを持っていました。ハッキング後、同社はこのポリシーを撤回し、予想される法的措置に備えて顧客記録を保持すると発表しました。この決定は、データ最小化の姿勢もあってColdcardを選んだプライバシー重視のユーザーから大きな反発を招きました。Coinkiteは、データはアクセス制限付きで保管され、顧客は引き続き標準的な削除をリクエストできると述べています。投資会社117 PartnersのThomas Braziel氏は、Coinkiteに対する製造物責任請求と集団訴訟の可能性を調査していると報じられています。
この流出事件は、被害者が残りの資金を移動させ、市場全体がセルフカストディのリスクを再評価したことから、2026年で最高レベルのオンチェーンアクティビティを引き起こしました。ハッキング後の週における米国のスポットビットコインETFへの週間純流入額は約8億5,300万ドルに急増しました。これは、Coldcardの失敗を受けて、機関投資家が規制されたカストディソリューションへと資金をシフトさせたためです。
Coldcardのハッキングは、ビットコインのセルフカストディコミュニティに対していくつかの厳しい現実を突きつけました:
攻撃は少なくとも4回の波に分けて行われました。最初の3回の波で確認された被害は、約7,300のアドレスから盗まれた1,596 BTCです。さらに第4の波が疑われており、被害総額は約2,000~2,055 BTCに達する可能性があります 。ブロックチェーン分析会社によって、集計の締め切りや第4の波を含めるかどうかで若干の数値の違いがあります :
| 情報源 | 盗まれたBTC | 米ドル換算 |
|---|---|---|
| Galaxy Research(確定) | 約1,596 BTC | 約1億ドル以上 |
| Galaxy Research(第4波含む) | 約2,000 BTC | 約1.3億ドル |
| TRM Labs | 約1,816 BTC | 約1億1600万ドル |
| K33 | — | 約1億1400万ドル |
| CryptoQuant / その他 | 1,432~1,367 BTC | 約8,900万~1億ドル |
Galaxy Researchは、この脆弱性を同時に悪用した少なくとも15の別々の攻撃者を特定しています。注目すべき点として、8月上旬の時点で盗まれたBTCの90%はまだ移動されていません。Galaxyは攻撃者のアドレスを米国連邦法執行機関に提供しています。
この脆弱性は、2021年3月にリリースされたColdcardファームウェアv4.0.1で導入されたプリプロセッサマクロのエラーでした。Cプリプロセッサのガードが、マクロの値をチェックする代わりに、マクロが定義されているかどうかをテストしていたのです。これにより、リンカがシード生成をSTM32ハードウェア乱数生成器(TRNG)ではなく、決定論的なソフトウェア疑似乱数生成器(PRNG)に解決するようになりました。このバグは、オープンソースのコードの中で5年以上も気付かれないままでした。
エントロピーの崩壊: Mk2およびMk3デバイス(ファームウェアv4.0.1~v4.1.9を実行)では、有効なエントロピーが意図された128ビットから、およそ40ビットにまで低下しました。Mk4、Mk5、Qモデルでは、フォールバックで約72ビットが生成されましたが、これも仕様を下回っています。約40ビットのエントロピーで生成されたシードは、デバイスに物理的にアクセスしなくてもブルートフォース攻撃が可能です。
攻撃は驚くべき速さで進行しました:
影響を受けたウォレットはすべてシングルシグネチャ構成でした。マルチシグネチャウォレットは影響を受けていません。
Coinkiteは、将来のシード生成のために正しいハードウェアRNGパスを復元するパッチファームウェアをリリースしました。しかし、このパッチは脆弱性のあるファームウェアで既に生成されたシードを事後的に修正することはできません。2021年3月からパッチリリースまでの間にウォレットを作成したユーザーは、新しく生成したシードで新しいウォレットに直ちに資金を移動するようアドバイスされました。同社は2019年までの顧客にメールでバグを警告し、脆弱な在庫を破棄しました。
事件前、Coinkiteは顧客データ(メール、購入記録)を90~120日後に自動的に削除するという厳格なプライバシーポリシーを持っていました。ハッキング後、同社はこのポリシーを撤回し、予想される法的措置に備えて顧客記録を保持すると発表しました。この決定は、データ最小化の姿勢もあってColdcardを選んだプライバシー重視のユーザーから大きな反発を招きました。Coinkiteは、データはアクセス制限付きで保管され、顧客は引き続き標準的な削除をリクエストできると述べています。投資会社117 PartnersのThomas Braziel氏は、Coinkiteに対する製造物責任請求と集団訴訟の可能性を調査していると報じられています。
この流出事件は、被害者が残りの資金を移動させ、市場全体がセルフカストディのリスクを再評価したことから、2026年で最高レベルのオンチェーンアクティビティを引き起こしました。ハッキング後の週における米国のスポットビットコインETFへの週間純流入額は約8億5,300万ドルに急増しました。これは、Coldcardの失敗を受けて、機関投資家が規制されたカストディソリューションへと資金をシフトさせたためです。
Coldcardのハッキングは、ビットコインのセルフカストディコミュニティに対していくつかの厳しい現実を突きつけました: