Coldcardのシード生成に脆弱性 数千万ドル規模のビットコイン流出
AI マーケットサマリー
Galaxy Researchは、7月30日の協調的な盗難が、特定のColdcardファームウェア・バージョンにおける弱いシード・エントロピーに起因していると関連付けており、約1,196のアドレスおよび最大で約1,083 BTCに影響する可能性があるとしている。この事案はフィッシングに基づくものではなく、シード生成におけるシステム的な欠陥であり、セルフカストディ利用者およびハードウェアウォレットのサプライチェーンにおける保管(カストディ)および運用リスクの認識を高めている。短期的には、予防的な資金移動、オンチェーン活動の増加、ならびにBTCのカストディ・インフラに対するリスクオフのセンチメントを引き起こす可能性がある。
影響度
● 普通
影響を受ける資産
BTC/USDT-2.20%
AI インサイト · BTC/USDTAI インサイト
▼ 弱気
今すぐ取引
⚠️ AI によって生成されたインサイトはニュースコンテンツに基づくものであり、情報提供のみを目的としています。投資助言を構成するものではなく、BingX の見解を示すものでもありません。投資にはリスクが伴います。責任ある取引を心がけてください。
Galaxy Researchの分析によると、7月30日、Coldcardハードウェアウォレットの一部で生成された"弱いシード"が悪用され、数百のアドレスからビットコインが短時間で流出した。攻撃の中核は約25分の集中的な動きとして観測され、関連が指摘されたアドレスは約1,196、流出額は最大1,083BTC(約7,000万ドル相当)に達する可能性がある。公開されているビットコインブロックチェーン上で追跡が続いており、最終的な数字は変動し得る。
影響を受けたのは、主に長期保有者が2021年3月以降に公開された脆弱なファームウェアを搭載したColdcardでリカバリーシードを生成していたケースとみられる。ColdcardはカナダのCoinkiteが開発するエアギャップ型のウォレットで、BTCの秘密鍵をインターネット接続機器から隔離する設計で知られる。流出したアドレスの多くは長期間動きがなかった。
攻撃者は高めの固定手数料を支払い、釣銭(change output)を作らずに各アドレスを全額引き出す手口を取った。利用者の自発的な送金ではなく、用意した秘密鍵リストを用いた自動化オペレーションを示唆するパターンとされる。今回の流出は、フィッシングやPCマルウェア、端末の盗難、一般的なリモート侵入が原因ではない。
問題の本質は、シード生成時の乱数が想定より弱くなるファームウェアの不具合にあった。シードは通常12語または24語で表示される秘密情報で、そこからアドレスと秘密鍵が導出される。適切に生成された12語シードは128ビットのエントロピー(組み合わせの膨大さ)を持ち、総当たりは現実的に不可能とされる。
Coldcardは本来、マイコン内蔵のハードウェア乱数生成器からランダム性を取得する想定だった。だが2021年のソフトウェアライブラリ移行の過程で、同一インターフェースを持つ2つの乱数関数が取り違えられたとCoinkiteは説明している。1つは正しいハードウェア乱数、もう1つはハードウェアを持たない基板向けの弱いソフトウェアフォールバック。Coinkiteが独自ラッパーを提供したためMicroPythonのハードウェア経路が設定で無効化されていた一方、ソフトは"設定が存在するか"しか確認せず"有効かどうか"を見ていなかった。設定が存在しつつ値が0だったことでビルドは成功し、シード生成が気付かれないまま弱いソフトウェア乱数に切り替わっていたという。
このフォールバックは、シリアル番号に近いチップ識別子や起動タイミングに紐づく内部クロックなど、予測可能な情報に強く依存していた。攻撃者が入力条件をある程度絞り込めれば、128ビットに比べて探索空間は大幅に小さくなる。Coinkiteは、脆弱なMk3で生成されたシードの実効探索空間を現時点の前提で約40ビットと見積もる。数としては大きいものの、専用計算資源と、ブロックチェーン上で可視なアドレスとの照合が可能であれば探索は現実味を帯びる。
その後のColdcardモデル(Mk4、Q、Mk5)はセキュアエレメント由来のランダム性を追加したが、影響を受けた生成器に届く量は限定的だったとされる。修正版ファームウェア導入前に作成されたシードは、実効エントロピーが約72ビットと推定され、意図された128ビットを下回る。外見上はランダムに見えても、鍵の組み合わせが"製造時情報と起動時刻"から導かれるような状態に近いと例えられる。
Coinkiteは脅威を把握後、セキュリティアドバイザリと修正版ファームウェアを公開した。影響のあるファームウェアでシードを生成した利用者に対しては、修正版へ更新したうえで"新しいシードを作り直し"、そのシードが管理するアドレスへBTCを移すよう求めている。更新だけでは不十分で、欠陥環境で作成されたシードは恒久的に弱いままであり、ファーム更新で既存の単語にランダム性を後付けできないためだ。
手順としては、端末更新、新規シード作成、バックアップとウォレットフィンガープリントの確認、受取アドレス確認、少額テスト送金の後に残高移転を推奨。移転確認までは旧バックアップを保持しつつ、旧シードは安全と見なさないよう注意を促した。修正版として、Mk3はv4.2.0以降、Mk4とMk5はv5.6.0以降、Qはv1.5.0Q以降(各Edge版も含む)を挙げた。Tapsigner、Opendime、Satscardは別コードのため影響なしと報告されている。
一方で、シード生成時に十分な独立乱数を追加していた利用者は大きく保護されていた可能性がある。Coinkiteは、公平なサイコロの"自分で行う"ロールを少なくとも50回加えることで本件に対する防御として十分とし、追加回数は安全余地を広げると説明した。強力なBIP39パスフレーズはシード単語だけでは復元できない別ウォレットを作る。マルチシグも、脆弱なColdcardシードが署名要件の一部に過ぎない場合、概ね保護されたとみられる。これらの対策はいずれも任意で、多くの被害者は当時の一般的助言(信頼できるハードウェアウォレットを購入、オフラインでシード生成、バックアップ保護、ネット接続機器に入力しない)に従っていた可能性が高い。
CoinkiteのCEO Rodolfo Novak(NVK)は7月31日、ファームウェア不具合の責任を全面的に認め、公に謝罪した。"申し訳ない。打ちのめされている。昨日の知らせにチームは胸が張り裂けそうだ"と投稿。ホットフィックスは新規作成のシードを保護するが、脆弱な環境で作られたシードは修復できない点も認めた。詳細を検証後に技術報告を公表し、警察への届出、保険請求、独立調査を行う利用者の支援も行うとしている。
Novakはまた、AIツールが古い公開コードから隠れた弱点を従来のレビューより速く見つけ得ると開発者に警鐘を鳴らした。Coinkiteは、攻撃者がAIでオープンソースのファームウェアを調査した可能性を想定する必要があるとしつつ、発見経路を示す確証はないとも述べた。加えて、主要AIモデルを用いた直近のレビューでも問題を検知できなかったと認めた。
競合各社は相次いで影響なしを表明。LedgerはXで"最近公表されたColdcard Mk3のアドバイザリの影響は受けない"とし、セキュアエレメントに組み込まれた認証済みTRNGを用い、24語のSecret Recovery Phraseあたり256ビットのエントロピーを生成すると説明。Trezorも"資産は安全"として、本件はColdcard独自ファームウェアと乱数生成方法に限られ、同社は当該コードを共有していないとした。TrezorのXアカウントは、デバイスハードウェア、ホスト、新モデルのセキュアエレメントなど複数の独立ソースを常に混合してきたとし、被害者に哀悼を示した。
攻撃者の身元は不明で、盗まれたBTCは集約アドレスからいつ動いてもおかしくない。調査側は、実際にどれだけの脆弱シードが生成されたのか、どれだけのBTCが未だ露出しているのか、追加の高額ウォレットが既に特定されていないかを精査している。Coinkiteが過去の購入者に直接連絡できる情報を十分に持っていない可能性もある。Casa共同創業者Jameson LoppはXで、Coinkiteは情報漏えい対策として顧客記録を120日で削除するとし、その結果、過去5年に脆弱なColdcardを購入した顧客へ警告連絡できないと指摘した。
オープンソースのビットコイン開発者calleは、影響を受けた人々、とりわけ生活資金を失った可能性がある人々に同情を示し、"最悪なのは、彼らがすべて正しく行っていた"と述べた。
今回の事件はColdcardの信頼回復と、ハードウェアウォレット業界におけるシード生成の独立レビュー強化にも影響を与えそうだ。利用者にとって当面の優先事項は明確で、影響対象のファームウェアでシードを作成し、十分なサイコロ由来エントロピー、パスフレーズ、マルチシグによる防御がない場合、そのシードは侵害されたものとして扱い、新規生成したウォレットへ慎重に資金を移す必要がある。コミュニティでは、さらなる流出を防ぐため注意喚起を広げる動きが強まっている。