1 puan yazan GN⁺ 7 일 전 | 1 yorum | WhatsApp'ta paylaş
  • Mesajlaşma uygulamalarında silinmiş veya otomatik olarak kaybolan mesajlar, bildirim önbelleğinde kalabiliyor ve adli bilişim araçlarıyla okunabiliyordu; Apple bunu iPhone ve iPad için yayımladığı yazılım güncellemesi ile düzeltti
  • Mesaj içeriğini gösteren bildirimler cihazda bir aya kadar saklanabiliyordu ve Apple'ın güvenlik duyurusunda, silinmesi işaretlenen bildirimlerin beklenmedik şekilde tutulabildiği yazıyordu
  • Bu çıkarma yolu, silinmiş Signal mesajlarının telefon veritabanında kalmasıyla bağlantılıydı ve kolluk kuvvetleri çok daha önce silinmiş mesajları da okuyabiliyordu
  • Signal, bu sorun ortaya çıktıktan sonra Apple'dan düzeltme talep etti; otomatik silme zamanlayıcı özelliği, cihazlara el konulması durumlarında bile konuşmaları gizli tutmak isteyen kullanıcılara yardımcı olabilir
  • Yalnızca uygulama içinden silmek, aynı içeriğin işletim sistemi düzeyindeki bildirim deposundan da kaybolacağı anlamına gelmiyordu; bu düzeltme, otomatik silinen mesajların gizliliğini korumada OS katmanının da önemli olduğunu gösteriyor

Hata düzeltmesi ve etkisi

  • Apple, iPhone ve iPad için yazılım güncellemesi yayımlayarak, kolluk kuvvetlerinin mesajlaşma uygulamalarında silinmiş veya otomatik kaybolan mesajları çıkarmasını mümkün kılan hatayı düzeltti
    • Mesaj içeriğini gösteren bildirimler (notification) cihazda bir aya kadar önbelleğe alındığı için bu sorun ortaya çıkıyordu
  • Apple'ın güvenlik duyurusunda, silinmesi işaretlenen bildirimlerin cihazda beklenmedik şekilde tutulabildiği yazıyor
  • Bildirim içeriğinin neden en başta kaydedildiği bilinmiyor
    • Bu düzeltme, söz konusu davranışın bir hata olduğunu ortaya koyuyor
  • Apple, bildirimlerin neden korunduğuna ilişkin sorulara hemen yanıt vermedi
  • Apple, düzeltmeyi eski iOS 18 çalıştıran iPhone ve iPad'lere de geri taşıdı

Ortaya çıkan çıkarma yolu

  • Bu düzeltme, 404 Media'nın bu ayın başında ortaya çıkardığı sorunla doğrudan bağlantılı
    • FBI, adli bilişim araçları kullanarak bir kişinin iPhone'undan silinmiş Signal mesajlarını çıkarabiliyordu
  • Bunun mümkün olmasının nedeni, mesaj içeriğinin bir noktada bildirim olarak gösterildikten sonra, Signal içinde silinmiş olsa bile telefon veritabanında saklanmaya devam etmesiydi
  • Kolluk kuvvetleri, adli bilişim araçlarını kullandıklarında çok daha önce silinmiş mesajları da okuyabiliyordu

Signal ve silinen mesaj özelliği

  • Signal'dan Meredith Whittaker, bu sorun kamuya açık hale geldikten sonra Apple'dan düzeltici adım atmasını istediklerini söyledi
    • Silinmiş mesajlara ait bildirimlerin hiçbir işletim sisteminin bildirim veritabanında kalmaması gerektiğini yazdı
  • Signal, WhatsApp ve diğer mesajlaşma uygulamaları gibi, belirli bir süre sonra mesajları otomatik silen bir zamanlayıcı özelliği sunuyor
  • Bu özellik, yetkililerin cihaza el koyması durumunda bile konuşmalarını gizli tutmak isteyen kullanıcılara yardımcı olabilir

Gizlilik endişeleri

  • FBI'ın her gün kullanılan güvenlik özelliklerini aşmanın bir yolunu bulduğunun ortaya çıkması, gizlilik savunucularının alarma geçmesine neden oldu
  • Otomatik silinen mesaj özelliği, özellikle risk altındaki kullanıcıların günlük olarak kullandığı bir güvenlik aracı niteliğinde
  • Bu hata, uygulama içinde mesaj silinse bile aynı içeriğin işletim sistemi düzeyindeki bildirim deposunda kalabileceğini ortaya koydu

