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.
Users may hold group calls in private rooms where only the exact users who are expected to participate in the call are present.
{
"github_reviewed": true,
"cwe_ids": [
"CWE-862"
],
"nvd_published_at": "2023-04-14T19:15:00Z",
"severity": "MODERATE",
"github_reviewed_at": "2023-04-14T16:14:17Z"
}