ตรวจพบช่องโหว่หลายประการที่กระทบต่อลูกค้า Matrix จำนวนมาก

โปรโตคอลเมทริกซ์

เมทริกซ์เป็นโปรโตคอลการส่งข้อความโต้ตอบแบบทันทีแบบเปิด ได้รับการออกแบบมาเพื่อให้ผู้ใช้สามารถสื่อสารผ่านการแชทออนไลน์ วอยซ์โอเวอร์ไอพี และวิดีโอแชท

ล่าสุด นักพัฒนาแพลตฟอร์ม การสื่อสารแบบกระจายอำนาจ«Matrix» ออกคำเตือนเกี่ยวกับช่องโหว่ต่างๆ ที่ตรวจพบและ พวกเขามีความสำคัญ ในไลบรารี matrix-js-sdk, matrix-ios-sdk และ matrix-android-sdk2 ที่อนุญาตให้ผู้ดูแลระบบเซิร์ฟเวอร์เลียนแบบผู้ใช้รายอื่นและอ่านข้อความจากการแชทที่เข้ารหัสแบบ end-to-end (E2EE)

เป็นที่กล่าวขวัญกันว่า ในการโจมตีให้สำเร็จจะต้องเข้าถึงเซิร์ฟเวอร์หลักที่ควบคุมโดยผู้โจมตี (เซิร์ฟเวอร์หลัก: เซิร์ฟเวอร์สำหรับเก็บประวัติลูกค้าและบัญชี) การใช้การเข้ารหัสแบบ end-to-end ในฝั่งไคลเอ็นต์ไม่อนุญาตให้ผู้ดูแลระบบเซิร์ฟเวอร์เข้าไปแทรกแซงในการส่งข้อความ แต่ช่องโหว่ที่ระบุทำให้สามารถหลีกเลี่ยงการป้องกันนี้ได้

ปัญหาส่งผลกระทบต่อไคลเอนต์ Element Matrix หลัก (เดิมชื่อ Riot) สำหรับเว็บ เดสก์ท็อป 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, โกมุกส์ และ ปัตตาลัยมน แอพพลิเคชั่น

โปรดทราบว่าปัญหาความรุนแรงที่สำคัญคือปัญหาการใช้งานใน matrix-js-sdk และอนุพันธ์ และไม่ใช่ปัญหาของโปรโตคอลใน Matrix เวอร์ชันล่าสุดของบทความของนักวิจัยที่เราเห็นว่าไม่ถูกต้องแสดงองค์ประกอบว่าเป็น "ไคลเอ็นต์เมทริกซ์มาตรฐาน" และสร้างความสับสนให้กับข้อผิดพลาดในการใช้งานที่มีความรุนแรงสูงและการวิจารณ์โปรโตคอลที่มีความรุนแรงต่ำกว่า

มีสามสถานการณ์ การโจมตีหลัก:

  1. ผู้ดูแลระบบเซิร์ฟเวอร์ Matrix สามารถทำลายการตรวจสอบตามอิโมจิ (SAS, Short Authentication Chains) โดยใช้การลงนามข้ามและแอบอ้างเป็นผู้ใช้รายอื่น ปัญหานี้เกิดจากช่องโหว่ (CVE-2022-39250) ในโค้ด matrix-js-sdk ที่เกี่ยวข้องกับการจัดการ ID อุปกรณ์และคีย์การลงนามข้าม
  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 และ SDK รุ่นที่ XNUMX และ XNUMX อื่นๆ ไม่ได้รับผลกระทบจากข้อบกพร่องในสาเหตุหลักของปัญหาร้ายแรงที่นี่ นี่คือเหตุผลที่เราพยายามแทนที่ SDK รุ่นแรกด้วยการใช้งาน Rust ที่สะอาดและเขียนอย่างละเอียดถี่ถ้วนในรูปแบบของ matrix-rust-sdk พร้อมด้วยการตรวจสอบสาธารณะที่เป็นอิสระอย่างต่อเนื่อง

ช่องโหว่เกิดจากข้อบกพร่องในการใช้งานส่วนบุคคล ของโปรโตคอลเมทริกซ์และ ไม่ใช่ปัญหาของโปรโตคอลเอง ในปัจจุบัน โปรเจ็กต์ได้เผยแพร่การอัปเดตสำหรับ SDK ที่มีปัญหาและแอปพลิเคชันไคลเอนต์บางตัวที่สร้างไว้ด้านบน

สุดท้ายใช่ คุณสนใจที่จะทราบข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้คุณสามารถตรวจสอบรายละเอียดได้ในไฟล์ ลิงค์ต่อไปนี้


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา