1 puan yazan GN⁺ 2023-12-28 | 1 yorum | WhatsApp'ta paylaş

'Operation Triangulation' saldırı zinciri

  • Kötü amaçlı bir iMessage eki gönderilerek uygulama, kullanıcı fark etmeden bunu işler.
  • Bu ek, belgelenmemiş ve Apple'a özgü ADJUST TrueType font komutlarındaki uzaktan kod çalıştırma açığı CVE-2023-41990'dan yararlanır.
  • Return/jump-oriented programming ve NSExpression/NSPredicate sorgu diliyle yazılmış çok aşamalı bir yapı kullanılarak JavaScriptCore kütüphane ortamı yamalanır ve JavaScript ile yazılmış bir yetki yükseltme exploit'i çalıştırılır.
  • JavaScript exploit'i tamamen okunamaz hale gelecek şekilde obfuscate edilmiştir ve boyutu en aza indirilmiştir. Yaklaşık 11.000 satırlık kodun büyük bölümü JavaScriptCore ve çekirdek belleğinin ayrıştırılması ve manipülasyonuna ayrılmıştır.
  • JavaScriptCore'un hata ayıklama özelliği DollarVM($vm) kullanılarak betik içinden JavaScriptCore belleğini manipüle etme ve native API fonksiyonlarını çalıştırma yeteneği elde edilir.
  • Hem eski hem de yeni iPhone'ları destekleyecek şekilde tasarlanmıştır ve en yeni modellerdeki açıkları kullanmak için Pointer Authentication Code (PAC) atlatmasını içerir.
  • XNU'nun bellek eşleme sistem çağrılarındaki (mach_make_memory_entry ve vm_map) tamsayı taşması açığı CVE-2023-32434 kullanılarak kullanıcı seviyesinden cihazın tüm fiziksel belleğine okuma/yazma erişimi elde edilir.
  • Hardware memory-mapped I/O (MMIO) register'ları kullanılarak Page Protection Layer (PPL) atlatılır. Bu, CVE-2023-38606 ile hafifletilmiştir.
  • Tüm açıklar kullanıldıktan sonra JavaScript exploit'i cihaz üzerinde istenen işleri yapabilir; casus yazılım çalıştırmak yerine IMAgent sürecini başlatıp exploit izlerini cihazdan silen bir payload enjekte edebilir veya Safari sürecini görünmez modda çalıştırarak bir sonraki aşamayı içeren web sayfasına yönlendirebilir.
  • Web sayfasında kurbanı doğrulayan bir betik bulunur ve kontrolü geçerse bir sonraki aşama olan Safari exploit'i teslim edilir.
  • Safari exploit'i, shellcode çalıştırmak için CVE-2023-32435'i kullanır.
  • Shellcode, Mach nesne dosyası biçimindeki başka bir çekirdek exploit'ini çalıştırır. Bu, CVE-2023-32434 ve CVE-2023-38606 ile aynı açıkları kullanır. Boyut ve işlev açısından çok büyüktür ancak JavaScript ile yazılmış çekirdek exploit'inden tamamen farklıdır. İlgili kısımlar iki exploit arasında paylaşılır, ancak kodun büyük bölümü çekirdek belleğinin ayrıştırılması ve manipülasyonuna ayrılmıştır. Çeşitli sızma sonrası yardımcı araçlar içerir, ancak bunların çoğu kullanılmaz.
  • Exploit, root yetkisi kazanır ve casus yazılımı yükleyen başka aşamaları çalıştırır.

Gizem ve CVE-2023-38606 açığı

  • Yeni iPhone modellerinde, çekirdek belleğinin hassas alanlarına yönelik ek donanım tabanlı güvenlik korumaları bulunur.
  • Bu koruma, saldırganların çekirdek belleğini okuyup yazabilse bile cihazı tamamen kontrol etmesini engeller.
  • Saldırganlar, Apple'ın SoC üzerinde tasarladığı başka bir donanım özelliğini kullanarak bu donanım tabanlı güvenlik korumasını atlatır.
  • Saldırganlar; veriyi, hedef adresi ve veri hash'ini firmware tarafından kullanılmayan çip içi bilinmeyen donanım register'larına yazarak donanım tabanlı bellek korumasını atlatır.
  • Bu bilinmeyen donanım özelliğinin muhtemelen Apple mühendisleri ya da fabrikada hata ayıklama veya test amacıyla kullanılmak üzere tasarlandığı ya da yanlışlıkla dahil edildiği tahmin edilmektedir.

Teknik ayrıntılar

  • SoC üzerindeki çeşitli çevre birimleri, CPU'nun bu aygıtları çalıştırmak için kullanabileceği özel donanım register'ları sağlar.
  • Bu donanım register'ları, CPU'nun erişebildiği belleğe eşlenmiştir ve "memory-mapped I/O (MMIO)" olarak bilinir.
  • Apple ürünlerindeki (iPhone, Mac vb.) çevre birimlerine ait MMIO adres aralıkları DeviceTree adlı özel bir dosya formatında saklanır.
  • Saldırıda kullanılan MMIO'ların çoğu, DeviceTree'de tanımlı hiçbir MMIO aralığına ait değildir.
  • Saldırganların firmware tarafından kullanılmayan MMIO'ları nasıl bulduğu ve bu MMIO adreslerinin hangi çevre birimine ait olduğu belirsizdir.
  • Bu MMIO register'larının GPU yardımcı işlemcisine ait olduğu doğrulanmıştır.
  • Saldırganlar bu MMIO register'larını kullanarak Page Protection Layer (PPL)'yi atlatır ve sayfa tablosu girdilerini yamalamakta kullanır.
  • Hash hesaplama yöntemi, saldırıda kullanılan donanım özelliğinin veriyi istenen konuma doğrudan bellek erişimi (DMA) işlemiyle yazmasını sağlar.

