ニュース暗号資産Coldcardのシード生成欠陥が警鐘を鳴らす—25分で594 BTCが引き出される

Coldcardのシード生成欠陥が警鐘を鳴らす—25分で594 BTCが引き出される

著者: Cryptopolitan·

重要ポイント

  • この脆弱性は、ファームウェアバージョン4.0.0から5.0.3を使用してシードが生成されたColdcard Mk2およびMk3ウォレットに影響する。ファームウェアの設定エラーにより、シード生成がハードウェア乱数生成器ではなく公開された既知の値に依存する原因となった。
  • 新型ColdcardモデルのMk4、Q、Mk5も、意図された128ビットではなく72ビットのエントロピーのみでシードを生成する。ただし、セキュアエレメントの設計に関わる異なるメカニズムによるものである。
  • 約3,800万ドル相当の約594 BTCが約500のウォレットから25分間で引き出された。追加の関連トランザクションを含めると、総額は最大1,082 BTCに達する可能性がある。
  • PINとともに個別のBIP-39パスフレーズを使用していたユーザーは、そのパスフレーズがスマートフォン、コンピュータ、またはウェブサイトに入力されたことがなければ、損失のリスクは非常に低い。
  • Bitcoinトランザクションの不可逆性と、攻撃者が資金の流れを隠蔽するためのミキシングサービスの一般的な使用により、盗まれたBitcoinの回復は困難と見なされている。
Coldcardのシード生成欠陥が警鐘を鳴らす—25分で594 BTCが引き出される

Coinkiteは、自社のColdcard Mk3ハードウェアウォレットの所有者に対し、2021年3月以降に生成されたBitcoinシードはすべて脆弱である可能性があると警告を発した。発見された欠陥により、これらのシードが予測可能になるおそれがある。Coldcardデバイスは、エアギャップセキュリティを備えたBitcoin専用のコールドストレージとして特化して販売されており、シードの予測可能性に関する欠陥は、強化されたセキュリティモデルを求めてこの製品を選択したユーザーにとって特に重大な意味を持つ。この発表は、約594 BTC(約3,800万ドル相当)が約500のウォレットから引き出されるという重大な事件と同時に発生した。

影響を受けるモデルと受けないモデル

この脆弱性はハードウェアではなく、ファームウェアに関連するものである。The BlockのBitcoinエンジニアリングおよびセキュリティチームの報告によると、Mk1は問題のあるコードを実行したことがない。ファームウェアバージョン3.2.2以降を実行するMk2およびMk3デバイスは、当初ハードウェア乱数生成器を使用して正しくシードを生成していた。

この脆弱性はファームウェアバージョン4.0.0で初めて現れる。ファームウェアバージョン4.0.0から4.1.9を使用して作成されたMk2またはMk3のシードはすべて「確認された脆弱なパス」に該当する。これは、デバイスが乱数のソースを安全に再シードしなかったためである。Coinkiteは、Mk3をサポートする最終ファームウェアリリースであるバージョン5.0.3まで、この警告を拡大している。

当初、CoinkiteはMk3のみが影響を受けると述べ、新型モデルであるMk4、Q、Mk5については「初期分析に基づけば影響はない」としていた。しかし、その後の通知で、同社はこれらの新型モデルも意図された128ビットではなく72ビットのエントロピーのみでシードを生成していることを認めた。ただし、設計が異なるためメカニズムは異なる。The Blockの報告によると、Mk4、Q、Mk5はセキュアエレメントからエントロピーを取得するが、そのうち4バイトしか保持しないため、可能なシード生成パスの数が制限される。

Coinkiteは、Tapsigner、Opendime、Satscard製品は完全に異なるコードベースを使用しており、影響を受けないことを確認した。

3,800万ドルが25分で引き出される

このエクスプロイトは急速に展開した。金曜日、0.15 BTC以上を保持する約500のウォレットが、01:31から01:56 UTCの間に引き出された。これらのウォレットの多くは数年間アクティブではなく、コインの活動は2021年から2026年に遡るものであった。

AnchorWatchのCEOであるRob Hamiltonは、Xで報告し、3つのブロックにまたがる500のトランザクションで1,324の使用済みアウトプットを追跡し、その後562 BTCが単一のアドレスに統合されたと述べた。

総額はさらに大きい可能性がある。BlockのエンジニアであるClay Garrettは、確認された盗難と同じ署名を持つ追加の695のトランザクションを特定し、これらは合計約488.1 BTCを移動させた。関連するすべてのトランザクションが含まれる場合、合計は約1,082 BTCに達する可能性がある。Coinkiteは、ウォレットの引き出しがファームウェアの欠陥によって引き起こされたかどうかをまだ検証していない。

技術的な根本原因

安全な乱数生成は、すべての暗号通貨の鍵セキュリティの基盤である。これが失敗すると、シードが公開可能な情報から導出される可能性があり、セキュリティモデル全体が崩壊するおそれがある。The Blockは、問題の原因をMk3のハードウェア乱数生成器を無効にするファームウェア設定に特定した。ファームウェアとともに使用されるライブラリは、設定の有無のみをチェックし、それが有効か無効かを確認していなかった。その結果、鍵生成はソフトウェアベースの方式に戻り、デバイスのシリアル番号やクロックレジスタなど、公開された既知の値に依存することになった。

Coinkiteは問題を、2021年3月1日付のコードコミットにまで遡って特定した。これはファームウェアバージョン4.0.0に初めて組み込まれた。同社は、完全なテストを完了する前に脆弱性を開示したと述べ、「現在進行中の攻撃が存在する」ためであるとした。

所有者向けの推奨対応

Coinkiteのガイダンスは、各ウォレットがどのように設定されていたかによって異なる。同社の暫定的な評価によると、PINに加えて個別のBIP-39パスフレーズを使用していたユーザーは、そのパスフレーズをスマートフォン、コンピュータ、またはウェブサイトに入力したことがなければ、資金を失うリスクは非常に低い。

それ以外のすべてのユーザーには、資金の移動が推奨される。Coinkiteは、未感染のデバイスで新しいシードを作成し、バックアップと受信アドレスが正しいことを確認し、まず少量のテストトランザクションを送信してから、残高を移動することを推奨している。

同社はまた、デバイスの乱数生成器を完全にバイパスする高度なダイスロール方式についても説明している。ただし、Coinkiteはユーザーに対して急いで行動しないよう注意喚起しており、復旧中のエラーが脆弱性自体よりも大きな損害を引き起こす可能性があると指摘している。

回復の見通し

盗まれたBitcoinの回復は可能ではないと見込まれている。Bitcoinのトランザクションは設計上不可逆であり、ブロックチェーンの公開台帳により盗難資金は原理的に追跡可能であるものの、攻撃者は多くの場合、ミキシングサービスやその他の技術を使用して資金の流れを隠蔽する。この事件は、独立したセキュリティ監査、再現可能なファームウェア、認証、情報開示の実践、および脆弱性対応といった検証可能な基準に基づいてハードウェアウォレットを評価することの重要性を浮き彫りにしている。これらは、Coldcard Mk3の事件を受けて特に重要な要素である。