注目★★★★★GitHub Advisory
SIPSorcery の TURN サーバー、不正な UDP パケット 1 つで受信ループ停止・全クライアント不可(DoS)
30秒で把握
- 1SIPSorcery の TURN サーバーが不正 STUN ヘッダ(0x80–0xFF)で受信ループ停止・全クライアント DoS
- 2認証前の単一 UDP パケット送信で TURN UDP リレー永続無効化・プロセス再起動まで復旧不可
- 3ReceiveUdpAsync の例外ハンドルが while ループ外・リスタート機構欠落が根本原因・影響版の即座確認と更新推奨
要約
SIPSorcery の TurnServer に pre-authentication DoS 脆弱性が存在する。不正な STUN ヘッダバイト(0x80–0xFF 範囲)を含む UDP パケットを送信すると、`STUNHeader.ParseSTUNHeader` が `ApplicationException` をスロー、受信ループを終了させる。ループ再開のロジックが無いため TURN UDP リレーは全クライアント向けに完全に無効化され、プロセス再起動まで復旧しない。根本原因は `ReceiveUdpAsync` の例外ハンドルが `while` ループ外に配置され、`Start()` がリスタート機構なしで fire-and-forget 実行している点。
あなたへの影響
WebRTC/VoIP 基盤で TURN を運用するチームは。
推奨:本脆弱性の影響範囲(SIPSorcery のバージョン)を即座に確認し、パッチ版への更新または入力パケット検証の厳格化(STUN プリフライト)を近日中に実施推奨。