Menggunakan jailbreaking untuk mengekstrak data: risiko dan konsekuensi

Di blog baru saya di Habré, saya ingin berbagi informasi unik tentang bagaimana tepatnya kita mengekstrak data dari telepon pintar. Di situs kami sendiri, kami memposting sejumlah artikel tentang topik ini, mengatakan, sepertinya, segala sesuatu tentang cara untuk mengekstrak data dari ponsel cerdas dan tablet Apple. Analisis logis, ekstraksi awan, dan analisis ekstraksi fisik tingkat rendah memiliki kekuatan dan kelemahan; Saya akan mencoba menceritakannya di publikasi-publikasi berikut.

Saya kira saya tidak akan pernah bosan membicarakan tentang manfaat analisis fisik. Ini adalah akses ke semua konten sistem file, dan dekripsi semua entri dari Keychain (dan ini adalah kata sandi, termasuk, omong-omong, kata sandi untuk dompet cryptocurrency dan obrolan "rahasia"). Di sini, mengekstraksi data dari semua aplikasi (dan bukan hanya mereka yang pengembangnya membolehkan cadangan) dan akses ke pesan email yang diunduh, ruang obrolan dan korespondensi dalam berbagai aplikasi, termasuk yang terlindungi dengan baik (dengan tangan, pengguna Telegram dan Sinyal akan melambaikan tangan kami).

Bagaimana cara mendapatkan yang paling menarik? Tentu saja, kita membutuhkan akses tingkat rendah ke data, yang tidak mungkin tanpa memperoleh hak pengguna super. Dan bagaimana cara mendapatkan hak pengguna super? Jika Anda bukan seorang polisi atau pegawai layanan khusus dari AS, Israel, atau Uni Eropa, maka hanya ada satu opsi: memasang jailbreak. Hari ini saya akan berbicara tentang risiko dan konsekuensi analisis fisik perangkat yang terkait dengan penggunaan jailbreak untuk mengekstrak data.

Untuk apa jailbreak?


Mungkin semua orang tahu apa itu jailbreak untuk iOS dan perbedaannya dari root untuk Android (petunjuk: untuk hampir semua orang). Jailbreak adalah nama kolektif dari kelas aplikasi untuk sistem operasi iOS, yang memungkinkan peningkatan hak istimewa untuk mendapatkan hak pengguna super pada perangkat. Peningkatan hak istimewa dilakukan dengan menggunakan kesalahan dalam sistem keamanan iOS. Mengingat fakta bahwa pengembang Apple dengan cepat memperbaiki bug dengan merilis pembaruan iOS, rilis alat jailbreak baru dan baru adalah proses yang berkelanjutan.

Jailbreak digunakan oleh kedua peneliti independen untuk menganalisis sistem keamanan iOS dan pengguna yang antusias yang mendapat kesempatan untuk memodifikasi tampilan dan perilaku sistem, serta menginstal aplikasi dari sumber pihak ketiga selain dari App Store resmi Apple. Bagi kami, peluang ini tidak berguna; yang kami butuhkan adalah akses ke perangkat melalui SSH, dan, tentu saja, akses penuh ke sistem file.

Dengan demikian, di laboratorium kami (serta di laboratorium ahli forensik), jailbreak digunakan untuk mendapatkan akses tanpa batas ke sistem file, mengekstrak data dari iPhone dan iPad dan mendekripsi Gantungan Kunci (kata sandi pengguna yang disimpan di Safari, sistem dan aplikasi pihak ketiga) .

Menggunakan jailbreak memiliki manfaat berikut:

Gambar Sistem File:

  • Database aplikasi yang berfungsi, file WAL, akses ke catatan yang baru dihapus
  • Data untuk semua aplikasi, termasuk yang cadangannya dilarang
  • Akses riwayat obrolan Anda di aplikasi seperti Signal dan Telegram
  • Email dan Pertukaran yang Diunduh
  • Log Sistem

