WORK.SIGNALALL SIGNALS
/ SECURITY / DEEP DIVE

Twisted HTTP/2サーバーにHIGHのRapid Reset型DoS(GHSA-vpp8-g58w-m8mp)

82 / 100SIGNAL DEEP DIVESECURITY約2分で読める

Python製の非同期ネットワーク基盤TwistedのHTTP/2サーバーに、認証不要の遠隔サービス拒否脆弱性が確認された。ストリームを直後にリセットする要求を繰り返すことで、同時ストリーム数の制限を回避してCPU処理を増幅できる。開発元はHIGH/CVSS 7.5と評価し、修正を含む26.10.0rc1を公開している。

30秒でわかる / THE SIGNAL

Python製の非同期ネットワーク基盤TwistedのHTTP/2サーバーに、認証不要の遠隔サービス拒否脆弱性が確認された。ストリームを直後にリセットする要求を繰り返すことで、同時ストリーム数の制限を回避してCPU処理を増幅できる。開発元はHIGH/CVSS 7.5と評価し、修正を含む26.10.0rc1を公開している。

HTTP/2のリセットが要求処理より後に扱われる

Twistedの公式セキュリティ勧告GHSA-vpp8-g58w-m8mpによると、twisted.webのHTTP/2サーバーでは、要求ヘッダーでストリームの終了を宣言した直後にRST_STREAMを送ると、リセット処理より先に要求がルーティングされ、レンダリングされる。要求はキャンセルされているにもかかわらず、サーバー側では処理負荷が発生する。

同時ストリーム数制限を回避する仕組み

リセットされたストリームは解放されるため、サーバーが設けた同時ストリーム数の上限に蓄積されない。公式勧告は、単一接続からこの操作を繰り返すだけでCPUコアを飽和させ得ると説明する。認証は不要で、機密情報の窃取や任意コード実行ではなく、可用性を狙うサービス拒否の問題だ。過去のHTTP/2 Rapid Reset問題CVE-2023-44487と同じ攻撃類型に属するが、本件のGHSAを同CVEと同一視してはならない。

影響範囲と修正の公開状況

公式勧告はTwisted 26.4.0以前を影響範囲とし、26.4.0での確認を記載している。修正版として挙げられる26.10.0rc1は2026年10月22日公開のプレリリースで、リリースノートにもGHSA-vpp8-g58w-m8mpの修正が明記されている。通常の安定版とは異なるため、導入時は環境での互換性・運用方針を確認し、正式版の公開状況も継続確認する必要がある。

運用上の対策と留保

TwistedでHTTP/2を受け付ける環境は利用版を確認し、修正済みリリースへの移行計画を立てる。すぐにプレリリースを適用できない場合、HTTP/2公開経路の必要性やフロントプロキシ側の接続・要求制御を点検することが暫定的なリスク低減策となるが、公式修正の代替として保証されたものではない。開発元の深刻度はHIGH、CVSS v3.1 7.5。実環境での悪用は公式勧告では確認されておらず、未確認とする。

TRANSMISSION / AFTER THE SIGNAL

読んだ、その先へ。

気になった変化を共有して、次のシグナルへ。

SHARE THIS SIGNAL

BACK TO THE INDEX / FIND THE NEXT SIGNALALL SIGNALS