Vulnerability advisory

CVE-2023-29529

matrix-js-sdk vulnerable to invisible eavesdropping in group calls

Published Updated OSV record ↗

Also known as GHSA-6g67-q39g-r79q

Severity
  • CVSS 3.xCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N

Affected versions

Repository

Affected commitsFixed by commit
GIT github.com/matrix-org/matrix-js-sdk ↗
All commits before 7d45947fb3dc4b0e291e03adac5348ad8eeaf32a7d45947fb3dc4b0e291e03adac5348ad8eeaf32a
Also listed as affected (56)
  • v24.1.0-rc.1
  • v8.1.0
  • v8.1.0-rc.1
  • v8.0.0
  • v7.1.0
  • v7.1.0-rc.1
  • v5.0.1
  • v2.4.1
  • v2.0.1
  • v2.0.1-rc.2
  • v2.0.1-rc.1
  • v1.0.0
  • v1.0.0-rc.2
  • v1.0.0-rc.1
  • v0.11.0
  • v0.11.0-rc.1
  • v0.10.7
  • v0.10.7-rc.1
  • v0.10.5
  • v0.10.5-rc.1
  • v0.10.3
  • v0.10.2
  • v0.10.3-rc.1
  • v0.10.2-rc.1
  • v0.8.3
  • v0.8.3-rc.1
  • v0.8.2
  • v0.8.1
  • v0.8.1-rc.1
  • v0.8.0
  • v0.7.10
  • v0.7.9
  • v0.7.4
  • v0.7.4-rc.1
  • v0.7.2
  • v0.7.1-rc.1
  • v0.6.4
  • v0.6.4-rc.2
  • v0.6.2
  • v0.6.1
  • v0.6.0-rc2
  • v0.6.0-rc1
  • v0.5.6
  • v0.5.5
  • v0.5.4
  • v0.5.3
  • v0.5.2
  • v0.5.1
  • v0.5.0
  • v0.4.2
  • v0.4.1
  • v0.2.2
  • v0.2.1
  • v0.2.0
  • v0.1.1
  • v0.1.0

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.

References

  • Codex
  • Claude Code
  • VS Code
  • GitHub Copilot
  • Cursor
  • Cline
  • Windsurf
  • Google Anti-gravity
  • OpenCode
  • Pi
  • Gemini CLI
  • Hermes Agent
  • Zed
  • Junie
  • Qwen Code
  • Kiro
  • Kilo Code
  • Factory Droid

Set up GitHits for your agents

Run this command:

<> bash
npx githits@latest init

What happens next:

  1. Opens your browser to authorize GitHits
  2. Asks whether to set up GitHits at the user or project level
  3. Detects your supported AI coding tools
  4. Lets you choose which tools to configure
  5. Configures the selected tools