Eclairの欠陥、オンチェーン送金なしでノード継続クラッシュ

  • Erick Cestari氏は、v0.14.0以前を実行する外部から到達可能なEclairノードに影響する継続的なクラッシュの脆弱性を開示した。
  • 4GBのJavaヒープは、21万7623行のデータベースが蓄積した状態で47分43秒後に枯渇した。
  • ACINQは7月17日にPR #3324をマージし、修正を含むv0.14.1を7月29日にリリースした。

ビットコインのライトニング実装であるEclairで新たに開示された、資金供給のないチャネルに関する欠陥により、攻撃者がオンチェーンでBTCを送金しなくても、外部から到達可能なノードを繰り返しクラッシュさせられる可能性があった。この脆弱性はv0.14.0以前のバージョンに影響した。一時的なチャネル識別子と最終的なチャネル識別子の検証に一貫性がなく、ピアが資金調達トランザクションをブロードキャストせずに、保存されるチャネル要求を蓄積できたためである。これにより、保留中のチャネル数に設けられた上限を回避し、メモリとデータベースに負荷をかけられた。ただし、攻撃には計算資源とネットワーク通信も必要であった。研究者のErick Cestari氏が実施したregtestの概念実証では、21万7623行のチャネルデータベースが蓄積した後、4GBのJava仮想マシンヒープが約47分43秒で枯渇した。レコードはディスクに残り、起動時に再読み込みされたため、再起動しても継続的なクラッシュは解消されなかった。調査結果への対応は開示前にv0.14.1で完了しており、同バージョンは7月にリリースされた。ACINQは7月17日にPR #3324をマージし、7月29日にパッチを提供した。Matt Morehouse氏/lnfuzzがLNF-2026-0003として開示した別のチャネル開設時の競合状態では、孤立したチャネルプロセスがメモリやCPUを消費し続ける可能性があったが、テストしたケースでは切断または再起動によって復旧できた。ACINQは9月14日にリリースしたv0.14.3を推奨している。同バージョンは、悪意あるノードが資金喪失につながる問題を悪用できる可能性のある別の脆弱性に対応しているためである。したがって、7月の修正を現時点での完全なセキュリティ推奨とみなすべきではない。また、新たな資金供給のないチャネルの大量生成を防ぐことと、すでに過負荷となったデータベースから復旧することは別の問題である。

当サイトの情報はAIを用いて生成されており、正確性を保証するものではありません。 参考情報としてご活用ください。