予測可能な秘密:MatrixのVodozemacライブラリの「Nullキー」欠陥が会話履歴を露出させる可能性

Soatokウェブログの主宰者は、Matrixエコシステムがエンドツーエンド暗号化を実現するために採用しているRustベースの暗号化リポジトリであるVodozemac内の脆弱性を詳細に述べた包括的な論説を発表しました。この綿密なコード監査は、旧式なOlmライブラリに関する先行する不満によって引き起こされ、脆弱性開示に対するMatrixコンソーシアムの対応性に関する激しい議論によって複合されました。

著者の仮説によれば、最も悪質な欠陥はOlm実装に起因しており、参加者がX25519曲線内の中立要素に完全に対応する「null」公開鍵を導入するシナリオに対する脆弱性です。そのような状況下では、Diffie-Hellman計算は完全に予測可能な共有秘密を生成し、そこから暗号化キーが決定的に抽出されます。Soatokは、プライベートグループダイアログの領域内で、これが深刻な危険を生み出すと激しく主張しています。すなわち、会話履歴がサーバー運営者または暗号文を所有する任意のエンティティに流出することです。この脆弱性は、共有セッションキーがOlmを介して新規参加者に送信され、本質的に脆弱なハンドシェイクがこのキーの抽出を許可するために発生し、警告アラームがトリガーされることはありません。

著者は、二次的な脆弱性を、堅牢なV2イテレーションから旧式なV1へのメッセージングプロトコルの強制的な「ダウングレード」という悪質な機能に不可分に結びつけています。V2アーキテクチャは包括的なHMACの利用を要求しますが、V1パラダイムは認証性タグを単なる64ビットに危険にも切り詰めます。Soatokによって説明されているように、デフォルト実装はV1に不可解に留まり、活動的な攻撃者がこの脆弱な亜種への秘密の回帰を仕組むことができるようにしています。この陰険な操作は、タグの切り詰めまたはバージョン構成データの逆シリアル化内の特異な欠陥の悪用を通じて実行できます。

この論説はさらに、ソースコード内に組み込まれた議論の余地があり潜在的に危険な異常の長いリストをカタログ化しています。これらの中で顕著なのは、ECIES内の二部構成のチェックコードが不安なほど制限された順列プール、鍵の繰り返しの際にpickle形式でレンダリングされた決定論的初期化ベクトル、所定のしきい値を超えると暗号化鍵が秘密裏に破棄され、謎めいた厳密なEd25519検証のデフォルト無効化であり、これはシステムの署名改ざんに対する回復力を深刻に低下させる顕著な省略です。ファジング編集中のセキュリティチェックの中止に関する補足的な断片に対処して、著者はこれが単に従来のフィーチャーフラグに関するものではなく、むしろ意図的かつ明示的な有効化を必要とするモードで構成されていることを後に説明しました。

Soatokは厳格で1週間の開示時系列を説明し、攻撃の概念実証と修復コードの正常な送信を宣言しました。同時に、彼はMatrix.org前衛によって想定された姿勢に対して激しい批判を浴びせました。彼が主張するように、彼らはプラットフォームの包括的なセキュリティに対する実用的な影響がないことの絶対的な欠如を頑固に主張しました。論文はまたMatthew Hodgsonの公開的言説と、「null」X25519結果の検証に関する続く知的小競り合いを参照しており、Trevor Perrinの弁証法への言及を組み込んでいます。それにもかかわらず、著者は、この深刻な脆弱性が、基礎となる暗号学的プリミティブ内に存在するのではなく、プロトコルとそれを取り巻くフレームワークのアーキテクチャレイヤーで発生することを強く強調しています。

翻訳元: https://meterpreter.org/predictable-secrets-the-null-key-flaw-in-matrixs-vodozemac-library-that-could-expose-conversational-history/

ソース: meterpreter.org