CVE-2020-5303 in Tendermint
要約
〜によって VulDB • 2026年05月23日
Tendermintのバージョン0.33.3、0.32.10、および0.31.12より前のバージョンには、サービス妨害(DoS)の脆弱性が存在します。TendermintはP2P接続リクエストの数を制限していません。各P2P接続に対してXXXバイトのメモリが割り当てられます。このメモリは接続が終了した時点でガベージコレクションされます(重複するIPまたは最大インバウンドピア数に達したため)。しかし、一時的なメモリ使用量の急増により、OOM(Out-Of-Memory)例外が発生する可能性があります。さらに、TendermintはMempoolリアクター内でピアが削除された後、そのピアの`activeID`を回収しません。これは常に発生するわけではありません。ピアが作成され、すべてのリアクターに追加される前に接続が失敗した場合(理由はどうであれ)にのみ発生します。そのため、`AddPeer`の前に`RemovePeer`が呼び出され、メモリが常に増加します(`activeIDs`マップ)。activeIDsマップの最大サイズは65535であり、このマップが最大サイズに達するとノードはパニックします。攻撃者は多数の接続試行を行い(上記のDoSを悪用)、最終的にノードをパニックに追い込むことができます。これらの問題はTendermint 0.33.3および0.32.10で修正されています。
### 詳細情報 このアドバイザリについて質問やコメントがある場合: * tendermint/tendermintでイシューを開く * [[email protected]](mailto:[email protected])までメールを送信
詳細はこちらをご覧ください。
### 謝辞 * Denial of Service 2のテストケースを作成したEthan Buchman (@ebuchman)およびその修正を行ったTess Rinearson (@tessr) * Denial of Service 1を修正したAnton Kaliaev (@melekes)
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.