Gantungan kunci:

  • Selain kata sandi pengguna, yang juga dapat diambil dari cadangan dengan kata sandi, catatan yang dilindungi oleh atribut this_device_only juga didekripsi.
  • Termasuk pengambilan kata sandi cadangan iTunes

Menggunakan jailbreak tidak hanya membawa manfaat, tetapi juga membawa sejumlah risiko.

Risiko Jailbreak


Menginstal dan menggunakan jailbreak melibatkan beberapa risiko. Risiko memasang jailbreak sering disalahpahami. Paling sering, mereka takut akan "menghanguskan" perangkat - situasi akibat iPhone atau iPad yang diretas berhenti dimuat. Gagasan tentang bahaya jailbreak telah terjadi sejak iOS 8 dan 9, yang jailbreak menambal kernel dan mencoba (kadang-kadang - berhasil, tetapi lebih sering - tidak terlalu) untuk menonaktifkan Kernel Patch Protection, perlindungan KPP. Pemicu KPP menyebabkan reboot spontan perangkat atau bricking-nya.

Untuk jailbreak modern (dimulai dengan jailbreak untuk iOS 10) risiko ini praktis tidak ada: jailbreak tidak memodifikasi kernel sistem dan tidak mempengaruhi proses boot (dan, tentu saja, jangan menyentuh KPP). Selain itu, bahkan perangkat dengan boot jailbreak yang diinstalasi dalam mode normal; Untuk mendapatkan hak pengguna super, jailbreak perlu dijalankan lagi, setelah memuat.

Untuk minimum absolut, risiko ini berkurang dalam jailbreaks dari kategori Rootless. Jailbreaks ini tidak hanya tidak memodifikasi sistem, tetapi bahkan tidak me-remount partisi sistem. Karenanya, jailbreak seperti itu tidak dapat mempengaruhi proses boot sistem dengan cara apa pun.

Apa risiko memasang jailbreak? Kami mendaftar.

1. Koneksi Internet perangkat. Selama instalasi jailbreak, Anda harus mendapatkan tanda tangan digital untuk paket IPA, yang berisi jailbreak. IPA yang tidak ditandatangani tidak dapat ditransfer ke perangkat, apalagi yang tidak dapat diluncurkan di atasnya. Tanda tangan digital dikeluarkan oleh server Apple; mereka harus dihubungi untuk penerimaannya. Prosesnya otomatis: menggunakan aplikasi open source Cydia Impactor yang sudah jadi dan sangat mudah digunakan. Namun, jika Anda mengizinkan perangkat mengakses Internet, Anda berisiko: penyerang dapat mengirim perintah ke perangkat dari jarak jauh untuk memblokirnya atau menghancurkan data.

Solusi: Masalah ini dapat diatasi dengan menggunakan sertifikat untuk pengembang (Program Pengembang Apple). Lihat Panduan untuk detailnya.

2. Jailbreak tidak menginstal. Ya, risiko paling serius kedua adalah bahwa jailbreak tidak bisa didapatkan di iPhone. Jailbreak tidak hanya menggunakan satu, tetapi seluruh rantai kerentanan; menemukan dan menggunakan rantai semacam itu adalah kerja keras. Sayangnya, kesalahan pada tahap apa pun mengarah pada fakta bahwa jailbreak tidak akan dibuat, dan Anda akan menemukan diri Anda dalam kasus terbaik dengan perangkat tanpa jailbreak, dan dalam kasus terburuk dengan perangkat dengan partisi sistem yang dipasang kembali, tetapi tanpa jailbreak (tentang apa yang buruk - di bawah ini )

Solusi: secara umum, ada banyak jailbreak. Untuk iOS 12, misalnya, kami menghitung setidaknya 4 jailbreak yang bisa diterapkan (sebenarnya, ada lebih banyak lagi). Satu jailbreak tidak berhasil? Coba saja yang lain; tentang mereka lagi di Panduan .

Konsekuensinya


