Skip to content

Dark Skippy 再訪:ハードウェアウォレットへの攻撃が教えてくれたこと

2024年に、セキュリティ研究者はDark Skippyを実証しました。これは、Bitcoinウォレットのシードをわずか2つの取引署名を通じて漏洩させることができる悪意のある署名者攻撃です。公開時点では、研究者はDark Skippyが実際に使用されていることを認識していませんでした。この研究は、代わりに、侵害された署名ファームウェアがどれほど破壊的であるかを示すものでした。この振り返りでは、Dark Skippyの仕組み、重要性、そしてDark Skippyの公開から得られるユーザーやウォレットメーカーが学べるセキュリティ上の教訓について考察します。

Dark Skippyとは何ですか?

Dark Skippyは、2024年に公開された悪意のある署名者攻撃です。これは特定のハードウェアウォレットモデルの脆弱性ではありません。むしろ、署名デバイスがすでに悪意のあるファームウェアを実行していると想定しています。例えば、改ざん、サプライチェーンの侵害、または偽のファームウェアアップデートのインストール後などです。

危険性は、悪意のあるファームウェアが署名プロセスを悪用して、ユーザーのシードフレーズを秘密裏に漏洩させることにあります。真にランダムな値を生成する代わりに、感染したデバイスはシードフレーズの断片を取引署名に埋め込みます。これらの署名が有効な取引としてブロックチェーンにブロードキャストされると、これらの署名を収集・分析して、全体のシードフレーズを再構築することが可能です。

研究者のデモンストレーションでは、2つの署名だけでPollardのカンガルーアルゴリズムを用いて12語のリカバリフレーズのエントロピーを回復できました。

Dark Skippyの仕組み

Dark Skippyは、悪意のあるBitcoin署名デバイスがユーザーのウォレットシードを秘密裏に漏洩させる方法です。2024年に公開されたもので、特定のハードウェアウォレットやメーカーの脆弱性ではありません。この攻撃は、デバイスがすでに悪意のあるファームウェアを実行していると仮定しています。改ざん、サプライチェーンの侵害、または偽のファームウェアアップデートのインストールなどです。

悪意のあるファームウェアは、署名時に使用される秘密のノンスを操作し、ウォレットのシードエントロピーの断片を有効な署名にエンコードします。攻撃者は、これらの署名がBitcoinネットワークを通じて伝達されたり、ブロックチェーンに記録されたりするのを識別し、隠された情報を抽出できます。

彼らの概念実証では、研究者はPollardのカンガルーアルゴリズムを用いて、2つの署名だけから完全な12語リカバリフレーズのエントロピーを再構築しました。取引には複数の署名済み入力が含まれることがあるため、両方の署名は1つの取引内で生成可能です。したがって、侵害された署名デバイスの1回の使用だけで、ウォレット全体を露出させることが十分です。

Dark Skippyはどれほど危険ですか?

Dark Skippyは特に深刻です。なぜなら、ハードウェアウォレットをオフラインに保っていても、デバイスが侵害されてしまえば攻撃を防げないからです。

エアギャップウォレットはインターネットに直接接続されていません。しかし、その署名済み取引は、QRコード、メモリーカード、USBなどを通じてオンラインデバイスに転送され、ブロードキャストされる必要があります。悪意のあるファームウェアは、これらの署名の中にウォレットシードの断片を隠すことができ、別のインターネット接続なしに情報をデバイスから出すことが可能です。

ユーザーには、署名は正常に見え、暗号学的にも有効なままです。攻撃者は、これらの署名がBitcoinネットワークに到達した後に影響を特定し、隠された情報を再構築できます。これにより、一般のユーザーが攻撃を検出するのは非常に困難になります。

研究者のデモンストレーションでは、2つの署名だけから完全な12語リカバリフレーズを再構築しました。これは単一の取引に含めることも可能です。この効率性が、Dark Skippyを悪意のある署名者攻撃の重要な進展にしました。

改ざんされたデバイスを受け取るリスクを減らすために、ハードウェアウォレットを直接メーカーまたは認定リセラーから購入しましょう
改ざんされたデバイスを受け取るリスクを減らすために、ハードウェアウォレットを直接メーカーまたは認定リセラーから購入しましょう