1 yorum

 
GN⁺ 7 일 전
Hacker News görüşleri
  • Bunun cihazda önbelleğin kalmasına yol açan bir bug olduğunu düşünüyorum. Yine de Apple ve Google’ın bildirim akışının büyük kısmının tam ortasında yer alması nedeniyle, içeriğin sunuculardan geçiyor olması yapısal olarak hâlâ endişe verici. Bu yüzden uçtan uca şifreli mesajları başkalarına daha az açık etmek istiyorsanız, bildirimlerde sadece yeni mesaj geldi gibi bir ifade görünmesi, içerik ya da gönderenin gizlenmesi daha doğru bir ayar gibi duruyor
    • Bence bu açıklama iki açıdan yanlış. Birincisi, bu olay Apple ya da Google’ın bildirim sunucularıyla ilgili değil; işletim sisteminin bildirimi cihazda yerel olarak izleyip saklamasıyla ilgili. İkincisi, bildirimler Apple ya da Google sunucularından geçse bile, verinin kendisi şifrelenerek ya da mesaj gövdesi çıkarılarak E2EE korunabilir. Nitekim Signal de bu şekilde çalışıyor; yani Apple ya da Google’ın düz metin mesajları gördüğü bir yapı değil
    • Bana göre hem Apple hem de Google, uygulamanın görüntülemeden önce mesajı yakalayıp değiştirebilmesine imkân veriyor. Dolayısıyla şifreli bildirim gönderilip kullanıcı cihazında uygulama koduyla çözümlenerek gösterilebilir
    • Katılıyorum. Sunucu yalnızca bildirimi yollar; asıl görüntülenecek içerik ise cihazda yerel olarak, kilit açıldıktan sonra okunmuş mesajla birleştirilerek gösterilebilir. Yani düz metnin Apple ya da Google sunucularına gitmesi gerekmiyor gibi görünüyor
    • Yakın zamanda okuduğum Matrix FAQ’a göre bu açıklama doğru değil. Matrix uygulamalarında sohbet sunucusundan push sunucusuna, oradan Google üzerinden cihazıma yalnızca bazı metadata geliyor; mesaj gövdesi ise E2EE olarak kalıyor. Uygulama metadata bildirimiyle uyanıp gerçek mesajı yeniden çekiyor ve bildirime öyle koyuyor. Son yorumda dendiği gibi, Android tarafı düzeltilene kadar yerel saklama sorunu yine de sürüyor gibi görünüyor
    • Bu vakada ise Google ve Apple’ın OS bildirim API’lerini kullanırken düz metin mesajı gerçekten bizim verdiğimizi düşünüyorum
  • Haberde sözü edilen bug bence sorunun yalnızca bir parçası. Asıl mesele, bildirim metninin Signal dışında telefonun veritabanında saklanması ve bunu önlemek için ayar değiştirmek gerekiyor. Bu örnekte sanık Signal uygulamasının kendisini silmiş ve normalde o uygulamanın bildirimleri de içeride silinmiş olarak işaretlenmiş olmalıydı; ancak temizlenmemiş olması bu düzeltmenin konusu gibi görünüyor. Açıklanan bilginin özü, silinmesi gereken olarak işaretlenen bildirimlerin beklenmedik şekilde cihazda kalabilmiş olması. Anlatıma bakılırsa bunun bir logging issue olduğu söyleniyor; yani ana DB’den ziyade log tarafında kalmış olma ihtimali de var
    • Benim gördüğüm kadarıyla bu sadece log değil, logs, json, plist, SQLite DB dahil birkaç katmana yayılıyor gibi anlatılıyordu. Biome’daki /private/var/mobile/Library/Biome/streams/.../Notification/segments/ içinde başlık ve gövdenin ham logları var; BulletinBoard ve UserNotificationsCore altındaki /var/mobile/Library/{BulletinBoard,UserNotificationsCore}/ içinde teslim edilme ve kapatılma durumlarını gösteren json ve plist dosyaları bulunuyor; CoreDuet’in /var/mobile/Library/CoreDuet/coreduetdClassD.db tarafında da Biome olaylarını yeniden alan bir SQLite veritabanı olduğu anlaşılıyor. Kaynak bu tweet
    • Bence bu yorum hâlâ tahmin aşamasında. “Silinecek olarak işaretlendi” ifadesi yalnızca tüm uygulama silindikten sonrasını değil, kullanıcının bildirimi kapatmasından sonrasını da kastediyor olabilir
    • Benim aklıma ilk gelen şey SQLite WAL ihtimali oluyor
    • Bence ikisi fiilen aynı sorun da olabilir. Neden özellikle ayrı şeyler olarak görüldüğünü merak ediyorum
  • Bana göre Signal’ın sunduğu genel bildirim biçimi, yani “bir mesaj aldınız” tarzı yaklaşım, genel olarak iyi bir güvenlik alışkanlığı
    • Aslında bu neredeyse tüm uygulamalarda mümkün. iOS ayarlarında notifications shows previews seçeneğini never yapmanız yeterli
  • Signal’ın bu konuyu kullanıcılara aktif biçimde duyurmaması bana oldukça sinir bozucu geliyor. Ben bildirimleri kapatmış olmama rağmen Signal bana sadece tekrar açmamı hatırlatıyordu
  • Buna bakınca Mythos konusunda en büyük endişenin açığın bulunması mı, yoksa açığın kapatılması mı olduğu sorusunu yeniden düşündürüyor
  • Başta ben de biraz karıştırmıştım. Push bildirimlerinin uçtan uca şifreli olduğunu, dolayısıyla push servisinin bunu okunabilir biçimde önbelleğe alamayacağını ve uygulamanın cihazda aldıktan sonra çözeceğini sanıyordum. Ama gerçekte uygulama bunu çözüp OS API üzerinden kullanıcıya gösterdikten sonra, bu bildirim metninin cihazdaki bir tür bildirim geçmişi veritabanına yeniden yazıldığı anlaşılıyor
    • Ben de kabaca böyle bir çalışma biçimi olarak anlıyorum
    • Bana göre Apple ve Google’ın push mimarisinde metadata’nın önemli bir kısmı düz metin
  • Gizlilik tarafında bunun aslında epeydir bilinen bir mesele olduğunu düşünüyorum. Google ve Apple zaman zaman bildirim içeriğini kendi sunucularına gönderdiği için uygulama sınırları aşılmış oluyor. Benzer kategoride bir açıklama olarak şu yazı da faydalı olabilir
    • Benim beklentim, Signal’ın Apple’a göndermeden önce bildirim verisini önceden şifrelemesi ve cihazda Notification Service Extension ile çözmesiydi. Apple’a güvenmemek için bu yaygın bir kalıp; dolayısıyla sonuçta düz metni saklayan taraf Apple değil, çözdükten sonra cihazın kendisi olmuş oluyor
    • Bu rapor edilen örnekte içerik sunucudan alınmamış; anladığım kadarıyla federal soruşturma kurumları bunu doğrudan telefondan çekmiş
    • Benim aklıma Snapchat ya da WhatsApp gibi mesajlaşma uygulamaları da geliyor. WhatsApp end-to-end dediği hâlde, anahtar kelime temelli olarak bazı mesaj kopyalarını yetkililere verdiği iddiaları da var; bu yüzden aynı kategoride benzer kaygılar doğuruyor
  • Uygulama, iOS’a bu bildirimi gösterdikten sonra saklama diyemediği için, payload’un olduğu gibi önbelleğe alındığını düşünüyorum. Sonuçta bu, “silindi denmesi gerçekten silindiği anlamına gelmez” türünden klasik bir sorun ve veriler düşündüğünüzden daha fazla yerde kalıyor. Bu açıdan bakınca Signal’ın dikkat çektiği örnek yerinde görünüyor
  • Apple’ın bu düzeltmeyi iOS 18’e de geri taşıması sevindirici
    • Üstelik iOS 18.7.8’in, iOS 26 çalıştırabilen cihazlara da özel bir dolambaç olmadan dağıtılıyor gibi görünmesi ilginç. Buna karşılık 18.7.3 ile .6 arasının böyle olmamış olması, o ara sürümlerin aslında çıkması gerektiği hâlde bir dağıtım sorunu yaşanıp kimsenin bunu düzeltmemiş olabileceğini düşündürüyor
  • Güvenli mesajlaşma için kapalı sistemlere asla bel bağlamam diyen taraftayım. Özellikle çok sayıda belirsiz muhatapla iletişim kurarken bunu daha da önemli buluyorum
    • Buna rağmen iOS, güvenli mesajlaşma açısından muhtemelen en güvenli mobil platform olabilir. Özellikle de lock down mode’da daha da öyle görünüyor