RippleXは、XRP Ledgerで資金を用意せずにXRPを生成・利用できる恐れがある脆弱性を、サーバーソフト「xrpld」の3.4.1で修正しました。XRPの固定供給という前提に関わる問題で、RippleXは公開ネットワークで悪用された証拠は確認していないと説明しています。
- Cayden Liao氏とVeria AIが9月22日に内部報告
- xrpld 3.4.1を9月25日に提供しました。
- XRPの固定供給を損なう可能性がある脆弱性
- RippleXは公開ネットワークの悪用証拠を未確認と説明
資金を用意せずXRPを生成できる恐れと修正版
XRP Ledger(XRPの取引を記録するネットワーク)で、送金者が資金を用意しないまま新たなXRPを生成し、後の取引で使える状態にできる可能性がある脆弱性が報告されました。脆弱性は2015年から存在したとみられ、研究者Cayden Liao氏とVeria AIが9月22日に内部報告したとされています。
Rippleの開発部門であるRippleXは、単独サーバー上で攻撃を再現し、生成されたXRPを後続の取引で使用できることを確認したと説明しています。修正は、XRP Ledgerを運用するサーバーソフトであるxrpldのバージョン3.4.1として9月25日に提供されました。このリリース時点では、修正対象の詳細は開示されていなかったとされています。
XRPは2012年の台帳開始時に全1,000億XRPが生成され、それ以上は追加されない設計です。このため、脆弱性が悪用されれば、固定供給という前提を損なう可能性がありました。
組み込み取引所の計数処理に生じた不整合
問題は、XRP Ledgerに組み込まれた交換機能(ネットワーク内でトークンを交換する機能)の計数処理にありました。複数のアカウントに処理を分散させた場合、支払うべきXRPの合計がソフトウェアの計数上限を超え、正しく扱われなくなる可能性があったとされています。
この不整合が起きると、売り手側に支払われるXRPと買い手側に請求されるXRPの額が一致せず、資金を裏付けとしないXRPが残るおそれがありました。取引後に新しいXRPが増えていないかを確かめる処理も、誤って計算された合計を参照するため検知できない可能性がありました。受取額の上限も、複数のアカウントに分散されるため機能しないと説明されています。
単独サーバーでの再現と公開ネットワークの状況
調査報告では、問題の再現には複数のアカウントの作成と取引手数料が必要で、アカウントの作成に使うXRPの大半は回収可能だったとされています。RippleXは公開ネットワークで脆弱性が悪用された証拠は見つかっていないと説明しています。
確認された範囲では、単独サーバーでの再現後にxrpld 3.4.1が提供されました。公開ネットワークでの悪用の有無については、RippleXの説明が示されており、調査報告はこの修正に至る経緯と計数処理の問題を扱っています。
