CVE-2021-41281 json
Path traversal in Matrix Synapse
published 2021-11-23 4 y ago modified 2026-07-08 4 mo ago also GHSA-3hfw-x7gx-437c , PYSEC-2021-436 , EUVD-2021-0133
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.6%
- EPSS 1.6% chance of exploitation in 30 days, percentile 75%
- public exploits
- 0
- none known
Summary
Synapse is a package for Matrix homeservers written in Python 3/Twisted. Prior to version 1.47.1, Synapse instances with the media repository enabled can be tricked into downloading a file from a remote server into an arbitrary directory. No authentication is required for the affected endpoint. The last 2 directories and file name of the path are chosen randomly by Synapse and cannot be controlled by an attacker, which limits the impact. Homeservers with the media repository disabled are unaffected. Homeservers with a federation whitelist are also unaffected, since Synapse will check the remote hostname, including the trailing `../`s, against the whitelist. Server administrators should upgrade to 1.47.1 or later. Server administrators using a reverse proxy could, at the expense of losing media functionality, may block the certain endpoints as a workaround. Alternatively, non-containerized deployments can be adapted to use the hardened systemd config.
Patch / fix
- pypi matrix-synapse 1.47.1
- matrix synapse 1.47.1
- matrix-synapse openSUSE Tumbleweed 1.47.1-1.1
opensuse advisories openSUSE-SU-2024:11649-1
- synapse Alpine 3.24, Alpine 3.23, Alpine 3.22 +7 more 1.47.1-r0
alpine advisories ALPINE-CVE-2021-41281
Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- matrix-synapse Arch Linux 1.47.1-1
arch linux advisories AVG-2581
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2021-41281 updated cvss 7.5
matrix-synapse: remote overwrite vulnerability
-
Red Hat All currently supported Red Hat productsnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Exploit prediction
1.58% chance of exploitation in the next 30 days, higher than 75% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |
| NVD | 2.0 | 4.3 | AV:N/AC:M/Au:N/C:N/I:P/A:N |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | matrix-synapse | <1.47.1 |
1.47.1 |
Affected products
- matrix-org synapse
Classification
- Weakness
-
- CWE-22 Improper Limitation of a Pathname to a Restricted Directory
References
-
github.com
/matrix-org/synapse/commit/91f2bd090
web, patch, third-party-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/N3WY56LCEZ4ZECLWV5KMAXF2PSMUB4F2/
vendor-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/EU7QRE55U4IUEDLKT5IYPWL3UXMELFAS/
vendor-advisory
-
github.com
/matrix-org/synapse/security/advisories/GHSA-3hfw-x7gx-437c
web, mitigation, third-party-advisory, advisory
-
github.com
/matrix-org/synapse/releases/tag/v1.47.1
web, release-notes, third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2021-41281
advisory
-
github.com
/matrix-org/synapse
package
-
github.com
/pypa/advisory-database/tree/main/vulns/matrix-synapse/PYSEC-2021-436.yaml
web
-
lists.fedoraproject.org
/archives/list/package-announce@lists.fedoraproject.org/message/EU7QRE55U4IUEDLKT5IYPWL3UXMELFAS
web
-
lists.fedoraproject.org
/archives/list/package-announce@lists.fedoraproject.org/message/N3WY56LCEZ4ZECLWV5KMAXF2PSMUB4F2
web
Sources
- CVE List CVE-2021-41281
- GitHub Advisory GHSA-3hfw-x7gx-437c
- NVD CVE-2021-41281
- OSV PYSEC-2021-436
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.