Skip to content

matrix-sdk-ui: Incomplete edit validation

Moderate severity GitHub Reviewed Published Jun 3, 2026 in matrix-org/matrix-rust-sdk

Package

cargo matrix-sdk-ui (Rust)

Affected versions

< 0.16.1

Patched versions

0.16.1

Description

Impact

The message edit validation logic in the matrix-sdk-ui crate before 0.16.1 is missing a check: when replacing an encrypted event, the replacement event itself is not required to be encrypted. This enables a malicious homeserver administrator (or an actor with equivalent power) to impersonate or spoof messages as if they were sent by a victim user.

Patches

matrix-sdk-ui 0.16.1 fixes the message edit validation logic to align with the algorithm for replacement events1 described in the Matrix specification.

Workarounds

N/A

References

For more information

If you have any questions or comments about this advisory, please email us at security at matrix.org.

References

Footnotes

  1. https://spec.matrix.org/unstable/client-server-api/#validity-of-replacement-events

@dkasak dkasak published to matrix-org/matrix-rust-sdk Jun 3, 2026
Published to the GitHub Advisory Database Jun 4, 2026
Reviewed Jun 4, 2026

Severity

Moderate

CVSS overall score

This score calculates overall vulnerability severity from 0 to 10 and is based on the Common Vulnerability Scoring System (CVSS).
/ 10

CVSS v3 base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
High
User interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
High
Availability
None

CVSS v3 base metrics

Attack vector: More severe the more the remote (logically and physically) an attacker can be in order to exploit the vulnerability.
Attack complexity: More severe for the least complex attacks.
Privileges required: More severe if no privileges are required.
User interaction: More severe when no user interaction is required.
Scope: More severe when a scope change occurs, e.g. one vulnerable component impacts resources in components beyond its security scope.
Confidentiality: More severe when loss of data confidentiality is highest, measuring the level of data access available to an unauthorized user.
Integrity: More severe when loss of data integrity is the highest, measuring the consequence of data modification possible by an unauthorized user.
Availability: More severe when the loss of impacted component availability is highest.
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:H/A:N

EPSS score

Weaknesses

Insufficient Verification of Data Authenticity

The product does not sufficiently verify the origin or authenticity of data, in a way that causes it to accept invalid data. Learn more on MITRE.

CVE ID

CVE-2026-45057

GHSA ID

GHSA-h97m-27fx-42rx
Loading Checking history
See something to contribute? Suggest improvements for this vulnerability.