{"cve":"CVE-2024-42369","nvd":{"published":"2024-08-20T15:15:21.540","modified":"2026-06-17T07:49:20.483","status":"Analyzed","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.","cvss_v4":null,"cvss_v3":{"version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","score":5.3},"cwes":["CWE-674"],"references":["https://github.com/matrix-org/matrix-js-sdk/commit/a0efed8b881b3db6c9f2c71d6a6e74c2828978c6","https://github.com/matrix-org/matrix-js-sdk/security/advisories/GHSA-vhr5-g3pm-49fm"],"products":["matrix:javascript_sdk"],"source":"nvd","synced_at":"2026-10-19T21:54:16.205165117+00:00"},"epss":{"cve":"CVE-2024-42369","score":0.00483,"percentile":0.41611,"date":"2026-10-31"},"kev":null,"osv":[{"id":"GHSA-vhr5-g3pm-49fm","url":"https://osv.dev/vulnerability/GHSA-vhr5-g3pm-49fm","summary":"matrix-js-sdk will freeze when a user sets a room with itself as a its predecessor","modified":"2024-08-20T18:58:55.366577Z","packages":[{"ecosystem":"npm","name":"matrix-js-sdk","purl":"pkg:npm/matrix-js-sdk","ranges":["<34.3.1"],"fixed":["34.3.1"]}]}],"attribution":["This product uses the NVD API but is not endorsed or certified by the NVD.","EPSS scores: FIRST Exploit Prediction Scoring System, https://www.first.org/epss","Known exploited vulnerabilities: CISA Known Exploited Vulnerabilities Catalog, https://www.cisa.gov/known-exploited-vulnerabilities-catalog","Package advisories: OSV (https://osv.dev), from the GitHub Advisory Database, PyPA, Go, RustSec and other ecosystem databases, under CC-BY 4.0 or CC0","CVE records: the CVE Program's CVE List (https://www.cve.org), under its terms of use (https://www.cve.org/Legal/TermsOfUse). CVE is a registered trademark of The MITRE Corporation; this product is not affiliated with the CVE Program."]}