CVE-2026-45056 Matrix Rust SDK: Sender-binding gaps in to-device and room-key attribution
Attackers colluding with homeservers can forge encrypted to-device events by bypassing sender identity checks in the Matrix Rust SDK.
- Exploited in the wild
- Not known
- Login needed
- An administrator
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-45056?
CVE-2026-45056 is a medium-severity authentication bypass vulnerability in matrix-org matrix-rust-sdk, published on 11 Sep 2026. An attacker needs administrator access to exploit it, with no action from the victim.
Official description
matrix-sdk-crypto is a no-network-IO implementation of a state machine that handles end-to-end encryption for Matrix clients. Starting in version 0.12.0 and prior to version 0.17.0, the matrix-sdk-crypto crate was missing a check for the user ID when decrypting an Olm-encrypted event containing the `sender_device_keys` property. This could be exploited to forge an encrypted to-device event, but only if the attacker colludes with the homeserver operator. This issue is fixed in matrix-sdk-crypto 0.17.0. There are no known workarounds for the issue.
Weakness: CWE-290
Which versions are affected by CVE-2026-45056?
3 open source packages ship an affected version, including matrix-sdk-crypto.
| Package | Affected | Fixed in |
|---|---|---|
matrix-sdk-crypto crates.io | From 0.12.0 | 0.16.1 |
matrix-sdk-crypto crates.io | From 0.12.0 | 0.16.1 |
matrix-sdk-crypto crates.io | From 0.12.0 | 0.16.1 |
How do I fix CVE-2026-45056?
Upgrade matrix-sdk-crypto to 0.16.1 or later.
Upgrade, and rotate credentials and sessions that may have been exposed. More about Authentication bypass.
Is CVE-2026-45056 being exploited?
There is no known exploitation of CVE-2026-45056 in the wild and no public exploit code.
Sources
Also known as GHSA-wfq4-36m3-9g42, RUSTSEC-2026-0159.