It’s weekend! Take some tea (somehow coffee used to make me dizzy), some bread and listen to some jazzy music. My browser just took me to old interesting article regarding iPhone code signing. Here’s my favorite quote:
With such a system in place, there’s no need for iPhone anti-virus software. Our children will never know why Symantec and Norton ever existed.
Artikel tersebut menarik karena memberikan penjelasan mengapa terdapat policy code signing pada iPhone. Code signing merupakan langkah kedua bagi para developer aplikasi iPhone setelah menyelesaikan aplikasinya dan melakukan beberapa testing menggunakan iPhone simulator. Sebelum melakukan testing pada real iPhone, maka developer diwajibkan mendapatkan provisioning profile untuk proses signing code aplikasi miliknya agar dapat berjalan pada real iPhone. Setelah aplikasi dapat berjalan dengan baik, maka sang developer dapat kembali berhubungan dengan apple untuk prosedur peletakan aplikasi miliknya di apple store. Disinilah apple akan bertindak sebagai ‘sang dewa’ yang akan menentukan apakah suatu aplikasi dapat dimasukan pada apple store atau tidak. Kriteria apple cukup sulit, banyak developer yang ditolak aplikasinya karena aplikasi tersebut di-indikasikan akan menjadi attack vector terhadap iPhone. Sebagai contoh, menggunakan link pada window ‘about’ yang biasanya digunakan untuk memberikan referensi ke suatu website. Hal ini diindikasikan dapat menjadi attack vector terhadap iPhone jika ternyata pada link tersebut diletakan malicious code. Saat proses submit aplikasi ke apple, itulah saat mendebarkan apakah aplikasi kita akan diterima atau tidak. Terutama saat kita berharap aplikasi tersebut akan di bandrol dengan harga tertentu.
Kenapa harus begitu sulit?! alasannya dapat ditemukan pada artikel diatas. Jika kita lihat pada Wall-e seluruh umat manusia dapat dikontrol dengan baik melalui sistem yang telah disiapkan, semua dipaksa mengikuti aturan untuk kebaikan mereka sendiri namun sepertinya tidak demikian dengan kehidupan manusia yang sebenarnya. Walaupun apple telah memberikan sistem yang telah dipersiapkan dengan baik, dan memaksa semua pengguna untuk mengikuti aturan yang telah disediakan dengan tujuan melindungi end-user dari berbagai attack vector, namun kehadiran para hacker dengan penyakit rasa ingin tahunya yang tinggi membuat sistem tersebut di rusak hanya dalam hitungan bulan sejak rilis awalnya.
Charlie Miller menunjukan proses awal pencarian bugs aplikasi iPhone, hal ini dilakukan dengan memanfaatkan ‘jailbroken iPhone’. Salah satu hasilnya adalah bugs mobile safari yang dimanfaatkan sebagai metode jailbreak firmware awal iPhone. Pada presentasi tersebut Charlie Miller juga sekaligus menunjukan metode untuk bypass code signing pada aplikasi iPhone, walaupun tidak banyak yang menyadari efek keberhasilan menjalankan aplikasi C secara bebas pada suatu platform (shellcode development, low-level debugging, backdoor development, dll).
Bagi para creative evil thinker sebetulnya tidak harus menunggu ditemukan bugs pada aplikasi iPhone, cukup dengan memanfaatkan para pengguna hasil karya saurik dimana aplikasi-aplikasi iPhone dari un-official 3rd party dapat di-install dengan mudah melalui Cydia maka seharusnya sangat mudah membuat trojan ala iPhone, yang seakan-akan memberikan aplikasi lucu nan menarik namun ternyata menjelajah isi iPhone serta mengirimkan berbagai macam informasi didalamnya (contact, notes, sms, photo, dll).
Jadi, anak dan cucu kita masih tetap akan mengenal symantec sebagai produsen anti-virus / anti-trojan, bukan begitu?!
ya, semoga begitu. pengetahuan memeng seharusnya diwariskan. good info, walau saya sendiri belum mengenal iPhone :(.