Kami sudah tahu risikonya, jailbreak diinstal. Bagaimana ini bisa mengancam?

Sebelum kita berbicara tentang risiko jailbreak, kita akan memahami tipenya. Hanya ada dua di antaranya: jailbreak biasa (klasik), dan jailbreak tanpa akar.

Jailbreak klasik menyediakan, dengan demikian, "isian lengkap" bagi pengguna: verifikasi tanda tangan digital dinonaktifkan (Anda dapat menginstal dan menjalankan aplikasi apa pun), toko aplikasi pihak ketiga diinstal (paling sering itu adalah Cydia, tetapi opsi alternatif juga mulai muncul). Untuk ini, cukup banyak file yang ditulis ke partisi sistem, dan partisi sistem itu sendiri dimount ulang dalam mode r / w.

Apa artinya ini dalam praktik? Sampah di partisi sistem, yang terkadang tidak dapat sepenuhnya dihapus selama proses penghapusan jailbreak (terutama jika pengguna berhasil mencoba menginstal jailbreak yang berbeda). Potensi ketidakstabilan perangkat (dan seringkali nyata). Akhirnya, ketidakmampuan untuk menginstal pembaruan OTA dengan benar. Hanya pemulihan firmware penuh melalui iTunes yang membantu, dan kadang-kadang ketidakstabilan perangkat berlanjut, dan Anda harus mengatur ulang ke pengaturan pabrik. Tidak terlalu baik.

Semua hal ini tidak terjadi jika Anda menggunakan jenis jailbreak baru tanpa root, satu-satunya perwakilan di antaranya adalah RootlessJB. Penjara ini tidak memenangkan popularitas rekan-rekan klasiknya karena alasan yang jelas: ia tidak menginstal (dan tidak mendukung pekerjaan) toko pihak ketiga (Cyida dan sejenisnya). Penggila pengguna biasa pada saat ini menghilang, dan ia membuat jailbreak klasik.

Sementara itu, untuk tujuan kami, RootlessJB memiliki nilai tertentu. Faktanya adalah bahwa kita harus mengembalikan iPhone yang sedang dipelajari dalam bentuk yang kira-kira diterima untuk dianalisis. Artinya, setidaknya perangkat tidak akan bekerja kurang stabil daripada sebelum analisis, dan seharusnya tidak ada masalah menginstal pembaruan OTA. Inilah yang diberikan RootlessJB pada kami. Nilai sendiri: jailbreak ini tidak mengubah partisi sistem tanpa menulis satu file tambahan untuknya. Selain itu, ia tidak dapat melakukan ini: prinsip operasi jailbreak ini sendiri tidak menyiratkan remounting partisi sistem dalam mode r / w.

Lebih banyak lebih. Karena jailbreak RootlessJB tidak perlu didukung oleh toko aplikasi pihak ketiga, tidak perlu menonaktifkan verifikasi tanda tangan digital (Anda dapat menjalankan binari individual, tetapi jalur menuju mereka harus secara manual dimasukkan ke file kontrol izin). Tidak perlu menonaktifkan verifikasi tanda tangan digital - tidak perlu menulis apa pun ke partisi sistem. Partisi sistem tidak perlu dibuka untuk perekaman - Anda dapat melewati operasi kerentanan yang sesuai, yang menyederhanakan proses instalasi dan membuatnya lebih andal. Dengan kata lain, bagi kami, RootlessJB secara harfiah adalah hadiah.

Kami mengakhiri artikel dengan tabel di mana kami membandingkan efek dari menggunakan berbagai jenis jailbreak.

gambar

Kesimpulan


Artikel ini adalah yang pertama direncanakan. Saya berencana untuk berbicara tentang bagaimana tepatnya di laboratorium kepolisian dan layanan khusus di negara kita dan di luar negeri mendapatkan akses ke informasi di perangkat Apple. Tetap bersama kami, itu akan menarik!

Source: https://habr.com/ru/post/id461729/


All Articles