medium6.9
CVE-2025-59160
matrix-js-sdk has insufficient validation when considering a room to be upgraded by another
Impact
### Impact matrix-js-sdk before 38.2.0 has insufficient validation of room predecessor links in `MatrixClient::getJoinedRooms`, allowing a remote attacker to attempt to replace a tombstoned room with an unrelated attacker-supplied room. ### Patches The issue has been patched and users should upgrade to 38.2.0. ### Workarounds Avoid using `MatrixClient::getJoinedRooms` in favour of `getRooms()` and filtering upgraded rooms separately.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| npm | matrix-js-sdk | < 38.2.0 | 38.2.0 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/matrix-org/matrix-js-sdk/commit/43c72d5bf5e2d0a26b3b4f71092e7cb39d4137c4
- https://github.com/matrix-org/matrix-js-sdk/security/advisories/GHSA-mp7c-m3rh-r56v
- https://github.com/advisories/GHSA-mp7c-m3rh-r56v
- https://nvd.nist.gov/vuln/detail/CVE-2025-59160
- https://github.com/matrix-org/matrix-js-sdk/releases/tag/v38.2.0
- https://www.npmjs.com/package/matrix-js-sdk/v/38.2.0