Skip to content
OpenAdvisories
Medium · 5.6 CVE-2026-55663 EUVD-2026-65694GHSA-p7x2-g5cq-fhmq

mediasoup: SCTP state cookie lacks cryptographic authentication, enabling unauthorized association establishment (RFC 9260 violation)

Published Aug 25, 2026 · Updated Aug 25, 2026 · Assigned by GitHub_M

Description

mediasoup is a WebRTC video conferencing system. From version 3.20.0 until 3.20.6 for the npm package and from 0.22.0 until 0.22.5 for the Rust crate, mediasoup's built-in SCTP stack authenticates state cookies using only the hardcoded msworker and 0xAD81 magic values instead of a per-instance secret and HMAC, contrary to RFC 9260 Section 5.1.3. The cookie structure and validation in worker/include/RTC/SCTP/association/StateCookie.hpp and worker/src/RTC/SCTP/association/StateCookie.cpp allow an on-path attacker targeting PlainTransport or PipeTransport with SCTP enabled and without DTLS protection to forge a COOKIE-ECHO whose packet verification tag matches the attacker-controlled localVerificationTag. The forged cookie passes StateCookie::IsMediasoupStateCookie() and Association::HandleReceivedCookieEchoChunk(), establishes an unauthorized SCTP association, and permits DataChannel message injection as a trusted peer. WebRtcTransport is not affected because its SCTP runs inside DTLS. This issue is fixed in npm version 3.20.6 and Rust crate version 0.22.5.

Affected products

VendorProductAffectedFixed
versatica mediasoup >= 3.20.0, < 3.20.6, >= 0.22.0, < 0.22.5 —

Affected packages

EcosystemPackageAffectedFixedRecord
crates.io mediasoup >= 0.22.0, < 0.22.5 0.22.5 GHSA-p7x2-g5cq-fhmq
npm mediasoup >= 3.20.0, < 3.20.6 3.20.6 GHSA-p7x2-g5cq-fhmq

References