Artikel berikut ini berisi penjelasan tentang keamanan sistem operasi mobile milik Apple, iOS, serta bagaimana cara kerja dan cara memecahkannya. Untuk dapat memahami sepenuhnya keputusan Apple yang ingin mengamankan perangkat mereka, yang pertama perlu diketahui adalah tentang jenis-jenis ancaman yang mungkin dihadapi dari perangkat tersebut.
Pada tingkat tinggi, perangkat iOS (yang selanjutnya disebut iDevice) menghadapi jenis serangan yang sama dengan yang dihadapi komputer desktop. Tipe serangan tersebut bisa dibagi menjadi dua kategori: malware dan exploit. Malware sudah menjadi masalah umum sejak puluhan tahun dan sudah mulai menjadi ancaman bagi perangkat mobile.
Secara umum, malware adalah software yang membuat sesuatu yang “buruk” ketika diinstall atau dijalankan pada sebuah perangkat. Malware mungkin dibundel dengan software yang diinginkan pengguna, atau menyamar sebagai sesuatu yang diinginkan pengguna. Pada kedua kasus, pengguna mendownload dan menginstall malware yang ketika dijalankan, akan melakukan tindakan berbahaya. Tindakan ini bisa berupa mengirim e-mail, mengijinkan akses remote kepada penyerang, menginstall keylogger, dan sebagainya.
Semua perangkat komputasi rentan pada malware pada tingkat tertentu. Komputer didesain untuk menjalankan software, dan komputer akan melakukan apa yang diperintahkan. Jika pengguna menyuruhnya untuk menjalankan sesuatu yang ternyata berbahaya, komputer akan dengan senang hati akan mengerjakannya. Cara paling umum untuk mengamankan perangkat dari malware adalah dengan software antivirus (AV). Pekerjaan AV adalah menentukan software mana yang aman dan yang tidak aman untuk dijalankan.
Di sisi lain, exploit mengambil keuntungan dari beberapa kecacatan pada software pada perangkat untuk menjalankan sebuah kode (program). Pengguna mungkin dengan polosnya berselancar di dunia maya, membaca e-mail, atau bahkan tidak melakukan apa-apa, ketika secara tiba-tiba beberapa kode berbahaya (mungkin dalam bentuk halaman web, e-mail atau pesan teks) mengambil keuntungan dari sebuah kerentanan keamanan (vulnerability) untuk menjalankan kode pada sebuah perangkat. Serangan seperti itu sering disebut sebagai drive-by-downloads, tidak seperti malware, pengguna kebanyakan adalah korban yang tidak bersala dan tidak mencoba untuk menginstall kode apapun, tetapi hanya ingin menggunakan perangkat mereka. Exploit mungkin menjalankan sebuah kode dalam sebuah proses, atau mungkin mendownload sebuah software, menginstallnya, dan menjalankannya. Korban mungkin tidak mengetahui apa yang sebenarnya sedang terjadi.
Exploit seperti ini setidaknya butuh dua bahan: yang pertama adalah sebuah kecacatan atau kerentanan dalam software pada perangkat. Yang kedua adalah memanfaatkan kerentanan ini untuk mendapatkan kode yang dikontrol oleh penyerang untuk menjalankan kode dalam perangkat. Karena adanya proses dua langkah ini, Anda memiliki dua cara utama untuk berlindung dari serangan seperti ini. Yang pertama adalah membuat kerentanan semakin sulit untuk ditemukan. Ini melibatkan banyak teknik seperti pencegahan eksekusi data (data execution prevention), dan pengacakan memori (memory randomization).
Selanjutnya, jika seandainya Anda mengakui bahwa penyerang pada akhirnya akan menemukan celah keamanan (bug) pada kode Anda dan mungkin menjalankannya, Anda setidaknya bisa membatasi kerusakan yang disebabkan oleh kode tersebut. Ini melibatkan penggunaan privilege yang terpisah, atau sandboxing untuk menjauhkan data sensitif dari sebuah proses. Sebagai contoh, aplikasi web browser Anda mungkin tidak memerlukan kemampuan untuk membuat video atau mengirim pesan teks.
iOS adalah Mac OS X yang dipotong fitur-fiturnya. Dan ada banyak kerentanan dan serangan pada kedua platform yang mirip. Perbedaan dasar dari keduanya terletak pada lingkungan serangannya.
Dalam beberapa hal, permukaan serangan iDevice lebih kecil dari komputer Mac OS X. Beberapa aplikasi seperti iChat tidak terinstall pada iOS. Aplikasi lain seperti QuickTime sudah dikurangi fitur-fiturnya. Demikian pula beberapa tipe file ditolak oleh MobileSafari tapi tetap terurai pada Safari. Jadi, iOS memiliki permukaan serangan yang lebih kecil dibanding Mac OS X.