matrix-js-sdk vulnerable to invisible eavesdropping in group calls
Moderate severity
GitHub Reviewed
Published
Apr 13, 2023
in
matrix-org/matrix-js-sdk
•
Updated Apr 25, 2023
Description
Published to the GitHub Advisory Database
Apr 14, 2023
Reviewed
Apr 14, 2023
Published by the National Vulnerability Database
Apr 14, 2023
Last updated
Apr 25, 2023
Impact
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.
Workarounds
Users may hold group calls in private rooms where only the exact users who are expected to participate in the call are present.
References