← back
CVE-2021-41281

Path traversal in Matrix Synapse

CVSS 7.5 HIGHEPSS 1.5%CWE-22
In short

Matrix Synapse's media repository can be tricked into downloading files to arbitrary directories on the server without authentication. While the final directory and filename are randomized, this could still allow an attacker to write files in unexpected locations.

Technical detail

Path traversal vulnerability in Synapse's media repository endpoint allows unauthenticated attackers to specify arbitrary download paths via traversal sequences (../); impact is mitigated by random selection of the last 2 directory levels and filename by Synapse. Affected only if media repository is enabled and no federation whitelist is configured; exploitation requires network access to the media endpoint.

Summary generated and translated by AI from the official description.
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.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Affected products
matrix-org · synapse

Want to know if your infrastructure is exposed to this?

Talk to TrueHacking →