检测到多个危害许多 Matrix 客户的漏洞

矩阵协议

Matrix 是一个开放的即时通讯协议。 它旨在允许用户通过在线聊天、IP 语音和视频聊天进行交流。

最近 平台开发商 分散式通信s «Matrix» 发布了有关各种漏洞的警告 被检测到并且 他们很关键 在 matrix-js-sdk、matrix-ios-sdk 和 matrix-android-sdk2 库中,允许服务器管理员模拟其他用户并从端到端加密聊天 (E2EE) 中读取消息。

有人提到 要成功完成攻击,必须访问攻击者控制的家庭服务器 (家庭服务器:存储客户历史和帐户的服务器)。 在客户端使用端到端加密不允许服务器管理员干预消息传递,但已识别的漏洞允许绕过这种保护。

问题影响主 Element Matrix 客户端 (以前称为 Riot),适用于 Web、桌面、iOS 和 Android,以及 Cinny、Beeper、SchildiChat、Circuli 和 Synod.im 等第三方客户端应用程序。

这些漏洞未出现在库 matrix-rust-sdk、hydrogen-sdk、Matrix Dart SDK、mautrix-python、mautrix-go 和 matrix-nio 以及 Hydrogen、ElementX、Nheko、FluffyChat、Siphon、Timmy、 Gomuks 和 Pantalaimon 应用程序。

请注意,严重的严重性问题是 matrix-js-sdk 和衍生产品中的实现问题,而不是 Matrix 中的协议问题。 我们看到的最新版本的研究人员论文错误地将 Element 描述为“基准矩阵客户端”,并将较高严重性的实施错误与较低严重性的协议批评混为一谈。

有三种情况 主攻:

  1. Matrix 服务器管理员可以通过使用交叉签名和冒充另一个用户来破坏基于表情符号的验证(SAS,短验证链)。 该问题是由与设备 ID 处理和交叉签名密钥组合相关的 matrix-js-sdk 代码中的漏洞 (CVE-2022-39250) 引起的。
  2. 控制服务器的攻击者可以冒充受信任的发件人并传递假密钥来拦截来自其他用户的消息。 该问题是由于 matrix-js-sdk (CVE-2022-39251)、matrix-ios-sdk (CVE-2022-39255) 和 matrix-android-sdk2 (CVE-2022-39248) 中的漏洞导致的客户端错误地接受使用 Megolm 协议而不是 Olm 发送给加密设备的消息,将消息归因于 Megolm 发送者而不是实际发送者。
  3. 通过利用上一段中提到的漏洞,服务器管理员还可以向用户帐户添加一个虚拟备用密钥,以提取用于加密消息的密钥。

发现漏洞的研究人员 还演示了将第三方用户添加到聊天中的攻击 或将第三方设备连接到用户。 攻击基于这样一个事实,即用于将用户添加到聊天中的服务消息未链接到聊天创建者的密钥,并且可以由服务器管理员生成。

Matrix 项目的开发人员将这些漏洞归类为次要漏洞, 因为这样的操作不是 Matrix 所固有的,只会影响基于协议的客户端,但这并不意味着它们不会被忽视:如果用户被替换,它将显示在聊天用户列表中,并在添加时显示设备,将显示警告并将设备标记为未验证(在这种情况下,添加未经授权的设备后,它将立即开始接收解密消息所需的公钥。

您会注意到 matrix-rust-sdk、hydrogen-sdk 和其他第 XNUMX 代和第 XNUMX 代 SDK 不受此处关键问题根本原因中的错误的影响。 这正是为什么我们一直在努力用一个干净、精心编写的 Rust 实现以 matrix-rust-sdk 的形式替换第一代 SDK,并完成持续的独立公共审计。

漏洞是由个别实现中的错误引起的 Matrix 协议和 它们不是协议本身的问题。 目前,该项目已经发布了有问题的 SDK 的更新以及一些基于它们构建的客户端应用程序。

最后是 您有兴趣了解更多信息,您可以在中查看详细信息 以下链接。


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。