GHSA-x345-32rc-8h85
Denial of service attack via push rule patterns in matrix-synapse
Packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| PyPI | matrix-synapse | < 1.33.2 | 1.33.2 |
Details
As written in the advisory (Markdown source, shown as plain text).
### Impact
"Push rules" can specify [conditions](https://matrix.org/docs/spec/client_server/r0.6.1#conditions) under which they will match, including `event_match`, which matches event content against a pattern including wildcards.
Certain patterns can cause very poor performance in the matching engine, leading to a denial-of-service when processing moderate length events.
### Patches
The issue is patched by https://github.com/matrix-org/synapse/commit/03318a766cac9f8b053db2214d9c332a977d226c.
### Workarounds
A potential workaround might be to prevent users from making custom push rules, by blocking such requests at a reverse-proxy.
### For more information
If you have any questions or comments about this advisory, email us at [email protected].
References
External links from the advisory. They lead to third-party sites.
- https://github.com/matrix-org/synapse/security/advisories/GHSA-x345-32rc-8h85
- https://nvd.nist.gov/vuln/detail/CVE-2021-29471
- https://github.com/matrix-org/synapse/commit/03318a766cac9f8b053db2214d9c332a977d226c
- https://github.com/matrix-org/synapse
- https://github.com/matrix-org/synapse/releases/tag/v1.33.2
- https://github.com/pypa/advisory-database/tree/main/vulns/matrix-synapse/PYSEC-2021-135.yaml
- https://lists.fedoraproject.org/archives/list/[email protected]/message/TNNAJOZNMVMXM6AS7RFFKB4QLUJ4IFEY