matrix-sdk-crypto vulnerable to sender of encrypted events being spoofed by homeserver administrator
Moderate severity
GitHub Reviewed
Published
Jun 10, 2025
in
matrix-org/matrix-rust-sdk
•
Updated Jun 12, 2025
Description
Published by the National Vulnerability Database
Jun 10, 2025
Published to the GitHub Advisory Database
Jun 10, 2025
Reviewed
Jun 10, 2025
Last updated
Jun 12, 2025
Summary
matrix-sdk-crypto since version 0.8.0 up to 0.11.0 does not correctly validate the sender of an encrypted event. Accordingly, a malicious homeserver operator can modify events served to clients, making those events appear to the recipient as if they were sent by another user.
Although the CVSS score is 4.9 (AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:H/A:N), we consider this a High Severity security issue.
Details
The Matrix specification requires that clients ensure that "the event’s
sender
,room_id
, and the recordedsession_id
match a trusted session". The vulnerable matrix-sdk-crypto versions check that theroom_id
matches that of the session denoted bysession_id
, but do not check thesender
.Patches
The issue is resolved by 13c1d20, included in versions 0.11.1 and 0.12.0 of matrix-sdk-crypto.
Workarounds
Since a successful attack requires administrator access to the homeserver, users who trust the administrators of their local homeserver are not affected.
References
References