CVE-2024-56515 Untrusted file formats can be thumbnailed, invoking potentially further untrusted decoders in Matrix Media Repo

Medium 6.8 Published Updated

Attackers can trigger arbitrary code execution via malicious file uploads if specific thumbnailers are enabled, requiring an upgrade to Matrix Media Repo.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2024-56515?

CVE-2024-56515 is a medium-severity unsafe deserialization vulnerability in t2bot matrix-media-repo, published on 16 Jan 2025. Any signed-in user can exploit it over the network, and only if a user opens a file or follows a link.

Official description

Matrix Media Repo (MMR) is a highly configurable multi-homeserver media repository for Matrix. If SVG or JPEGXL thumbnailers are enabled (they are disabled by default), a user may upload a file which claims to be either of these types and request a thumbnail to invoke a different decoder in ImageMagick. In some ImageMagick installations, this includes the capability to run Ghostscript to decode the image/file. If MP4 thumbnailers are enabled (also disabled by default), the same issue as above may occur with the ffmpeg installation instead. MMR uses a number of other decoders for all other file types when preparing thumbnails. Theoretical issues are possible with these decoders, however in testing they were not possible to exploit. This is fixed in MMR v1.3.8. MMR now inspects the mimetype of media prior to thumbnailing, and picks a thumbnailer based on those results instead of relying on user-supplied values. This may lead to fewer thumbnails when obscure file shapes are used. This also helps narrow scope of theoretical issues with all decoders MMR uses for thumbnails. Users are advised to upgrade. Users unable to upgrade may disable the SVG, JPEGXL, and MP4 thumbnail types in the MMR config which prevents the decoders from being invoked. Further disabling uncommon file types on the server is recommended to limit risk surface. Containers and other similar technologies may also be used to limit the impact of vulnerabilities in external decoders, like ImageMagick and ffmpeg. Some installations of ImageMagick may disable "unsafe" file types, like PDFs, already. This option can be replicated to other environments as needed. ffmpeg may be compiled with limited decoders/codecs. The Docker image for MMR disables PDFs and similar formats by default.

Weakness: CWE-502

Which versions are affected by CVE-2024-56515?

3 open source packages ship an affected version, including github.com/t2bot/matrix-media-repo. It affects 1 product.

PackageAffectedFixed in
github.com/t2bot/matrix-media-repo GoAll versions1.3.8
github.com/t2bot/matrix-media-repo GoAll versions1.3.8
github.com/t2bot/matrix-media-repo GoAll versions1.3.8

Products include T2bot Matrix-Media-Repo.

How do I fix CVE-2024-56515?

Upgrade github.com/t2bot/matrix-media-repo to 1.3.8 or later.

Upgrade, and only deserialise data from trusted sources or with an allow-list of types. More about Unsafe deserialization.

Is CVE-2024-56515 being exploited?

There is no known exploitation of CVE-2024-56515 in the wild and no public exploit code.

Sources

Also known as GHSA-rcxc-wjgw-579r, GO-2025-3400.

Is CVE-2024-56515 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free