Faz01
Görüntülü aramalarSesli mesajlarE2E şifrelemeSansürsüzGruplar ve kanallarDosyalar ve medyaBotlar ve mini uygulamalarYerleşik DeFi
Mesajlaşma
Aktif
UmbrellaX özel beta güncellemesi
Güvenlik incelememiz sırasında şifreleme ve güvenli iletişim için kullanılan çeşitli açık kaynak kitaplıklarda ciddi sorunlar bulduk. Yerel düzeltmeler hazır ancak yine de tam doğrulamaya ve bağımsız incelemeye ihtiyaçları var. Bu risklerin kapandığından emin olana kadar betayı yayınlamayacağım.
İşte sade bir dille tam liste. Neyin yanlış gidebileceğini, günlük bir örneği ve yama referansını görmek için bir bölüm açın.
Şifresi çözülmüş grup sırları, bellekte veya tanılamada fazladan kopyalar bırakabilir. Kötü şifreli metin, Hoş Geldiniz mesajları, teklifler, güncelleme yolları, eksik yerel anahtarlar, rastgele sayı hataları, olağandışı sistem zamanı ve dönem sınırları, güvenli bir hata döndürmek yerine uygulamayı kapatabilir. Bazı ağaç bütünlüğü ve yol uzunluğu kontrolleri de her sürüm yolunda garanti edilmiyordu.
Örneğin, ağdan alınan bozuk bir grup güncellemesinin, mesajlaşmayı kapatmadan, bütünlük kontrolünü atlamadan veya bir kilitlenme raporunda mesaj baytlarını açığa çıkarmadan reddedilmesi gerekir.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: openmls 0.8.1 | UMB-117, UMB-118, UMB-120, UMB-121, UMB-125, UMB-128, UMB-129, UMB-130, UMB-131, UMB-132, UMB-133, UMB-134, UMB-135, UMB-136, UMB-137, UMB-138, UMB-139
Silinen veya değiştirilen MLS kayıtları, serileştirilmiş kopyaların veya gizli teklif gövdelerinin bellekte kalmasına neden olabilir. Grup anlık görüntülerinin kapsamlı atomik değişime ihtiyacı vardı, hata ayıklama erişiminin düzeltilmesi gerekiyordu ve kimliği doğrulanmış şifrelenmiş veriler yerine okunabilir kodlanmış metni depolayan isteğe bağlı bir kalıcılık modu vardı.
Örneğin, bir grubun silinmesi aynı zamanda onun gizli bekleyen tekliflerini de kaldırmalı ve bir depolama seçeneği, verileri yalnızca okunabilir metne dönüştürdüğünde şifrelenmiş görünmemelidir.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: openmls_memory_storage 0.5.0 | UMB-119, UMB-212, UMB-213, UMB-214
Kullanılmayan isteğe bağlı bir arka uç hâlâ güvenlik açığı bulunan bir paketi bağımlılık envanterine çekiyordu. HPKE özel materyalinin ayrıca daha güçlü redaksiyon ve bellek temizliğine ihtiyacı vardı.
Örneğin, kullanmadığımız bir arka uç, güvenlik açığı olduğu bilinen bir paketi bir sürüme getirmemeli ve bir hata çıktısı hiçbir zaman bir HPKE özel anahtarı içermemelidir.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: hpke-rs 0.6.1 | RUSTSEC-2026-0124
Rastgele oluşturucu ve geçici HPKE değerlerinin gerçek anlamda temizlenmesi gerekiyordu. Başarısız kimlik doğrulamalı şifre çözme işlemi, bellekte kısmen değiştirilmiş bir düz metin arabelleği de bırakabilir.
Örneğin, bir mesajın kimlik doğrulaması başarısız olduğunda yarı işlenmiş düz metin arabelleği derhal silinmelidir.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: hpke-rs-rust-crypto 0.6.1 | UMB-122
Rastgele durum, anahtar türetme çıkışı, özel anahtar baytları ve başarısız şifreleme arabelleklerinin temizlenmesi gerekiyordu. Geçersiz tek seferlik uzunluklar ve desteklenmeyen anahtar değişim istekleri süreç sonu yollarına ulaşabilir.
Örneğin, hatalı biçimlendirilmiş bir nonce, messenger'ı kapatmak yerine normal bir hata döndürmelidir.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: openmls_rust_crypto 0.5.1 | UMB-122, UMB-123, UMB-124
Tekrarlamalar, paylaşımlar, skaler baytlar ve geçici olarak okunabilir gizli dizelerin imzalanması, başarı ve hata yollarının temizlenmesini gerektiriyordu. Kullanılmayan bir özellik aynı zamanda sürdürülmeyen bir bağımlılık zincirine de neden oldu.
Örneğin, bir grup imzası için kullanılan geçici değerler, imzalama tamamlandıktan veya başarısız olduktan sonra bellekte okunabilir durumda kalmamalıdır.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: frost-core 3.0.0 | local audited patch
Atılan sözde rastgele anahtarlar ve ara anahtar genişletme blokları, son anahtar üretildikten sonra bellekte kalabilir.
Örneğin, bir oturum anahtarı hazırlandıktan sonra, onu elde etmek için kullanılan geçici bileşenlerin silinmesi gerekir.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: hkdf 0.12.4 | local compatibility backport
Uyumlu HMAC dalında türetilmiş anahtar bloklar, büyük boyutlu anahtar özetleri ve dahili karma sonuçları sıradan bellekte kalabilir.
Örneğin, bir mesajın gerçek olduğunun doğrulanması, anahtardan türetilmiş yeniden kullanılabilir baytları geride bırakmamalıdır.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: hmac 0.12.1 | local compatibility backport
Kullanılabilir temizleme seçeneği varsayılan olarak kapalıydı ve geçici ve depolanan anahtardan türetilmiş durumun yalnızca bir kısmını kapsıyordu.
Örneğin, bir kimlik doğrulama kontrolünün tamamlanması hem geçici hem de saklanan anahtardan türetilmiş blokları temizlemelidir.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: hmac 0.13.0 | local audited patch
SHA-256 ve SHA-512 çalışma durumu ve blok sayaçlarının uyumlu dalda bırakma süresinin temizlenmesi gerekiyordu.
Örneğin, anahtar türetme sırasında bir sırra karma işlemi uygulanması, karma motorunun çalışma durumunu yeniden kullanılabilir bellekte bırakmamalıdır.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: sha2 0.10.9 | local compatibility backport
Hasarlı bir giriş, büyük bir tahsis talep edebilir, beyan edilen alanın ötesinde okunabilir, ilerleme olmadan döngüye girebilir veya taşma ve panik yollarını tetikleyebilir. Gizli vektör teşhisi ve kısmi başarısız girişin de temizlenmesi gerekiyordu.
Örneğin, yanlışlıkla büyük bir alan içerdiğini iddia eden küçük bir mesaj, büyük miktarda bellek tüketmemeli veya uygulamayı sonsuz bir döngüye hapsetmemelidir.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: tls_codec 0.4.2 | local audited patch
STUN mesaj bütünlüğü anahtarı teşhiste yazdırılabildi ve geçici kimlik bilgisi metniyle açıkça silinmedi.
Örneğin, bir bağlantı hatası günlüğü, bir aktarma isteğinin kimliğini doğrulamak için kullanılan sırrı açığa çıkarmamalıdır.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: stun 0.17.1 | audit patch 6e5cbb42
Uzun ömürlü bir TURN şifresi sıradan bir dize olarak saklanıyordu ve istemci yok edildiğinde açıkça silinmesi gerekiyordu.
Örneğin, bir çağrıyı sonlandırmak, geçiş parolasını eski istemci nesnesinin belleğinde bırakmamalıdır.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: turn 0.17.1 | audit patch 6e5cbb42
TURN kullanıcı adları ve şifreleri sıradan dizeler olarak saklandı ve ICE hata ayıklama çıktısında otomatik olarak yazdırıldı.
Örneğin, bir çağrı bağlantısı raporu kimlik bilgilerinin mevcut olduğunu söyleyebilir ancak kullanıcı adını ve parolayı yazdırmamalıdır.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: webrtc-ice 0.17.1 | audit patch 6e5cbb42
Medya anahtarı türetme girişi, türetilmiş anahtarlar, depolanan SRTP/SRTCP tuzları ve şifre çalışma durumu güvenilir bir temizliğe ihtiyaç duyuyordu.
Örneğin, şifrelenmiş bir çağrı sona erdikten sonra, geçici medya anahtarları ve tuzları sıradan arabelleklerde kalmamalıdır.
Yerel düzeltme hazırlandı, doğrulama devam ediyor.
Teknik detaylar: webrtc-srtp 0.17.1 | audit patch 6e5cbb42
Beta notları ve erişim güncellemeleri için kişisel X hesabımı takip edin.