Insufficient verification of data authenticity in versatica mediasoup
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- High
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- Low · Low · Low
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-345.
Summary
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| versatica | mediasoup | 3.20.0 to before 3.20.6; 0.22.0 to before 0.22.5 | 3.20.6, 0.22.5 | Patch available | CNA |
| — | mediasoup (npm) | 3.20.0 to before 3.20.6 | 3.20.6 | Patch available | GHSA-p7x2-g5cq-fhmq |
| — | mediasoup (crates.io) | 0.22.0 to before 0.22.5 | 0.22.5 | Patch available | GHSA-p7x2-g5cq-fhmq |
- mediasoup Vendorversatica Affected 3.20.0 to before 3.20.6; 0.22.0 to before 0.22.5 Fixed in 3.20.6, 0.22.5 Patch available CNA
- mediasoup (npm) Vendor— Affected 3.20.0 to before 3.20.6 Fixed in 3.20.6 Patch available GHSA-p7x2-g5cq-fhmq
- mediasoup (crates.io) Vendor— Affected 0.22.0 to before 0.22.5 Fixed in 0.22.5 Patch available GHSA-p7x2-g5cq-fhmq
Remediation
- Fix · CNA mediasoup (versatica) Fixed in 3.20.6, 0.22.5
- Fix · GHSA-p7x2-g5cq-fhmq mediasoup (npm) Fixed in 3.20.6 Advisory →
- Fix · GHSA-p7x2-g5cq-fhmq mediasoup (crates.io) Fixed in 0.22.5 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-55663
- 2026-10-03 Alias added: GHSA-p7x2-g5cq-fhmq
References
Other 5
- https://github.com/versatica/mediasoup/security/advisories/GHSA-p7x2-g5cq-fhmq
- https://github.com/versatica/mediasoup/pull/1829
- https://github.com/versatica/mediasoup/commit/9c1a90a8f9206b965e727d134846fb42df4980a7
- https://github.com/versatica/mediasoup/releases/tag/3.20.6
- https://github.com/versatica/mediasoup
Sources
- CVE-2026-55663 · CVE Program
- CVE-2026-55663 · NVD
- FIRST EPSS
- GHSA-p7x2-g5cq-fhmq · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences