CVE intelligence and bounded remediation

CVE-2024-47080 — matrix-js-sdk is the Matrix Client-Server SDK for JavaScript and TypeScript

High CVSS 8.7

matrix-js-sdk is the Matrix Client-Server SDK for JavaScript and TypeScript. In matrix-js-sdk versions versions 9.11.0 through 34.7.0, the method `MatrixClient.sendSharedHistoryKeys` is vulnerable to interception by malicious homeservers. The method was introduced by MSC3061) and is commonly used to share historical message keys with newly invited users, granting them access to past messages in the room. However, it unconditionally sends these "shared" keys to all of the invited user's devices, regardless of whether the user's cryptographic identity is verified or whether the user's devices are signed by that identity. This allows the attacker to potentially inject its own devices to receive sensitive historical keys without proper security checks. Note that this only affects clients running the SDK with the legacy crypto stack. Clients using the new Rust cryptography stack (i.e. those that call `MatrixClient.initRustCrypto()` instead of `MatrixClient.initCrypto()`) are unaffected by this vulnerability, because `MatrixClient.sendSharedHistoryKeys()` raises an exception in such environments. The vulnerability was fixed in matrix-js-sdk 34.8.0 by removing the vulnerable functionalit…

Severity
High
CVSS
8.7 (4.0)
Published
2024-10-15
CISA KEV
Not currently listed
Ecosystem
javascript/npm
Weaknesses
CWE-200, CWE-287

Affected products

No browser-safe affected-product rows are available.

Matched remediation archetype

Authentication bypass and missing authentication

This catalog composition supplies bounded fallback guidance. Explicitly reviewed curated workflows load with the complete record below.

Check exposure

  • Map every affected endpoint and protocol path, including alternate ports, legacy routes, recovery flows, service accounts, and machine-to-machine access.
  • Confirm which deployments enable the affected authentication mode and whether the interface is reachable from untrusted networks.
  • Review session, token, credential, and proxy trust configuration without attempting account takeover.

Remediate safely

  • Apply the supported fix and centralize fail-closed authentication before protected request handling.
  • Remove default or embedded credentials, rotate affected secrets and sessions, and bind authentication decisions to the intended audience and channel.
  • Add negative tests for alternate routes, malformed or absent credentials, recovery flows, and proxy-derived identity.

Authoritative sources

Complete CVE record and remediation plan

The detailed catalog view below loads this exact record, its source evidence, and the full seven-phase agentic change plan.