ただし、Dark Skippyは、通常の正規で安全なハードウェアウォレットをリモートで感染させることはできません。攻撃者はまずデバイスを侵害する必要があります。例えば、物理的な改ざん、悪意のあるファームウェア、またはサプライチェーンの侵害などです。正規のデバイスで正直なファームウェアが動作していれば、この攻撃は行われません。

xPub: 受信アドレス生成に使用される情報。Nonce: 取引署名時に使用される一度きりの値
xPub: 受信アドレス生成に使用される情報。Nonce: 取引署名時に使用される一度きりの値

メーカーによるDark Skippy防止策

ハードウェアウォレットのメーカーは、デバイスの改ざんを困難にし、侵害されたデバイスが取引内に隠せる情報を制限することでリスクを低減できます。

  • 非公式ファームウェアをブロック: デバイスは適切に検証されたソフトウェアのみを実行し、販売前に工場アクセスポートをロックすべきです。
  • ファームウェアの検証を可能に: 署名済みで公開検証可能なファームウェアは、独立した専門家がウォレットソフトウェアに秘密の改ざんがないことを確認するのに役立ちます。
  • 出荷前のデバイス保護: 安全な流通、真正性の確認、および改ざん防止パッケージにより、改ざんされたデバイスを顧客に販売しにくくします。
  • 情報漏洩防止機能の追加: ハードウェアウォレットと付属のアプリは、署名時に協働して動作し、署名を秘密裏に操作してリカバリーフレーズを漏洩させることを防ぎます。

一部のハードウェアウォレットは、情報漏洩防止機能を追加しています。例えば、Blockstream JadeおよびJade Plusは、互換性のあるウォレットソフトウェアを使用して、侵害されたデバイスが特定の取引署名内に秘密を隠すのを防ぐのに役立ちます。ただし、保護の程度は接続方法、ウォレットソフトウェア、および使用されるBitcoin取引の種類に依存します

Dark Skippyのリスクを減らすにはどうすればよいですか?

  1. 信頼できる供給元から購入: 直接メーカーまたは認定リセラーから購入しましょう。中古や事前設定済みのハードウェアウォレットは避け、パッケージやデバイスに改ざんの兆候がある場合は使用しないでください。
  2. 自分でウォレットを設定: 新しいデバイスは、新しいリカバリーフレーズの作成を求めるはずです。箱の中に入っているリカバリーワードや販売者が提供するものは絶対に使用しないでください。
  3. 信頼できるソフトウェアと公式ファームウェアを使用: ウォレットソフトウェアは公式ソースからダウンロードし、メーカー承認のファームウェアのみを使用してデバイスを最新の状態に保ちましょう。メインのウォレットには非公式や実験的なファームウェアの使用は避けてください。
  4. デバイスの管理を徹底: ハードウェアウォレットを貸し借りしたり共有したりしないでください。デバイスがあなたの管理外に出て改ざんの疑いがある場合は、安全な移行計画を立て、信頼できる代替デバイスを使用して署名を行うまで、別の取引には署名しないでください。
  5. 大きな資産の場合は、 マルチシグを検討 異なるメーカーの別々に設定されたデバイスを使用することで、1つの侵害された署名者だけでは資金を盗むことができません。マルチシグは複雑さを増すため、慣れていない場合は専門家の助けを求めてください。

結論

Dark Skippyは、オフラインのハードウェアウォレットであっても、デバイスやファームウェアがすでに侵害されている場合、秘密を漏洩させる可能性があることを示しています。ただし、正規の安全なウォレットをリモートで感染させることはできません。

ほとんどのユーザーにとって、実用的な対応策は簡単です: 信頼できる供給元から購入し、自分でウォレットを設定し、公式ソフトウェアとファームウェアを使用し、デバイスの管理を徹底してください。より多くの資産を保有している場合は、適切に設定された マルチベンダーマルチシグを採用することで、1つの侵害された署名者だけでは資金を盗むことができなくなります。