IOS Uygulama Güvenliği Part 1 – Mobil Pentesting Ortamı Kurma

Bu makele serisinde IOS uygulamalar üzerinde penetrasyon testleri gerçekleştirmek için araç ve gereçleri ve hassasiyet değerlendirmesini öğreneceğiz.

Cihazınıza Jailbreak

Eğer IOS güvenliği hakkında gerçekten ciddiyseniz bir Jailbreak’li cihaz zorunluluğunuz vardır. Bu kısımda IOS cihazımıza nasıl jailbreak yapacağımıza bakacağız. Jailbreak yapılmış cihazlar birçok avantaja sahiptir.Birçok araç yükleyebilirsiniz mesela nmap, metasploit hatta cihaz üzerinde kendi yazdığınız python kodunu çalıştırabilirsiniz. Jailbreak ve bunu yapmanın avantajları hakkında daha fazla bilgi için bu makaleye göz gezdirmenizi tavsiye ederim.

Jailbreak’li bir cihaz için Jailbreak yazılımını indirip Jailbreak’a basmak yeterlidir.Eğer IOS 6.x kullanıyorsanız evasi0n eğer IOS 5.x. kullanıyorsanız redsn0w öneririm.

Bu durumda ben IOS 6.0.1 ile çalışan yeni iPad’ime(3.jenerasyon) jailbreak yapmaya başlıyorum.Birkere evasiOn’ı indiriyor ve çalıştırıyoruz.Göreceksinizki cihazınız otomatik olarak jailbreak olup olmadıgını algılıyacaktır.

Yapmanız gereken tek şey “Jailbreak” üzerine tıklamak ve evasi0n’un yaptıgı tüm sihirleri görmek.

Gördüğünüz gibi Jailbreak işlemi başlamıştır.Bir süre sonra cihazınız yendien başlayacak ve exploit çalışmaya başlayacak.

http://img51.imageshack.us/img51/4291/lsye.png

Exploit çalışmaya başladıgında cihaz üzerine Cydia ve paketlerin listeleri yüklenecek.Cydia Jailbreak cihaz üzerinde yazılım paketleri ve diğer uygulamaları yüklemenize izin veren bir GUI normalde bunu App Store üzerinden bulamazsınız.Çogunlukla cihazlarınız üzerine varsayılan jaiilbreak yazılımları olarak Cydia yükleyin.Jailbreak’li cihazlar için Cydia’yı App Store’da arayabilirsiniz.

Bu işlem tamamlana kadar bir süre bekleyin.

Cihazınıza gittiğinizde Jailbreak adında yeni bir uygulama simgesi geldiğiniz göreceksiniz.Jailbreak işlemini tamalamak için dokunun.

Cihazınızı tekrardan göreceksiniz.Sabırla sürecin bitmesini bekleyin.Cihazınızın yeniden başlaması bittikten sonra uygulama listenizde Cydia adında yeni bir uygulama göreceksiniz..Buda cihazınızın Jailbreak oldugunun göstergesidir.

Mobil Denetim Platformu Kurma

Cihazınızın Jailbreak işlemini tamamlamış bulunuyorsunuz,bir sonraki adımda isebir IOS uygulaması için bazı önemli linux command line araçlarından wget, ps, apt-get ve diğer uygulamaları yüklemek olacaktır.İlk ve en önemli şey cihazınıza OpenSSH yüklemek.

Bu jailbreakli cihaza giriş ve makalenin ilerleyen kısımlarında göreceğimiz diğer çeşitli görevleri yerine getirmemizi sağlayacaktır.Cydia’ya gidiyoruz ve alt kısımdaki arama sekmesini seçiyoruz.

En üstteki OpenSSH’a yüklemek için tıklıyoruz .Ve bu eylemden sonra gelen eylemide tıklıyoruz.

OpenSSH cihazınıza yüklenmiş olacak.

Cihaza SSH ile oturum açmadan önce bazı komut satırı araçlarını yüklememiz gerekiyor.Hemen hemen tüm hacker araçları BigBoss Recommended tools paketinde belirlenmiş hacker araçlarıyla birlikte geliyor.BigBoss Recommended tools ‘u yüklemek için sadece cydia’da arama ve yüklemeye dokunun.

Bazı önemli command line araçları APT 0.6 Transitional, Git, GNU Debugger, less, make, unzip, wget ve SQLite 3.x yüklenir.

