Skip to content
Heist/ feed
Back to feed
Medium

matrix-sdk-ui: Incomplete edit validation

Type: advisorySources: OSV

matrix-sdk-ui provides GUI-centric utilities on top of matrix-rust-sdk. The message edit validation logic in the `matrix-sdk-ui` crate prior to 0.17.0 is missing a check: when replacing an encrypted event, the replacement event itself is not required to be encrypted. This enables a malicious homeserver administrators (or actors with equivalent power) to impersonate or spoof messages as if they were sent by a victim user. `matrix-sdk-ui` 0.17.0 fixes the message edit validation logic to align with the algorithm for replacement events[^1] described in the Matrix specification. No known workarounds are available.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-45057
Confirmed fixed CVEs
Not specified
Updated in this feed
7 Nov 2026, 02:47 UTC · Revision 1

Source evidence

matrix-sdk-ui: Incomplete edit validation

core-osv · Original source

Published 11 Sept 2026, 21:12 UTC

matrix-sdk-ui provides GUI-centric utilities on top of matrix-rust-sdk. The message edit validation logic in the `matrix-sdk-ui` crate prior to 0.17.0 is missing a check: when replacing an encrypted event, the replacement event itself is not required to be encrypted. This enables a malicious homeserver administrators (or actors with equivalent power) to impersonate or spoof messages as if they were sent by a victim user. `matrix-sdk-ui` 0.17.0 fixes the message edit validation logic to align with the algorithm for replacement events[^1] described in the Matrix specification. No known workarounds are available.

