Google Project Sıfır araştırmacısı Jann Horn, Apple’ın macOS ve iOS sistemlerinde, saldırganların serileştirme işlemlerinde işaretçi sızıntıları yoluyla adres alanı randomizasyonu (ASLR) korumalarını atlamasına izin verebilecek yeni bir güvenlik açığı açıkladı.
Güvenlik Açığı Genel Bakış
Güvenlik açığı, Apple’ın NSKeyEdarchiver serileştirme çerçevesindeki işaretçi anahtarlı veri yapılarını, bellek güvenliği ihlalleri veya zamanlama saldırıları gerektirmeden bellek adreslerini sızdırmak için kullanan bir teknikten yararlanır.
Saldırı, bir uygulama saldırgan tarafından sağlanan verileri düzensizleştirdiğinde, ortaya çıkan nesneleri yeniden serileştirdiğinde ve serileştirilmiş verileri saldırgana döndürdüğünde çalışır.
Araştırmacı, Apple cihazlarındaki belirli hafıza yolsuzluk hatalarından yararlanmak için gerekli olacak uzak ASLR sızıntıları hakkında dahili Proje Zero ekibi tartışmaları sırasında bu sorunu keşfetti.
MacOS veya iOS’ta belirli bir gerçek dünya saldırısı yüzeyi tanımlanmamış olsa da, Horn tekniği yapay bir test durumunda nskeyedarchiver serileştirme kullanılarak başarıyla gösterdi.
Teknik detaylar
Saldırı, Apple’ın temel temel çerçevesinin birkaç temel bileşeninden yararlanıyor:
Nsnull singleton sömürüsü: Güvenlik açığı, özel bir karma işleyicisi sağlanmadığında işaretçi adreslerini karma kodlar olarak kullanan paylaşılan önbellekte depolanan CFNULL Singleton örneğinden yararlanır.
Nsdiceary karma tablo manipülasyonu: Saldırganlar, belirli karma kovalarla eşleşen dikkatle seçilmiş NSNumber anahtarlarını ekleyerek veri yapısında öngörülebilir desenler oluşturarak NSDictionary karma tablolarını manipüle edebilir.
Serileştirme Sipariş Analizi: Saldırganlar, yeniden serileştirilmiş NSDictionary nesnelerinde anahtar sırasını analiz ederek karma kova konumlarını belirleyebilir ve bellek adresleri hakkında bilgi çıkarabilir.
Teknik, belirli NSNumber ve NSNULL tuşlarına sahip birden fazla NSDionary örneği içeren yaklaşık 50KB özel hazırlanmış serileştirilmiş verilerin gönderilmesini içerir.
Hedef uygulama bu verileri söndürdüğünde ve yeniden serileştirdiğinde, çıktıdaki öğelerin sıralaması NSNULL Singleton’un bellek adresi hakkında bilgi ortaya çıkarır.
Bu güvenlik açığı, gösterilen gerçek dünya etkisi olmayan teorik bir saldırıyı temsil etse de, anahtarlı veri yapılarındaki işaretçi tabanlı karmanın belirli koşullar altında sızıntıları nasıl ele alabileceğini gösteriyor.
Teknik, ASLR korumalarını yenmek için potansiyel olarak diğer istismarlarla birleştirilebilir ve hafıza yolsuzluk saldırılarını daha güvenilir hale getirebilir.
Araştırma, karma çarpışma saldırılarındaki önceki çalışmalara dayanmaktadır ve serileştirme mekanizmaları yoluyla bilgi açıklamasına yeni yaklaşımlar göstermektedir.
Apple, bu güvenlik açığını 31 Mart 2025 güvenlik bültenlerinde ele aldı. En sağlam hafifletme, nesne adreslerinden arama anahtarları olarak kaçınmayı veya potansiyel adres sızıntılarını işaretçi eşitlik oracles’a azaltmak için anahtarlı karma işlevleri uygulamayı içerir.
Project Zero, bu sorunu, gösterilen gerçek dünyadaki saldırı yüzeylerinin olmaması nedeniyle halka açık hata izleyicilerine dosyalamadan doğrudan Apple’a bildirdi.
Açıklama, güvenli serileştirme uygulamalarının önemini ve sistem çerçevelerinde işaretçi tabanlı karma mekanizmalarının potansiyel güvenlik sonuçlarını vurgulamaktadır.
Anında güncellemeler almak ve GBH’yi Google’da tercih edilen bir kaynak olarak ayarlamak için bizi Google News, LinkedIn ve X’te takip edin.