最近 脆弱性が特定されたというニュースが発表されました (CVE-2021-40823、CVE-2021-40824) ほとんどのクライアントアプリケーションで 分散型通信プラットフォーム用 マトリックス、 これにより、暗号化されたエンドツーエンドチャット(E2EE)でメッセージを転送するために使用されるキーに関する情報を取得できます。
ユーザーのXNUMX人を危険にさらした攻撃者 チャットから 以前に送信されたメッセージを復号化できます 脆弱なクライアントアプリケーションからこのユーザーに。 操作を成功させるには、メッセージ受信者のアカウントへのアクセスが必要です。アクセスは、アカウントパラメータのリークと、ユーザーが接続するMatrixサーバーのハッキングの両方を通じて取得できます。
と言われています 脆弱性は、攻撃者が制御するMatrixサーバーが接続されている暗号化されたチャットルームのユーザーにとって最も危険です。 このようなサーバーの管理者は、サーバーのユーザーになりすまして、脆弱なクライアントアプリケーションからチャットに送信されたメッセージを傍受しようとする可能性があります。
脆弱性 キーへの再アクセスを許可するメカニズムの実装における論理エラーが原因です さまざまなクライアントの提案が検出されました。 matrix-ios-sdk、matrix-nio、およびlibolmライブラリに基づく実装は、脆弱性に対して脆弱ではありません。
その結果、 問題のあるコードを借用したすべてのアプリケーションに脆弱性が現れる y MatrixおよびOlm / Megolmプロトコルには直接影響しません。
具体的には、この問題は、Web、デスクトップ、AndroidのコアElement Matrix(以前のRiot)クライアント、およびFluffyChat、Nheko、Cinny、SchildiChatなどのサードパーティクライアントアプリケーションとライブラリに影響します。 この問題は、公式のiOSクライアントにも、Chatty、Hydrogen、mautrix、purple-matrix、およびSiphonアプリケーションにも発生しません。
影響を受けるクライアントのパッチが適用されたバージョンが利用可能になりました。 早急に更新をお願いしますので、ご不便をおかけして申し訳ございません。 アップグレードできない場合は、アップグレードできるまで脆弱なクライアントをオフラインにしておくことを検討してください。 脆弱なクライアントがオフラインの場合、それらをだましてキーを公開することはできません。 更新されると、安全にオンラインに戻る可能性があります。
残念ながら、クライアントとサーバーの両方に存在する標準のログレベルで、この攻撃のインスタンスをさかのぼって特定することは困難または不可能です。 ただし、攻撃にはアカウントの侵害が必要なため、ホームサーバー管理者は、不適切なアクセスの兆候がないか認証ログを確認することをお勧めします。
脆弱性が検出された実装の鍵交換メカニズムを使用すると、鍵を持たないクライアントがメッセージを復号化して、送信者のデバイスまたは他のデバイスに鍵を要求できます。
たとえば、この機能は、ユーザーの新しいデバイスで古いメッセージを確実に復号化するため、またはユーザーが既存のキーを紛失した場合に必要です。 プロトコル仕様では、デフォルトでは、キーリクエストに応答せず、同じユーザーの検証済みデバイスにのみ自動的に送信するように規定されています。 残念ながら、実際の実装では、この要件は満たされず、キーを送信する要求は適切なデバイスIDなしで処理されました。
脆弱性は、Elementクライアントのセキュリティ監査中に特定されました。 問題のあるすべてのお客様が修正プログラムを利用できるようになりました。 アップデートをインストールする前に、緊急にアップデートをインストールし、クライアントを切断することをお勧めします。
レビューのリリース前に脆弱性を悪用した証拠はありませんでした。 標準のクライアントログとサーバーログを使用して攻撃の事実を判断することはできませんが、攻撃にはアカウントの侵害が必要なため、管理者はサーバーの認証ログを使用して疑わしいログインの存在を分析でき、ユーザーは次のリストを評価できます。最近の再接続と信頼ステータスの変更のためにアカウントにリンクされたデバイス。