osv:CVE-2026-45057
Complete source record
{
  "id": "8192f016cba08115c7385e53c90a3b43eae8b52d6fd88dfaf81986bb75c8e89c",
  "url": "https://osv.dev/vulnerability/CVE-2026-45057",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "matrix-sdk-ui: Incomplete edit validation",
    "summary": "matrix-sdk-ui provides GUI-centric utilities on top of matrix-rust-sdk. The message edit validation logic in the `matrix-sdk-ui` crate prior to 0.17.0 is missing a check: when replacing an encrypted event, the replacement event itself is not required to be encrypted. This enables a malicious homeserver administrators (or actors with equivalent power) to impersonate or spoof messages as if they were sent by a victim user. `matrix-sdk-ui` 0.17.0 fixes the message edit validation logic to align with the algorithm for replacement events[^1] described in the Matrix specification. No known workarounds are available.",
    "evidence": "osv:CVE-2026-45057",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-45057",
      "aliases": [
        "CVE-2026-45057",
        "GHSA-h97m-27fx-42rx",
        "RUSTSEC-2026-0158"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:H/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/matrix-org/matrix-rust-sdk",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "ed148665d211ae97d4672437561ddeccf8556f0d"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "0.16.1"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "range": [
                      {
                        "fixed": "ed148665d211ae97d4672437561ddeccf8556f0d"
                      }
                    ],
                    "source": "REFERENCES_TAG",
                    "original_tag": "matrix-sdk-0.16.1"
                  }
                ]
              }
            }
          ],
          "versions": [
            "matrix-sdk-ui-0.16.0",
            "matrix-sdk-test-utils-0.16.0",
            "matrix-sdk-test-macros-0.16.0",
            "matrix-sdk-test-0.16.0",
            "matrix-sdk-store-encryption-0.16.0",
            "matrix-sdk-sqlite-0.16.0",
            "matrix-sdk-search-0.16.0",
            "matrix-sdk-qrcode-0.16.0",
            "matrix-sdk-indexeddb-0.16.0",
            "matrix-sdk-ffi-0.16.0",
            "matrix-sdk-crypto-0.16.0",
            "matrix-sdk-common-0.16.0",
            "matrix-sdk-base-0.16.0",
            "matrix-sdk-0.16.0",
            "matrix-sdk-ffi/20251202",
            "matrix-sdk-ffi/20251118",
            "matrix-sdk-ffi/20251104",
            "matrix-sdk-ffi/20251007",
            "sdk-ffi/20250923",
            "matrix-sdk-ffi/20250909",
            "matrix-sdk-ffi/20250826",
            "matrix-sdk-ffi/20250728",
            "matrix-sdk-ffi/20250715",
            "matrix-sdk-ui-0.13.0",
            "matrix-sdk-test-macros-0.13.0",
            "matrix-sdk-test-0.13.0",
            "matrix-sdk-store-encryption-0.13.0",
            "matrix-sdk-sqlite-0.13.0",
            "matrix-sdk-qrcode-0.13.0",
            "matrix-sdk-indexeddb-0.13.0",
            "matrix-sdk-ffi-0.13.0",
            "matrix-sdk-crypto-0.13.0",
            "matrix-sdk-common-0.13.0",
            "matrix-sdk-base-0.13.0",
            "matrix-sdk-0.13.0",
            "matrix-sdk-ffi/20250702",
            "matrix-sdk-ffi/20250701",
            "matrix-sdk-ffi/20250618",
            "matrix-sdk-ui-0.12.0",
            "matrix-sdk-test-macros-0.12.0",
            "matrix-sdk-test-0.12.0",
            "matrix-sdk-store-encryption-0.12.0",
            "matrix-sdk-sqlite-0.12.0",
            "matrix-sdk-qrcode-0.12.0",
            "matrix-sdk-indexeddb-0.12.0",
            "matrix-sdk-ffi-0.12.0",
            "matrix-sdk-crypto-0.12.0",
            "matrix-sdk-common-0.12.0",
            "matrix-sdk-base-0.12.0",
            "matrix-sdk-0.12.0",
            "matrix-sdk-ui-0.11.0",
            "matrix-sdk-test-macros-0.11.0",
            "matrix-sdk-test-0.11.0",
            "matrix-sdk-store-encryption-0.11.0",
            "matrix-sdk-sqlite-0.11.0",
            "matrix-sdk-qrcode-0.11.0",
            "matrix-sdk-indexeddb-0.11.0",
            "matrix-sdk-ffi-0.11.0",
            "matrix-sdk-crypto-ffi-0.11.0",
            "matrix-sdk-crypto-0.11.0",
            "matrix-sdk-common-0.11.0",
            "matrix-sdk-base-0.11.0",
            "matrix-sdk-0.11.0",
            "matrix-sdk-ffi/20250603",
            "matrix-sdk-ffi/20250521",
            "matrix-sdk-ffi/20250507",
            "matrix-sdk-ffi/20250506",
            "matrix-sdk-ffi/20250422",
            "matrix-sdk-ffi/20250408",
            "matrix-sdk-ffi/20250325",
            "matrix-sdk-ffi/20250320",
            "matrix-sdk-ffi/20250306",
            "matrix-sdk-ffi/20250225",
            "matrix-sdk-ffi/20252502",
            "matrix-sdk-ui-0.10.0",
            "matrix-sdk-test-macros-0.10.0",
            "matrix-sdk-test-0.10.0",
            "matrix-sdk-store-encryption-0.10.0",
            "matrix-sdk-sqlite-0.10.0",
            "matrix-sdk-qrcode-0.10.0",
            "matrix-sdk-indexeddb-0.10.0",
            "matrix-sdk-crypto-0.10.0",
            "matrix-sdk-common-0.10.0",
            "matrix-sdk-base-0.10.0",
            "matrix-sdk-0.10.0",
            "matrix-sdk-ffi/20250131",
            "matrix-sdk-ui-0.9.0",
            "matrix-sdk-store-encryption-0.9.0",
            "matrix-sdk-sqlite-0.9.0",
            "matrix-sdk-qrcode-0.9.0",
            "matrix-sdk-indexeddb-0.9.0",
            "matrix-sdk-crypto-0.9.0",
            "matrix-sdk-common-0.9.0",
            "matrix-sdk-base-0.9.0",
            "matrix-sdk-0.9.0",
            "matrix-sdk-ffi/20241204",
            "matrix-sdk-ffi/20241203",
            "matrix-sdk-ffi/20241127",
            "matrix-sdk-ui-0.8.0",
            "matrix-sdk-store-encryption-0.8.0",
            "matrix-sdk-sqlite-0.8.0",
            "matrix-sdk-qrcode-0.8.0",
            "matrix-sdk-indexeddb-0.8.0",
            "matrix-sdk-crypto-0.8.0",
            "matrix-sdk-common-0.8.0",
            "matrix-sdk-base-0.8.0",
            "matrix-sdk-0.8.0",
            "matrix-sdk-ffi/20241107",
            "matrix-sdk-ffi/20241024",
            "matrix-sdk-ffi/20241008",
            "matrix-sdk-ffi/20240924",
            "matrix-sdk-ffi/20240918",
            "matrix-sdk-ffi/20240913",
            "matrix-sdk-crypto-ffi-0.4.3",
            "matrix-sdk-ffi/20240911",
            "matrix-sdk-ffi/20240904",
            "matrix-sdk-ffi/20240827",
            "matrix-sdk-ffi/20240813",
            "matrix-sdk-ffi/20240722",
            "matrix-sdk-ffi/20240704",
            "matrix-sdk-ffi/20240618",
            "matrix-sdk-crypto-ffi-0.4.2",
            "matrix-sdk-crypto-ffi-0.4.1",
            "matrix-sdk-crypto-ffi-0.4.0",
            "0.7.0",
            "matrix-sdk-crypto-ffi-0.3.13",
            "matrix-sdk-crypto-ffi-0.3.12",
            "matrix-sdk-crypto-ffi-0.3.11",
            "matrix-sdk-crypto-ffi-0.3.10",
            "matrix-sdk-crypto-ffi-0.3.9",
            "matrix-sdk-crypto-ffi-0.3.8",
            "matrix-sdk-crypto-ffi-0.3.7",
            "matrix-sdk-crypto-ffi-0.3.5",
            "matrix-sdk-crypto-ffi-0.3.4",
            "matrix-sdk-crypto-ffi-0.3.2",
            "matrix-sdk-crypto-ffi-0.3.1",
            "matrix-sdk-crypto-ffi-0.3.0",
            "matrix-sdk-crypto-ffi-0.2.1",
            "matrix-sdk-crypto-js-v0.1.0-alpha.4",
            "matrix-sdk-crypto-ffi-0.2.0",
            "matrix-sdk-crypto-ffi-0.1.10",
            "matrix-sdk-crypto-ffi-0.1.9",
            "matrix-sdk-crypto-ffi-0.1.8",
            "matrix-sdk-crypto-ffi-0.1.7",
            "matrix-sdk-crypto-js-v0.1.0-alpha.2",
            "matrix-sdk-crypto-js-v0.1.0-alpha.1",
            "matrix-sdk-crypto-js-v0.1.0-alpha.0",
            "matrix-sdk-crypto-ffi-0.1.6",
            "matrix-sdk-crypto-ffi-0.1.5",
            "matrix-sdk-crypto-ffi-0.1.4",
            "matrix-sdk-crypto-ffi-0.1.3",
            "matrix-sdk-crypto-ffi-0.1.2",
            "matrix-sdk-crypto-ffi-0.1.1",
            "matrix-sdk-crypto-ffi-0.1.0",
            "matrix-sdk-crypto-0.4.1",
            "matrix-sdk-common-0.4.1",
            "matrix-sdk-base-0.4.1",
            "matrix-sdk-0.4.1",
            "matrix-sdk-0.4.0",
            "matrix-sdk-crypto-0.4.0",
            "matrix-sdk-base-0.4.0",
            "matrix-qrcode-0.2.0",
            "matrix-sdk-test-0.4.0",
            "matrix-sdk-common-0.4.0",
            "0.1.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-45057.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:49.356065010Z",
      "provider": "osv",
      "references": [
        "https://github.com/matrix-org/matrix-rust-sdk/releases/tag/matrix-sdk-0.16.1",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/45xxx/CVE-2026-45057.json",
        "https://github.com/matrix-org/matrix-rust-sdk/security/advisories/GHSA-h97m-27fx-42rx",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-45057",
        "https://rustsec.org/advisories/RUSTSEC-2026-0158.html",
        "https://github.com/matrix-org/matrix-rust-sdk/pull/6454"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-345"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/45xxx/CVE-2026-45057.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-45057",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 517486,
  "published_at": "2026-09-11T21:12:17.797+00:00"
}