Description
matrix-js-sdk is the Matrix Client-Server SDK for JavaScript and TypeScript. An attacker present in a room where an MSC3401 group call is taking place can eavesdrop on the video and audio of participants using matrix-js-sdk, without their knowledge. To affected matrix-js-sdk users, the attacker will not appear to be participating in the call. This attack is possible because matrix-js-sdk's group call implementation accepts incoming direct calls from other users, even if they have not yet declared intent to participate in the group call, as a means of resolving a race condition in call setup. Affected versions do not restrict access to the user's outbound media in this case. Legacy 1:1 calls are unaffected. This is fixed in matrix-js-sdk 24.1.0. As a workaround, users may hold group calls in private rooms where only the exact users who are expected to participate in the call are present.
Remediation
References
https://github.com/matrix-org/matrix-js-sdk/releases/tag/v24.1.0
https://github.com/matrix-org/matrix-js-sdk/security/advisories/GHSA-6g67-q39g-r79q
https://github.com/matrix-org/matrix-spec-proposals/pull/3401
Related Vulnerabilities
CVE-2021-22114 Vulnerability in maven package org.springframework.integration:spring-integration-zip
CVE-2020-2122 Vulnerability in maven package org.jenkins-ci.plugins:brakeman
CVE-2020-12480 Vulnerability in maven package com.typesafe.play:play_2.12
CVE-2019-19135 Vulnerability in maven package org.eclipse.milo:sdk-client