Yapacağımız birşey dahada Cydia Mobile Terminal yüklemek olacaktır.Bu farklı bir sistemden SSH ile girierek cihazınız üzerinde terminal komutlarını çalıştırmaya izin verir.

Yükledikten sonra Terminal isminde yeni bir uygulama ikonu göreceksiniz.

Bir terminal verilecektir,üzerine dokunuyoruz.Şimdi deneyin ve herhangi bir Unix komutunu çalıştırın.Bu durumda , ps komutuyla tüm çalışan işlemler listesi alınır.

Gördüğünüz gibi çalışıyor.Eğer SSH kullanarak jailbreakli cihaza giriş yaparsak,görelim.Laptop ve telefonunuzun aynı aga bağlı olduguna emin olun ve telefonunuzun IP adresini bulun.IP adresini bulmak için Settings–>Wi-fi ve bağlı oldugunuz ağa tıklayın.

Gördüğünüz gibi IP adresimiz 192.168.2.3.Root olarak ssh diyelim.Sadece aşağıda gösterilen komutları takip edin.Root için varsayılan şifre alpine.Tavsiye olarak yüklemiş Open SSH ‘ı kullanarak şifrenizi değiştirin.Çünkü cihazınızdan giriş yaptıgınızda varsayaılan isim/ parolaları kullanan birçok malware vardır.Şifreyi değiştirmek için passwd yazın iki defa yeni şifrenizi girin.Bu root için şifre değişecektir.Tüm bu adımlar aşağıdaki resimde gösterilmiştir.

Not: root yetkisiyle çalışan herhangi bir komut çalıştırırken arka tarafta Cydia’nın çalıştıgına emin olun.Bundan sonra apt-get update ile en son paket listelerine bakalım.

Ayrıca apt-get upgrade yapmak kötü bir fikir olmayabilir.Bunun ile mevcut olan paketlerin en son sürümleri olmadıgında yeni paketleri almak olacaktır.

Bir sonrki şey ise class-dump-z yükleyerek IOS uygulamadan sınıf bilgilerinin dökümlerini almak olacaktır.Uygulamayı yüklemek için resmi sayfasına gidip en son sürümün linkini kopyalıyoruz.Bu makalenin yazıldıgı zamanlarda son sürüm 0.2a’dı.

Şimdi cihazınızda ssh ve wget komutunu kullanarak bu linkten dosyayı getiriyoruz.

Başka bir seçenek ise dosyayı sisteminize indirmek ve daha sonra sftp kullanarak yüklemek. olurdu.İndirme bittikten sonra ayıklamak için tar programını kullanın.

Bittikten sonra iphone_armv6 klasörüne gidip /usr/bin dizini içerisine class-dump-z’i kopyalıyoruz.Cihaz üzerinde herhangi biryerde class-dump-z’ı çalıştırabileceğinize emin olun.Kopyaladıgınız birkez çalıştırılabilir sadece class-dump-z yazın.Aşağıdaki gibi bir çıktı alırsanız class-dump-z başarıyla yüklenmiştir.

Daha fazla Okuma

IOS güvenliği söz konusu oldugunda pek fazla kaynak yoktur fakat burada iyi olanlardan bazıları vardır.

SecurityTube : IOS güvenliğiyle ilgili çok detaylı dersler vardır. Security Learn : IOS uygulamada penetrasyon testleri için bazı güzel makaleler vardır. Hacking and Securing IOS applications : Muhtemelen IOS uygulamarına saldırı için okudugum en iyi kitap. Lookout’s ise mobil dünyadaki en son teknikleri ve exploitleri öğrenmede başka bir iyi kaynaktır.

Sonuç

Bu makalede bir jailbreak’li cihaza mobil denetim ortamını nasıl kurdugumuzu öğrendik.Bir sonraki makale ise class-dump-z. kullanarak uygulamaları nasıl analiz edeceğizle ilgili olacak.

Kaynak ve İlgili Linkler

SecurityTube : http://www.securitytube.net/

Security Learn : http://www.securitylearn.net/

Hacking and Securing IOS applications Lookout : https://blog.lookout.com/

evasi0n : http://evasi0n.com/

redsn0w : http://www.redsn0w.us/ class-dump-z : https://code.google.com/p/networkpx/wiki/class_dump_z