What’s Vulnerable › Vulnerabilities

CVE-2024-42369: A room with itself as a its predecessor will freeze matrix-js-sdk

Description

matrix-js-sdk is a Matrix messaging protocol Client-Server SDK for JavaScript. A malicious homeserver can craft a room or room structure such that the predecessors form a cycle. The matrix-js-sdk's getRoomUpgradeHistory function will infinitely recurse in this case, causing the code to hang. This method is public but also called by the 'leaveRoomChain()' method, so leaving a room will also trigger the bug. This was patched in matrix-js-sdk 34.3.1.

Affected products

How to fix

Upgrade to a fixed version: matrix-org matrix-js-sdk 34.3.1. Check the vendor advisory for mitigations.

References

Get alerted when CVE-2024-42369 or the next vulnerability affects your stack