GN⁺ görüşü

  • Bu araştırma, iPhone'ları hedef alan son derece sofistike bir saldırı zincirini ortaya koyuyor. Bu, güvenlik araştırmacıları için çok önemli bir bulgu ve Apple ürünlerinin güvenliğini güçlendirmeye katkı sağlayabilir.
  • Saldırganların firmware tarafından kullanılmayan donanım özelliklerini nasıl keşfettiği hâlâ bir gizem. Bu durum, donanım güvenliği araştırmalarının önemini vurguluyor.
  • Bu yazı, yazılım ve donanım güvenliğiyle ilgilenenler için oldukça ilgi çekici içerikler sunuyor. Son derece karmaşık saldırı yöntemleri ve bunların analiz süreci, güvenlik araştırmalarının derinliğini ve gerekliliğini gösteriyor.

1 yorum

 
GN⁺ 2023-12-28
Hacker News görüşleri
  • MMIO kötüye kullanımıyla ilgili şaşırtıcı nokta

    • Saldırganların ya son derece güçlü araştırma yeteneklerine sahip olduğu ya da daha büyük olasılıkla Apple'ı hackleyerek dahili donanım belgelerini ele geçirdiği anlaşılıyor.
    • Apple, bu özelliğin tehlikeli olduğunu biliyordu; bunu gizledi ve dijital imza işleviyle ek koruma sağladı.
    • Silikonun sökülmesi ve tersine mühendislik olmadan bu özelliği bulmak imkansız olduğundan, geliştiricileri hackleyip dahili belgeleri çalmış olma ihtimali var.
    • Safari üzerinden başka bir zafiyet zinciri kullanarak yeniden hackleme yöntemi, içeride oldukça ayrışmış büyük bir organizasyona işaret ediyor.
    • Araştırmacıların Rus olduğu düşünüldüğünde, bunun NSA veya GCHQ işi olma ihtimali yüksek.
    • Zararlı yazılım reklam takibini etkinleştirebilir ve güvenlik araştırmacılarının sık kullandığı bulut tabanlı iPhone servis barındırmasını tespit edebilir.
    • iOS/macOS zararlı yazılım platformu 10 yıldan uzun süredir geliştiriliyor ve görüntü baytlarını yüklemeden cihaz üzerinde fotoğraflarda nesne tanıma ve OCR için ML kullanıyor.
    • Gizlilik yoluyla güvenliğin işe yaramadığı iddiasına katılmıyorum. Bu platform 10 yıl boyunca bilinmeden kullanıldı.
  • Steve Weis'in Twitter özeti

    • iMessage zafiyeti şaşırtıcı ama içinde 90'lardan beri var olan bir TrueType zafiyeti, 2 çekirdek zafiyeti, bir tarayıcı zafiyeti ve yayımlanmış yazılımda kullanılmayan, belgelenmemiş bir donanım özelliği de var.
  • Coresight hakkında açıklama

    • Coresight bir arka kapı değil, tüm ARM CPU'larda bulunan bir hata ayıklama özelliği.
    • Apple'ın bellek koruma özelliğiyle birlikte çalışması için gereken bir Coresight genişletmesi gibi görünüyor.
    • Kamuya açık belge olmasa da, binlerce Apple mühendisi muhtemelen bunu kullanabilen değiştirilmiş gdb veya başka araçlara erişebiliyordur.
  • MMIO kayıtlarının keşfedilebilirliği üzerine tahmin

    • Tüm kayıt adreslerini rastgele tarayarak MMIO kayıtlarını bulmanın mümkün olup olmadığına dair soru.
    • Yalnızca zamanlama farklarından geçerli adres olduğu anlaşılabilirdi ve 20 bitlik bir hash olduğundan hash de kaba kuvvetle çözülebilmiş olabilirdi.
  • Çip hata ayıklama özelliğinde veri hash'i kullanımıyla ilgili soru işaretleri

    • Üretimde devre dışı bırakılması gereken bir hata ayıklama özelliğinde hash kullanılmasının amacına dair soru işareti.
    • Elektrik-elektronik mühendisi değilim ama hata ayıklama özelliğinin müdahaleyi en aza indirmek için basit ve hızlı çalışması en doğrusu olurdu.
    • Bir tedarik zinciri saldırganının bunu tüm Apple çiplerine yerleştirmiş olma ihtimali çok düşük.
  • Hash algoritmasının özelliklerine dair gözlem

    • Tüm veriler 0 olduğunda hash değeri 0 oluyor ve tek bir bit için sbox tablosundan tek bir değer alıyor.
    • Böyle bir hash algoritması dahili belgeler olmadan da tersine mühendislikle çözülebilmiş olabilir.
  • Saldırganların emeğine duyulan hayranlık

    • Bu tür saldırganların yaptıkları iş için takdir görmemesinden rahatsızlık duyup duymadıkları merak ediliyor.
  • Saldırganların kullandığı özelliğe dair açıklama

    • Saldırganlar donanım tabanlı bellek korumasını atlayarak belirli fiziksel adreslere veri yazabiliyor.
    • Yöntem, aygıt yazılımında kullanılmayan çipteki bilinmeyen donanım kayıtlarına veri, hedef adresi ve veri hash'i yazmaya dayanıyor.
  • Yeni keşfedilen zafiyetlerin önemi

    • Yeni keşfedilmiş zafiyetler edinmekten daha önemlisi, mevcut zafiyetlerinizin tehlikeye girip giremeyeceğini bilmektir.
    • Bu, karşı-istihbarat operasyonlarını önleyebilir.