Matrix merkezi olmayan iletişim platformu, yazılım geliştirme kitindeki (SDK) uçtan uca şifrelemeyi etkileyen iki kritik önemdeki güvenlik açığı hakkında bir güvenlik uyarısı yayınladı.
Bu kusurlardan yararlanan bir tehdit aktörü, Matrix iletişimlerinin gizliliğini bozabilir ve mesaj içeriğini okunabilir bir biçimde ortaya çıkaran ortadaki adam saldırıları gerçekleştirebilir.
Hatalardan etkilenen istemciler, Element, Beeper, Cinny, SchildiChat, Circuli ve Synod.im gibi matrix-js-sdk, matrix-ios-sdk ve matrix-android-sdk2 kullanan istemcilerdir.
Farklı bir şifreleme uygulaması kullanan diğer istemciler (örneğin Hydrogen, ElementX, Nheko, FluffyChat, Syphon, Timmy, Gomuks, Pantalaimon) etkilenmez.
Matrix, sorunların giderildiğini ve kullanıcıların iletişimlerini güvende tutmak için tek yapmaları gerekenin mevcut güncellemeleri IM istemcilerine uygulamak olduğunun altını çiziyor.
Matrix’in duyurusu kusurlardan yararlanmanın kolay bir iş olmadığını ve aktif bir sömürü kanıtı görmediklerini iddia ediyor.
Güvenlik açığı ayrıntıları
Güvenlik sorunları, protokolün kendisinde değil, şifreleme mekanizmalarının uygulanmasındadır. Brave Software, Londra’daki Royal Holloway Üniversitesi ve Sheffield Üniversitesi’ndeki araştırmacılar tarafından keşfedildiler ve sorumlu bir şekilde Matrix’e açıklandılar.
Grup ayrıca bir bildiri yayınladı. teknik kağıt bulgularını detaylandırıyor ve hatalardan yararlanan altı saldırı örneği sunuyor.
Özetle, ekip tarafından keşfedilen kritik önemdeki kusurlar şunlardır:
CVE-2022-39250: matrix-js-sdk üzerinde SAS doğrulamasında Anahtar/Aygıt tanımlayıcı karışıklığı, kötü niyetli bir sunucu yöneticisinin çapraz imzalama kullanıldığında emoji tabanlı doğrulamayı kırmasına ve hedef kullanıcı yerine kendilerinin kimliğini doğrulamasına olanak tanır.
CVE-2022-39251: matrix-js-sdk’deki protokol karışıklığı hatası, sahte bir göndericiden gelen mesajların yanlış kabul edilmesine yol açarak güvenilir bir göndericinin kimliğine bürünme olasılığını ortaya çıkarır. Aynı kusur, kötü niyetli ev sunucusu yöneticilerinin hedefin hesabına yedek anahtarlar eklemesini mümkün kılar.
CVE-2022-39255: CVE-2022-39251 ile aynıdır ancak matrix-ios-sdk’yi etkiler (iOS istemcileri).
CVE-2022-39248: CVE-2022-39251 ile aynı, ancak matrix-android-sdk2’yi (Android istemcileri) etkiliyor.
Yukarıdaki sorunların yanı sıra, aşağıdaki daha düşük önem dereceli sorunlar da bulundu:
CVE-2022-39249: matrix-js-sdk’de istek olmadan iletilen anahtarların kabul edilmesine yol açan yarı güvenilir kimliğe bürünme sorunu, sunucudaki diğer kullanıcıların kimliğine bürünmeyi mümkün kılar. İstemciler bu iletileri alıcı tarafında şüpheli olarak işaretler, böylece hatanın ciddiyeti düşer.
CVE-2022-39257: CVE-2022-39249 ile aynıdır ancak matrix-ios-sdk’yi etkiler (iOS istemcileri).
CVE-2022-39246: CVE-2022-39249 ile aynı ancak matrix-android-sdk2’yi (Android istemcileri) etkiliyor.
Henüz bir kimlik numarası almayan iki konu daha var. Bunlardan biri, kötü niyetli bir ev sunucusunun kullanıcıları adına sahte davetler yapmasına veya kullanıcı hesaplarına cihaz eklemesine izin veren bir sorundur.
İkincisi, AES başlatma vektörü olmadan ekleri, gizli dizileri ve simetrik anahtar yedeklerini şifrelemek için AES-CTR’yi kullanmayı ifade eder ve bu da onu güvensiz kılar.
matris güvenliği
Kusurları keşfeden araştırmacıların işaret ettiği şeylerden biri, Matrix’in kriptografik yapı taşlarının sağlam olduğu, ancak projenin her şeyi güvenli bir şekilde bir araya getirmenin gevşek bir yolu olduğu görünüyor.
Hata türlerinin çeşitliliği (tasarım gereği güvensiz, protokol karmaşası, alan ayırma eksikliği, uygulama hataları) ve etkinin birden çok alt protokole ve kitaplığa yayılmış olması, teknik belgede vurgulandığı gibi bunu doğrular görünmektedir:
Gözlenen uygulama ve belirtim hatalarının yanı sıra, bu güvenlik açıkları Matrix’te güvenlik garantilerine yönelik birleşik ve resmi bir yaklaşımın eksikliğini vurgulamaktadır.
Bunun yerine, belirtim ve uygulamalar, yeni işlevler ekleyen yeni alt protokollerle “organik olarak” büyümüş ve böylece istemeden çekirdek protokolün güvenlik garantilerini bozmuş gibi görünmektedir.
Bu, burada bildirilen belirli güvenlik açıklarını düzeltmenin yanı sıra, tasarımda güven oluşturmak için Matrix/Megolm’ün resmi bir güvenlik analizi alması gerekeceğini gösteriyor.
Matrix şu anda Rust ile yazılmış daha temiz ve daha güvenli 2. ve 3. nesil SDK’lar geliştirmeye odaklanıyor ve keşfedilen kusurların bu yeni nesil SDK’ları etkilemediğini belirtmekte fayda var.
Thunderbird, bu Matrix VOIP ve sohbet için destek eklendi Haziran 2022’de yayınlanan 102 versiyonunda da bir güvenlik güncellemesi attı dün sorunları ele alıyor.