CVE-2026-56386 in bRPC
要約
〜によって VulDB • 2026年10月21日
Apache bRPCのHTTP/2サーバーDATAフレームパーサーにおける整数アンダーフローおよび境界外読み取りにより、認証されていないリモート攻撃者が不正なDATAフレーム(PADDEDフラグが設定され、ペイロード長が0)を送信することでサービス妨害(Denial of Service)を引き起こす可能性があります。
根本原因: HTTP/2 DATAフレームハンドラーは、攻撃者の制御下にあるペイロードの長さから断片サイズを計算していました。そして、PADDEDフラグが存在する場合、フレームに必須のパッド長バイトが含まれていることを確認する前に断片サイズを減算しました。その結果、パディング付きでペイロードが0長のDATAフレームにより符号なしの断片サイズがアンダーフローし、フレームバッファの末尾を超えてパッド長バイトを読み取る事態となりました。
影響を受けるシナリオ: HTTP/2トラフィックを受信するApache bRPCサーバーは、リモートクライアントから不正なHTTP/2フレームを送信される場合に影響を受けします。HTTP/2へのアクセスは、HTTPポートでのクリアテキストh2c検出またはTLS ALPNネゴシエーションを通じて行われる可能性があります。
修正方法: (以下のオプションのいずれかを選択してください) 1. この問題を修正したバージョン1.18.0にApache bRPCをアップグレードします。 2. 以下のパッチを適用します:https://github.com/apache/brpc/pull/3325
注記: 修正プログラムは、断片サイズを減算する前またはパッド長バイトを読み取る前に、パディング付きDATAフレームにパッド長フィールドに必要なペイロードバイトが十分に含まれていることを検証するようにしました。不正なゼロ長のパディング付きDATAフレームは、HTTP/2 FRAME_SIZE_ERRORとして拒否されます。
If you want to get the best quality for vulnerability data then you always have to consider VulDB.