XPR Network(XPR)の流動性プールから、わずか11分間で900万ドル超が抜き取られた。原因は、出金時に「マイナス値」を受け入れてしまうスワップ契約の設計不備だった。
重要ポイント
- 攻撃者は約11分で、XPR Networkの流動性プールから900万ドル超を引き出した。
- 出金関数がマイナス値を許容しており、攻撃者は内部残高を水増ししたうえで実トークンを抜き取ることができた。
- ブロックプロデューサーが契約を修正し、約18億XPRを差し押さえたことで、奪取されたトークンの大半はチェーン上に留まっている。
XPR Networkのスワップ契約を突いた攻撃
攻撃対象となったのは、ネットワークのオンチェーンスワップ契約「proton.swaps」だ。ここから攻撃者は、約15.6億XPR(約403万ドル相当)を流出させた。
問題の根源は、出金用の関数が負の値を受け入れていた点にある。攻撃者はこの仕様を利用し、内部的な残高を人為的に膨らませたうえで、それに見合う実トークンを引き出すことに成功。ステーブルコイン、ブリッジ資産、レンディングプールなど、同一の流動性を共有する複数のプールに攻撃を連鎖させ、最終的な被害総額は900万ドルを超えた。
その後、約5億6300万XPR(約146万ドル相当)がレンディングプロトコル経由で移動した。攻撃者は奪取したステーブルコインを担保に借り入れを行い、影響を受けたXPRは累計で約21.2億枚、流通供給量の約6.5%に達した。さらに約7億6400万XPR(約200万ドル相当)が、別のアカウントへ移された形跡も確認されている。
関連記事: XRP ETF、9週連続流入で過去最高の17億ドルに到達 価格軟調でも資金流入続く
XPR価格は支持線を割り込み下落
攻撃の影響は数時間以内に市場へ波及した。XPRは日曜日に約0.0026ドルまで下落し、24時間で約5.6%安。直近安値の0.00245ドル近辺を付けた後も、直前まで支持線として機能していた0.00271ドルを明確に割り込んだ。同じ取引セッション中には一時0.00277ドルまで買われており、時価総額は約7400万ドルまで縮小している。
RSIは27.47まで低下し、典型的な「売られ過ぎ」水準に突入した。これは、需給の均衡を探る調整というより、一方向の投げ売りが続いていることを示すシグナルだ。1日の売買代金は約290万ドルにとどまり、押し目買いの厚みは乏しい。
被害額そのものは、今年発生したDeFiハッキングの中では最大級というわけではない。しかし注目すべきは「壊れ方」だ。入力値チェックを一つ欠いただけで、単一のスワップ契約にとどまらず、同じ流動性を共有するレンディングやブリッジ資産のプールへと被害が波及した。攻撃にフラッシュローンもオラクル操作も不要で、「契約が拒否しなかったマイナス記号」だけでここまで広範な損失が生じた格好だ。
Metallicusが盗難XPRを凍結
ブロックプロデューサーはUTC時間21時32分に問題の契約を修正。その約2時間後には、約18億XPRを差し押さえ、コミュニティ管理下に置いた。影響を受けた約21.2億XPRのうち、ネットワーク外の取引所などに流出したのは3億1950万XPRにとどまる。
こうした経緯から、被害に遭った供給の大半は依然として「取り戻し可能」な状態にある。これは、XPR Networkが委任型プルーフ・オブ・ステーク(DPoS)を採用しており、選出された少数のブロックプロデューサーがチェーン上の状態に直接介入できる設計だからこそ実現した対応だ。同ネットワークがこの「レバー」を引くのは今回が初めてではない。
XPR Networkの主要開発者であるMetallicusは、2024年9月にレンディング契約でリエントランシー攻撃が発生したことを公表。直ちに入金・借り入れ・清算を停止し、影響資産を凍結した上で、翌月にかけて段階的にレンディング機能を再開した経緯がある。

