IOS Uygulamaları İçin Statik Analiz Yöntem ve Araçları

BGA Security Wiki sitesinden
Şuraya atla: kullan, ara

Amaç:

iOS uygulamaların mevcut güvenlik açıklıklarının local olarak incelenmesi.

Lab Senaryosu:

iOS iPad cihazı üzerinde kurulu çeşitli uygulamalara ait hassas dosyaların ve binary dosyaların okunmasına örneklemeler verilmiştir.

Araç:

  • Otool
  • Plutil
  • iNalyzer

Adımlar:

  • Statik analiz, uygulamanın kurulu olduğu path'e geçip, buradaki tüm local dizin ve dosyaların incelenmesi, class dosyalarının detaylıca incelenmesidir. Iphone iOS uygulamalarda, statik analiz ve testler için iNalyzer aracı kullanılabilir. Bu uygulama iOS uygulamaların class dosyalarını görüntülememizi ve çalışma zamanlı analiz yapmamıza ve daha bir çok test eylemi gerçekleştirmemize imkan sağlamaktadır. İlgili uygulamanın kurulması için öncelikle cydia üzerinden, ilgili uygulamanın geliştiricisinin repository'si sisteme tanıtılmalıdır. Bunun için jailbreak yapılmış iOS cihaz üzerinde, cydia üzerinden, manage bölümünden http://appsec-labs.com/cydia/ adres girilir. Ardından search bölümünden iNalyzer şeklinde aratılarak, ilgili uygulama kurulabilir.
  • iOS cihazlarda, /Users/Applications/Appname.app dizini altında uygulamanın tüm içeriği bulunmaktadır. Buradaki dosyalar kullanılarak uygulama çalışmaktadır. Bu dizin altındaki tüm diğer dizinler (Documents,tmp ve Library) ve alt dizinler altındaki tüm dosyalar incelenmelidir.

iOS cihaz üzerinde kurulu bir programın pathini bulmak için;

iPad:/Userroot#find/User/Applications/-inamedropbox/User/Applications/6D58BE7B-B5F0-4C71-BF3E-7F0AA43E380F/Dopbox.app/Dropbox


  • iOS cihazlar üzerindeki tüm alt dizinlerde bulunan dosyalar, detaylıca incelenmelidir. Çeşitli kritik bilgilerin, buralarda tutulma ihtimali yüksektir. Örnek olarak, aşağıdaki dosyalar öncelikli incelenebilir;
  • Sqlite veritabanı dosyaları
  • Property list (plist) dosyaları
  • Cache dosyası
  • Ayarlar ve program verileri detaylı incelenmelidir.

Buralarda çeşitli hassas bilgiler(kredi kart no, özel mesajlaşmalar, kullanıcı hesapları v.s) araştırılabilir.

  • Plist dosyalarını incelemek için plutil aracı kullanılabilir.

IOS.png

  • Binary dosyaları okumak için otool aracı kullanılabilir.

IOS2.png