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 `max_spider_size` (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 `url_preview_enabled: false` in the Synapse configuration file.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2022-41952
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 3 Nov 2026, 05:42 UTC · Revision 1
Source evidence
Uncontrolled Resource Consumption in Matrix Synapse
core-osv · Original sourcePublished 22 Nov 2022, 00:00 UTC
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 `max_spider_size` (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 `url_preview_enabled: false` in the Synapse configuration file.
osv:CVE-2022-41952
Complete source record
{
"id": "2aee8fa81ff462a0cb167efdf8541002e30901b1c8fe17f142737720147560bc",
"url": "https://osv.dev/vulnerability/CVE-2022-41952",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Uncontrolled Resource Consumption in Matrix Synapse",
"summary": "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 `max_spider_size` (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 `url_preview_enabled: false` in the Synapse configuration file.",
"evidence": "osv:CVE-2022-41952",
"products": [],
"severity": "medium",
"structured": {
"id": "CVE-2022-41952",
"aliases": [
"CVE-2022-41952",
"GHSA-4822-jvwx-w47h",
"PYSEC-2026-663"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:L"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/matrix-org/synapse",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "551dd8c9f8d10681dc535ec43d652bbadf60de48"
},
{
"fixed": "5cdd4913100961f943f6432d9fbdaa20907142c2"
}
],
"database_specific": {
"extracted_events": [
{
"cpe": "cpe:2.3:a:matrix:synapse:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "1.53.0"
}
],
"source": "CPE_RANGE"
},
{
"range": [
{
"fixed": "5cdd4913100961f943f6432d9fbdaa20907142c2"
}
],
"source": "REFERENCES_TAG",
"original_tag": "v1.52.0"
},
{
"range": [
{
"fixed": "551dd8c9f8d10681dc535ec43d652bbadf60de48"
}
],
"source": "REFERENCES_TAG",
"original_tag": "v1.53.0"
}
]
}
}
],
"versions": [
"v1.53.0rc1",
"v1.52.0rc1",
"v1.49.0rc1",
"v1.40.0rc1",
"v1.36.0rc1",
"v1.35.0rc1",
"v1.34.0rc1",
"v1.32.0rc1",
"v1.31.0rc1",
"v1.30.0rc1",
"v1.29.0rc1",
"v1.27.0rc1",
"v1.24.0rc1",
"v1.23.0rc1",
"v1.17.0rc1",
"v1.18.0rc1",
"v1.16.0rc1",
"v1.15.0rc1",
"v1.14.0rc1",
"v1.12.0rc1",
"v1.6.0rc1",
"v1.11.0rc1",
"v1.3.0rc1",
"v1.1.0rc2",
"v1.1.0rc1",
"v1.10.0rc1",
"v1.9.0rc1",
"v1.9.0.dev2",
"v1.9.0.dev1",
"v1.8.0rc1",
"v1.5.0rc1",
"v1.4.0rc1",
"v0.99.5.1.dev0",
"v0.99.4rc1",
"v0.99.2rc1",
"v0.99.1rc1",
"hhs-8",
"hhs-7",
"hhs-6",
"hhs-5",
"hhs-3",
"hhs-2",
"hhs-1",
"v0.32.2",
"v0.32.0",
"v0.32.0rc1",
"v0.28.0-rc1",
"v0.25.0-rc1",
"v0.23.0-rc2",
"v0.23.0-rc1",
"v0.18.5",
"v0.18.4",
"v0.18.3",
"v0.18.2",
"v0.18.1",
"v0.18.0",
"v0.17.3",
"v0.17.2",
"v0.17.1",
"v0.17.0",
"v0.16.1-r1",
"v0.16.1",
"v0.16.0",
"v0.14.0",
"v0.13.3",
"v0.13.2",
"v0.13.1",
"v0.12.0",
"v0.11.1",
"v0.11.0-r2",
"v0.11.0-r1",
"v0.11.0",
"v0.10.0-r2",
"v0.10.0-r1",
"v0.10.0",
"v0.9.3",
"v0.9.2-r2",
"v0.9.2-r1",
"v0.9.2",
"v0.9.1",
"v0.9.0-r5",
"v0.9.0-r4",
"v0.9.0-r3",
"v0.9.0-r2",
"v0.9.0-r1",
"v0.9.0",
"v0.8.1-r4",
"v0.8.1-r3",
"v0.8.1-r2",
"v0.8.1-r1",
"v0.8.1",
"v0.8.0",
"v0.7.1-r4",
"v0.7.1-r3",
"v0.7.1-r2",
"v0.7.1-r1",
"v0.7.1",
"v0.7.0f",
"v0.7.0e",
"v0.7.0d",
"v0.7.0c",
"v0.7.0b",
"v0.7.0a",
"v0.7.0",
"v0.6.1f",
"v0.6.1e",
"v0.6.1d",
"v0.6.1c",
"v0.6.1b",
"v0.6.1a",
"v0.6.1",
"v0.6.0b",
"v0.6.0a",
"v0.6.0",
"v0.5.4a",
"v0.5.4",
"v0.5.3c",
"v0.5.3b",
"v0.5.3a",
"v0.5.3",
"v0.5.2",
"v0.5.1",
"v0.5.0",
"v0.4.2",
"v0.4.1",
"v0.3.4",
"v0.3.3",
"v0.3.0",
"v0.2.2",
"v0.2.1a",
"v0.2.1",
"v0.2.0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-41952.json"
}
}
],
"modified": "2026-10-28T02:30:26.498054695Z",
"provider": "osv",
"references": [
"https://github.com/matrix-org/synapse/releases/tag/v1.52.0",
"https://github.com/matrix-org/synapse/releases/tag/v1.53.0",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/41xxx/CVE-2022-41952.json",
"https://github.com/matrix-org/synapse/security/advisories/GHSA-4822-jvwx-w47h",
"https://nvd.nist.gov/vuln/detail/CVE-2022-41952",
"https://github.com/matrix-org/synapse/pull/11784",
"https://github.com/matrix-org/synapse/pull/11936"
],
"provider_metadata": {
"cwe_ids": [
"CWE-400"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/41xxx/CVE-2022-41952.json"
}
},
"related_cves": [
{
"value": "CVE-2022-41952",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 492792,
"published_at": "2022-11-22T00:00:00+00:00"
}