XRPレジャー上のヘルスケア関連プロジェクト「XRP Healthcare」が提供するXRPHウォレットで、大規模な資産流出が起きた。同社は4日、複数の不正な取引を確認したとXで発表し、追って通知があるまでウォレットを使用しないよう呼びかけている。影響を受けたのはXRPH、XRPHAIおよびその他の資産で、市場にも大きな影響が出たとしている。
3時間でDAIに変わった
同社が公開した追跡結果によると、盗まれた資産はXRPレジャーからNEAR Intents、イーサリアム、ユニスワップV4を経てDAIへ変換された。最終的な着地点はイーサリアム上の単一アドレスで、約44万5,198DAI(約6,957万円)が残っているという。
資金を集めたウォレットのアドレスは rGGXaBdSRUfdarKDkt2csxL67F8MEGxHVB。そこから2つの中継ウォレットを経てNEAR Intentsへ入り、イーサリアム側の 0x3DC7BFf29Fc5a051aAB250516BaBD74ae7068930 へ到達した。
XRPレジャーの分析サイトXRPL.toが公開した検証によれば、掃き出しは9月3日22時07分(UTC)に始まり、3時間3分後にはDAIへの変換が完了していた。被害は4,011のウォレットにおよび、26万7,664XRP、2,320万XRPH、243万XRPHAIが失われている。
攻撃者は現金化を待たなかった。最初の掃き出しから31分後には、盗んだXRPHをXPMarketで売却し始めている。XRPHの価格は一時91%下落した。
被害額はXRP Healthcareの発表で約45万2,000ドル(約7,063万円)。同社は当局へ通報し、資金の経路にあるすべての取引所とスワップサービスへ、フラグ付けと凍結を要請したとしている。あわせて、被害者に対してイーサスキャン上で該当アドレスを報告するよう呼びかけている。
ステーキング機能がシードを送信していた
原因はまだ特定されていない。XRP Healthcareは、ウォレットがどのように侵害されたのか開発チームが緊急に調査中だとしている。
ただし、有力な手がかりは示された。
XRPL.toがアプリを分解して検証したところ、ステーキング機能がウォレットのシードを同社のサーバーへ送信していたことが分かった。シードは秘密鍵の元になる文字列で、これを持つ者はそのウォレットで署名できる。ステーク時とアンステーク時の両方でサーバーへ送られる実装だった。
この機能は2023年12月から2024年7月まで稼働し、1,225のウォレットが利用した。そのうち1,198、率にして97.8%が今回の被害に遭っている。
さらに、XRP Healthcare自身のステーキング用ウォレットも空にされた。このウォレットの鍵は利用者の端末には存在せず、報酬を支払うサーバーだけが保持していたものである。
それでも、これだけでは全体を説明できない。
被害者の約7割はステーキングを一度も使っていないためだ。被害ウォレットの98.6%がアプリ固有の痕跡を持ち、他のウォレットソフトを使った形跡はゼロだった。XRPL.toは、サーバーが別の経路でそれらのシードを保持していたか、あるいは検証からは見えない方法で攻撃者が到達したかのいずれかだとして、結論を保留している。
「認識していなかった」と同社
XRP Healthcareは5日、シードがサーバーへ送信または保存されることがあるかを問われ、当初は非カストディアル型として設計されていると回答した。
再度の質問に対しては、ステーキング機能の一部が完全に非カストディアルでなかったことを認識していなかったと述べ、そうであると分かっていれば非カストディアルとして宣伝することはなかったとしている。この点をウォレットのコードを書いた開発者へ直接確認しているという。
XRPL.toは、シードが端末から出ない設計になり、原因が判明するまで同ウォレットを推奨できないとしている。
利用していた場合の対応も示された。アプリに入れていた鍵はすべて侵害されたものとして扱い、残った資産は別のソフトで新しいシードから作ったウォレットへ移すこと。古いシードを新しいアプリへインポートしないこと。手数料や署名と引き換えに資金の回復を持ちかける相手には応じないことである。


