ニュース暗号資産XRP Ledger、新たに発行可能なXRPを生み出しえた10年物の脆弱性を修正

XRP Ledger、新たに発行可能なXRPを生み出しえた10年物の脆弱性を修正

著者: Crypto Adventure·

重要ポイント

  • •XRP Ledger決済エンジンの重大な脆弱性により、攻撃者が台帳の供給保護機構を迂回する整数オーバーフローを通じて使用可能なXを作成できた可能性がありました。
  • •2015年頃から存在したこの脆弱性は、オーダーブックの複数のオファーを消化する意図的に構成されたトランザクションを必要とし、通常の支払いや取引では引き起こされませんでした。
  • •9月22日にXRPLバグバウンティプログラムを通じて非公開で報告され、公開XRP Ledgerネットワークでの悪用の証拠はありませんでした。
  • •開発者は標準のアメンドメント手続きを迂回して緊急パッチxrpld 3.4.1を9月25日にリリースし、80%超のバリデータが同日にアップグレードしました。
  • •XRPの総供給量は変更されておらず、サーバー運営者はネットワークとの同期のためxrpld 3.4.1以降を実行する必要があります。
XRP Ledger、新たに発行可能なXRPを生み出しえた10年物の脆弱性を修正

XRP Ledgerの開発者らは、攻撃者が供給保護機構を迂回してXRPを無から作成・使用できた可能性がある重大な脆弱性を開示しました。

この脆弱性は台帳の決済エンジンに存在し、9月22日にXRPLバグバウンティプログラムを通じてCayden Liao氏とVeria AIから報告されました。RippleXのエンジニアはスタンドアローンサーバー上でエクスプロイトを再現し、新たに作成されたXRPが後続の支払いで使用可能であることを確認したうえで、重大度を「major」から「critical」に引き上げました。この対応は標準的な協調開示の慣行に沿ったものです。バウンティ報告はまず非公開でメンテナーに届けられ、完全な技術的詳細は修正の提供後に公開されます。

XRPL公式ブログで公開された開示レポートによると、いずれの公開XRP Ledgerネットワークでもこの脆弱性が悪用された証拠はありません。開発者は非公開で修正を準備し、パッチが緊急リリースブランチにマージされた2日後の9月25日にxrpldバージョン3.4.1をリリースしました。

整数オーバーフローがXRP供給チェックを迂回する恐れ

この脆弱性は2015年頃からXRP Ledgerの決済エンジンに存在し、支払いがオーダーブックの複数のオファーを消化する際のチェックされていない64ビット整数演算に関するものでした。

64ビット数値の上限は約1,840京であり、この種の固定幅演算におけるオーバーフローは台帳ソフトウェアで知られたバグの類型です。2010年には、Bitcoinの価値チェックにおける整数オーバーフローにより約1,840億BTCが一時的に作成され、開発者が数時間以内にパッチを適用した事例があります。

攻撃者は数百のアカウントを作成し、少量の別トークンを極めて大量のXRPと引き換えに売る特別に細工したオファーを出すことができました。それらのオファーを消化する単一の支払いにより、計算された合計が整数の最大値を超える可能性がありました。トランザクションが拒否される代わりに、合計は小さな数値に折り返されていました。各オファーの所有者はオファーに記載された全額のXRPを受け取り、買い手ははるかに小さい折り返し後の値のみを支払うことになります。

撃に必要なのは、アカウントとオファーの準備金として数百XRP(大半は後で回収可能)と通常のトランザクション手数料のみでした。

トランザクションがXRPを作成できないことを保証するXRPLの組み込みチェックでは、このエクスプロイトを阻止できなかったはずです。その不変条件は同じ種類の演算を使用しており同様にオーバーフローする可能性があり、アカウントごとの残高上限も、新たに作成されたXRPを数百のアカウントに分散させることで迂回可能でした。この脆さが問題となったのは、XRPの供給の仕組みのためです。全1,000億トークンは台帳のローンチ時に作成され、トランザクション手数料はXRPを焼却するものであり、不変条件チェックこそが支払い経路によって総供給量が増加しないことを保証する仕組みだからです。脆弱性は意図的に構成されたトランザクションに限られ、通常の支払いや取引活動では引き起こされませんでした。

バリデータ、数時間で3.4.1に移行

開発者らは、XRPLの通常のアメンドメント手続き(プロトコル変更の有効化には通常、80%超のバリデータの支持が2週間必要)に委ねるのではなく、XRPオーバーフロー修正を即座に展開することを選択しました。その期間中脆弱性が露出したままになれば、攻撃手法が公知でありながら使用可能な状態が続く時間帯が生じていたでしょう。

デフォルトのUnique Node List上の80%超のバリデータが、緊急版がリリースされた当日の9月25日に3.4.1へアップグレードしました。非公開の報告から過半数のバリデータ採用までの3日間は、台帳の緊急リリース経路が末端まで機能したことを示しました。

バージョン3.4.1では、オファー合計がオーバーフローする恐れがある支払いを拒否するようになり、XRP作成の不変条件にはより広いカウンターが使用されます。類似の演算障害に対して、追加の残高計算も強化されました。

この事案は、2025年に発見されたXRP Ledgerプロトコル自体ではなく悪意のあるJavaScriptパッケージリリースに影響した、無関係なxrpl.jsサプライチェーン侵害に続くものです。XRPLのアメンドメントシステムは、提案中のXRPL Lending Protocolなど新機能にも使用されており、バリデータの承認が新しいトランザクション動作の有効化を左右します。

オーバーフローの脆弱性により、XRPの既存の供給量が変更されることはありませんでした。不正なXRPは確認されておらず、サーバー運営者はネットワークとの同期を維持するため、xrpld 3.4.1以降を実行する必要があります。今後観測可能なのは運用面の動向です。旧バージョンから3.4.1以降への移行と、この修正が迂回した標準のアメンドメント手続きを通じて進むXRPL Lending Protocolなどの提案の行方です。

出典: XRP Ledger Patches Decade-Old Flaw That Could Create Spendable XRP — Crypto Adventure