{"id":"CVE-2021-21393","aliases":["DEBIAN-CVE-2021-21393","EUVD-2021-0129","GHSA-jrh7-mhhx-6h88","PYSEC-2021-26","UBUNTU-CVE-2021-21393"],"status":"published","title":"Denial of service (via resource exhaustion) due to improper input validation on groups/communities endpoints","description":"Synapse is a Matrix reference homeserver written in python (pypi package matrix-synapse). Matrix is an ecosystem for open federated Instant Messaging and VoIP. In Synapse before version 1.28.0 Synapse is missing input validation of some parameters on the endpoints used to confirm third-party identifiers could cause excessive use of disk space and memory leading to resource exhaustion. Note that the groups feature is not part of the Matrix specification and the chosen maximum lengths are arbitrary. Not all clients might abide by them. Refer to referenced GitHub security advisory for additional details including workarounds.","severity":{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-11","score":0.01596,"percentile":0.76065,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-20"],"published":"2021-04-12T21:35:14Z","modified":"2026-10-20T10:54:28Z","fixes":[{"ecosystem":"PyPI","package":"matrix-synapse","fixed_in":["1.28.0"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"matrix-synapse","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.28.0"}]}]},{"source":"osv","ecosystem":"PyPI","package":"matrix-synapse","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.28.0"}]}],"versions":["0.33.5","0.33.5.1","0.33.6","0.33.6rc1","0.33.7","0.33.7rc1","0.33.7rc2","0.33.8","0.33.8rc2","0.33.9","0.34.0","0.34.0.1","0.34.0rc1","0.34.0rc2","0.34.1.1","0.99.0","0.99.0rc1","0.99.0rc2","0.99.0rc3","0.99.0rc4","0.99.1","0.99.1.1","0.99.1rc1","0.99.1rc2","0.99.2","0.99.2rc1","0.99.3","0.99.3.1","0.99.3.2","0.99.3rc1","0.99.4","0.99.4rc1","0.99.5","0.99.5.1","0.99.5.2","0.99.5rc1","1.0.0","1.0.0rc1","1.0.0rc2","1.0.0rc3","1.1.0","1.1.0rc1","1.1.0rc2","1.10.0","1.10.0rc1","1.10.0rc2","1.10.0rc3","1.10.0rc5","1.10.1","1.11.0","1.11.0rc1","1.11.1","1.12.0","1.12.0rc1","1.12.1","1.12.1rc1","1.12.2","1.12.3","1.12.4","1.12.4rc1","1.13.0","1.13.0rc1","1.13.0rc2","1.13.0rc3","1.14.0","1.14.0rc1","1.14.0rc2","1.15.0","1.15.0rc1","1.15.1","1.15.2","1.16.0","1.16.0rc1","1.16.0rc2","1.16.1","1.17.0","1.17.0rc1","1.18.0","1.18.0rc1","1.18.0rc2","1.19.0","1.19.0rc1","1.19.1","1.19.1rc1","1.19.2","1.19.3","1.2.0","1.2.0rc1","1.2.0rc2","1.2.1","1.20.0","1.20.0rc1","1.20.0rc2","1.20.0rc3","1.20.0rc4","1.20.0rc5","1.20.1","1.21.0","1.21.0rc1","1.21.0rc2","1.21.0rc3","1.21.1","1.21.2","1.22.0","1.22.0rc1","1.22.0rc2","1.22.1","1.23.0","1.23.0rc1","1.23.1","1.24.0","1.24.0rc1","1.24.0rc2","1.25.0","1.25.0rc1","1.26.0","1.26.0rc1","1.26.0rc2","1.27.0","1.27.0rc1","1.27.0rc2","1.28.0rc1","1.3.0","1.3.0rc1","1.3.1","1.4.0","1.4.0rc1","1.4.0rc2","1.4.1","1.4.1rc1","1.5.0","1.5.0rc1","1.5.0rc2","1.5.1","1.6.0","1.6.0rc1","1.6.0rc2","1.6.1","1.7.0","1.7.0rc1","1.7.0rc2","1.7.1","1.7.2","1.7.3","1.8.0","1.8.0rc1","1.9.0","1.9.0.dev1","1.9.0.dev2","1.9.0rc1","1.9.1"]},{"source":"osv","ecosystem":"PyPI","package":"matrix-synapse","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.28.0"}]}],"versions":["0.33.5","0.33.5.1","0.33.6rc1","0.33.6","0.33.7rc1","0.33.7rc2","0.33.7","0.33.8rc2","0.33.8","0.33.9","0.34.0rc1","0.34.0rc2","0.34.0","0.34.0.1","0.34.1.1","0.99.0rc1","0.99.0rc2","0.99.0rc3","0.99.0rc4","0.99.0","0.99.1rc1","0.99.1rc2","0.99.1","0.99.1.1","0.99.2rc1","0.99.2","0.99.3rc1","0.99.3","0.99.3.1","0.99.3.2","0.99.4rc1","0.99.4","0.99.5rc1","0.99.5","0.99.5.1","0.99.5.2","1.0.0rc1","1.0.0rc2","1.0.0rc3","1.0.0","1.1.0rc1","1.1.0rc2","1.1.0","1.2.0rc1","1.2.0rc2","1.2.0","1.2.1","1.3.0rc1","1.3.0","1.3.1","1.4.0rc1","1.4.0rc2","1.4.0","1.4.1rc1","1.4.1","1.5.0rc1","1.5.0rc2","1.5.0","1.5.1","1.6.0rc1","1.6.0rc2","1.6.0","1.6.1","1.7.0rc1","1.7.0rc2","1.7.0","1.7.1","1.7.2","1.7.3","1.8.0rc1","1.8.0","1.9.0.dev1","1.9.0.dev2","1.9.0rc1","1.9.0","1.9.1","1.10.0rc1","1.10.0rc2","1.10.0rc3","1.10.0rc5","1.10.0","1.10.1","1.11.0rc1","1.11.0","1.11.1","1.12.0rc1","1.12.0","1.12.1rc1","1.12.1","1.12.2","1.12.3","1.12.4rc1","1.12.4","1.13.0rc1","1.13.0rc2","1.13.0rc3","1.13.0","1.14.0rc1","1.14.0rc2","1.14.0","1.15.0rc1","1.15.0","1.15.1","1.15.2","1.16.0rc1","1.16.0rc2","1.16.0","1.16.1","1.17.0rc1","1.17.0","1.18.0rc1","1.18.0rc2","1.18.0","1.19.0rc1","1.19.0","1.19.1rc1","1.19.1","1.19.2","1.19.3","1.20.0rc1","1.20.0rc2","1.20.0rc3","1.20.0rc4","1.20.0rc5","1.20.0","1.20.1","1.21.0rc1","1.21.0rc2","1.21.0rc3","1.21.0","1.21.1","1.21.2","1.22.0rc1","1.22.0rc2","1.22.0","1.22.1","1.23.0rc1","1.23.0","1.23.1","1.24.0rc1","1.24.0rc2","1.24.0","1.25.0rc1","1.25.0","1.26.0rc1","1.26.0rc2","1.26.0","1.27.0rc1","1.27.0rc2","1.27.0","1.28.0rc1"]},{"source":"osv","ecosystem":"Ubuntu:Pro:20.04:LTS","package":"matrix-synapse","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.3.0-1","1.4.0-1","1.5.0-1","1.5.1-1","1.6.0-1","1.6.1-1","1.7.0-2","1.7.1-1","1.7.2-1","1.7.3-1","1.8.0-1","1.9.0-1","1.9.1-1","1.10.0-1","1.10.0-2","1.11.0-1","1.11.0-1ubuntu0.1~esm2"]},{"source":"osv","ecosystem":"Ubuntu:Pro:22.04:LTS","package":"matrix-synapse","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.39.0-1","1.47.0-2","1.47.1-1","1.48.0-1","1.49.0-1","1.49.2-1","1.50.1-1","1.50.2-1","1.51.0-1","1.52.0-1","1.53.0-1","1.53.0-1ubuntu0.1~esm2"]}],"products":[{"vendor":"element-hq","product":"synapse"},{"vendor":"fedoraproject","product":"fedora"},{"vendor":"matrix","product":"synapse"},{"vendor":"matrix-org","product":"synapse"}],"references":[{"url":"https://pypi.org/project/matrix-synapse/","tags":["x_refsource_MISC","x_transferred","Product","Third Party Advisory","package","report"]},{"url":"https://github.com/matrix-org/synapse/pull/9321","tags":["x_refsource_MISC","x_transferred","Patch","Third Party Advisory","fix","web","report"]},{"url":"https://github.com/matrix-org/synapse/pull/9393","tags":["x_refsource_MISC","x_transferred","Patch","Third Party Advisory","fix","web","report"]},{"url":"https://github.com/matrix-org/synapse/security/advisories/GHSA-jrh7-mhhx-6h88","tags":["x_refsource_CONFIRM","x_transferred","Patch","Third Party Advisory","fix","web","advisory","report"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/TNNAJOZNMVMXM6AS7RFFKB4QLUJ4IFEY/","tags":["vendor-advisory","x_refsource_FEDORA","x_transferred","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2021-21393","tags":["advisory"]},{"url":"https://github.com/matrix-org/synapse/commit/3f58fc848d0002de4605bed91603a1f9f245d128","tags":["web"]},{"url":"https://github.com/matrix-org/synapse/commit/d2f0ec12d5c8f113095408888e87e191ac546499","tags":["web"]},{"url":"https://github.com/pypa/advisory-database/tree/main/vulns/matrix-synapse/PYSEC-2021-26.yaml","tags":["web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/TNNAJOZNMVMXM6AS7RFFKB4QLUJ4IFEY","tags":["web"]},{"url":"https://pypi.org/project/matrix-synapse","tags":["web"]},{"url":"https://github.com/advisories/GHSA-jrh7-mhhx-6h88"},{"url":"https://security-tracker.debian.org/tracker/CVE-2021-21393","tags":["advisory"]},{"url":"https://github.com/matrix-org/synapse","tags":["package"]},{"url":"https://ubuntu.com/security/CVE-2021-21393","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2021-21393","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2021-21393","title":"Denial of service (via resource exhaustion) due to improper input validation on groups/communities endpoints","description":"Synapse is a Matrix reference homeserver written in python (pypi package matrix-synapse). Matrix is an ecosystem for open federated Instant Messaging and VoIP. In Synapse before version 1.28.0 Synapse is missing input validation of some parameters on the endpoints used to confirm third-party identifiers could cause excessive use of disk space and memory leading to resource exhaustion. Note that the groups feature is not part of the Matrix specification and the chosen maximum lengths are arbitrary. Not all clients might abide by them. Refer to referenced GitHub security advisory for additional details including workarounds.","status":"published","published":"2021-04-12T21:35:14Z","modified":"2024-08-03T18:09:15.986Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium","assessor":"cna"}],"cwes":["CWE-20"],"updated_at":"2026-11-02T14:33:00.488332Z"}],"euvd":[{"id":"EUVD-2021-0129","description":"Synapse is a Matrix reference homeserver written in python (pypi package matrix-synapse). Matrix is an ecosystem for open federated Instant Messaging and VoIP. In Synapse before version 1.28.0 Synapse is missing input validation of some parameters on the endpoints used to confirm third-party identifiers could cause excessive use of disk space and memory leading to resource exhaustion. Note that the groups feature is not part of the Matrix specification and the chosen maximum lengths are arbitrary. Not all clients might abide by them. Refer to referenced GitHub security advisory for additional details including workarounds.","status":"published","published":"2021-04-12T21:35:14Z","modified":"2024-08-03T18:09:15Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-03T03:25:06.913643Z"}],"ghsa":[{"id":"GHSA-jrh7-mhhx-6h88","title":"Denial of service (via resource exhaustion) due to improper input validation on groups/communities endpoints","description":"### Impact\nMissing input validation of some parameters on the groups (also known as communities) endpoints could cause excessive use of disk space and memory leading to resource exhaustion. Additionally clients may have issues rendering large fields.\n\n### Patches\nThis issue is fixed by #9321 and #9393.\n\n### Workarounds\nThe groups feature can be disabled (by setting `enable_group_creation` to `False`) to mitigate this issue. Note that it is disabled by default.\n\n### Other information\nNote that the groups feature is not part of the [Matrix specification](https://matrix.org/docs/spec/) and the chosen maximum lengths are arbitrary. Not all clients might abide by them.","status":"published","published":"2021-04-13T15:12:40Z","modified":"2024-09-30T20:39:16Z","cvss":[{"version":"4.0","score":6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N","level":"medium"},{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"cwes":["CWE-20"],"updated_at":"2026-11-02T14:38:07.852618Z"}],"nvd":[{"id":"CVE-2021-21393","description":"Synapse is a Matrix reference homeserver written in python (pypi package matrix-synapse). Matrix is an ecosystem for open federated Instant Messaging and VoIP. In Synapse before version 1.28.0 Synapse is missing input validation of some parameters on the endpoints used to confirm third-party identifiers could cause excessive use of disk space and memory leading to resource exhaustion. Note that the groups feature is not part of the Matrix specification and the chosen maximum lengths are arbitrary. Not all clients might abide by them. Refer to referenced GitHub security advisory for additional details including workarounds.","status":"published","published":"2021-04-12T22:15:13.227Z","modified":"2026-06-17T03:35:28.77Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium","assessor":"secondary"},{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium","assessor":"primary"},{"version":"2.0","score":4.3,"vector":"AV:N/AC:M/Au:N/C:N/I:N/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-20"],"updated_at":"2026-11-02T14:06:51.610648Z"}],"osv":[{"id":"CVE-2021-21393","description":"Synapse is a Matrix reference homeserver written in python (pypi package matrix-synapse). Matrix is an ecosystem for open federated Instant Messaging and VoIP. In Synapse before version 1.28.0 Synapse is missing input validation of some parameters on the endpoints used to confirm third-party identifiers could cause excessive use of disk space and memory leading to resource exhaustion. Note that the groups feature is not part of the Matrix specification and the chosen maximum lengths are arbitrary. Not all clients might abide by them. Refer to referenced GitHub security advisory for additional details including workarounds.","status":"published","published":"2021-04-12T22:15:13.227Z","modified":"2026-10-20T10:54:28.523809435Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-02T15:44:18.004149Z"},{"id":"DEBIAN-CVE-2021-21393","description":"Synapse is a Matrix reference homeserver written in python (pypi package matrix-synapse). Matrix is an ecosystem for open federated Instant Messaging and VoIP. In Synapse before version 1.28.0 Synapse is missing input validation of some parameters on the endpoints used to confirm third-party identifiers could cause excessive use of disk space and memory leading to resource exhaustion. Note that the groups feature is not part of the Matrix specification and the chosen maximum lengths are arbitrary. Not all clients might abide by them. Refer to referenced GitHub security advisory for additional details including workarounds.","status":"withdrawn","published":"2021-04-12T22:15:13.227Z","modified":"2026-08-11T20:49:52.465324555Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-02T15:45:34.637046Z"},{"id":"GHSA-jrh7-mhhx-6h88","title":"Denial of service (via resource exhaustion) due to improper input validation on groups/communities endpoints","description":"### Impact\nMissing input validation of some parameters on the groups (also known as communities) endpoints could cause excessive use of disk space and memory leading to resource exhaustion. Additionally clients may have issues rendering large fields.\n\n### Patches\nThis issue is fixed by #9321 and #9393.\n\n### Workarounds\nThe groups feature can be disabled (by setting `enable_group_creation` to `False`) to mitigate this issue. Note that it is disabled by default.\n\n### Other information\nNote that the groups feature is not part of the [Matrix specification](https://matrix.org/docs/spec/) and the chosen maximum lengths are arbitrary. Not all clients might abide by them.","status":"published","published":"2021-04-13T15:12:40Z","modified":"2026-07-08T06:28:42.964990012Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"},{"version":"4.0","score":6,"vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N","level":"medium"}],"cwes":["CWE-20"],"updated_at":"2026-11-02T15:46:50.687609Z"},{"id":"UBUNTU-CVE-2021-21393","description":"Synapse is a Matrix reference homeserver written in python (pypi package matrix-synapse). Matrix is an ecosystem for open federated Instant Messaging and VoIP. In Synapse before version 1.28.0 Synapse is missing input validation of some parameters on the endpoints used to confirm third-party identifiers could cause excessive use of disk space and memory leading to resource exhaustion. Note that the groups feature is not part of the Matrix specification and the chosen maximum lengths are arbitrary. Not all clients might abide by them. Refer to referenced GitHub security advisory for additional details including workarounds.","status":"published","published":"2021-04-12T22:15:00Z","modified":"2025-10-24T04:50:06Z","cvss":[{"version":"3.1","score":5.3,"vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"},{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-02T15:54:26.29421Z"},{"id":"PYSEC-2021-26","description":"Synapse is a Matrix reference homeserver written in python (pypi package matrix-synapse). Matrix is an ecosystem for open federated Instant Messaging and VoIP. In Synapse before version 1.28.0 Synapse is missing input validation of some parameters on the endpoints used to confirm third-party identifiers could cause excessive use of disk space and memory leading to resource exhaustion. Note that the groups feature is not part of the Matrix specification and the chosen maximum lengths are arbitrary. Not all clients might abide by them. Refer to referenced GitHub security advisory for additional details including workarounds.","status":"published","published":"2021-04-12T22:15:00Z","modified":"2023-11-08T04:04:44.409892Z","updated_at":"2026-11-02T15:52:52.682031Z"}]}}
