CVE-2022-41952: Uncontrolled Resource Consumption in Matrix Synapse
Synapse before 1.52.0 with URL preview functionality enabled will attempt to generate URL previews for media stream URLs without properly limiting connection time. Connections will only be terminated after maxspidersize (default: 10M) bytes have been downloaded, which can in some cases lead to long-lived connections towards the streaming media server (for instance, Icecast). This can cause excessive traffic and connections toward such servers if their stream URL is, for example, posted to a large room with many Synapse instances with URL preview enabled. Version 1.52.0 implements a timeout mechanism which will terminate URL preview connections after 30 seconds. Since generating URL previews for media streams is not supported and always fails, 1.53.0 additionally implements an allow list for content types for which Synapse will even attempt to generate a URL preview. Upgrade to 1.53.0 to fully resolve the issue. As a workaround, turn off URL preview functionality by setting urlpreviewenabled: false in the Synapse configuration file.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 1.53.0 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 1.52.0 - Configuration
In the Synapse configuration file, disable URL preview functionality by setting `url_preview_enabled: false`.
Matrix Synapse url_preview_enabled = false
Event History
Frequently Asked Questions
What is the vulnerability ID for this vulnerability?
The vulnerability ID for this vulnerability is CVE-2022-41952.
What is the severity level of CVE-2022-41952?
CVE-2022-41952 has a severity level of 5.3 (Medium).
How does Synapse before version 1.52.0 with URL preview functionality enabled handle URL previews for media stream URLs?
Synapse before version 1.52.0 with URL preview functionality enabled attempts to generate URL previews for media stream URLs without properly limiting connection time.
What is the default value for 'max_spider_size' in Synapse before version 1.52.0?
The default value for 'max_spider_size' in Synapse before version 1.52.0 is 10M (10 megabytes).
How can I fix the vulnerability CVE-2022-41952?
To fix the vulnerability CVE-2022-41952, update to at least version 1.52.0 of Synapse.