1 00:00:00,000 --> 00:00:02,610 >> [Seminar] [Membela Dibalik Device: Security Mobile Application] 2 00:00:02,610 --> 00:00:04,380 [Chris Wysopal] [Harvard University] 3 00:00:04,380 --> 00:00:07,830 [Ini adalah CS50.] [CS50.TV] 4 00:00:07,830 --> 00:00:10,360 >> Selamat siang. Nama saya Chris Wysopal. 5 00:00:10,360 --> 00:00:13,360 Saya CTO dan co-founder dari Veracode. 6 00:00:13,360 --> 00:00:15,880 Veracode adalah sebuah perusahaan keamanan aplikasi. 7 00:00:15,880 --> 00:00:18,230 Kami menguji semua jenis aplikasi yang berbeda, 8 00:00:18,230 --> 00:00:25,060 dan apa yang akan saya bicarakan hari ini adalah keamanan aplikasi mobile. 9 00:00:25,060 --> 00:00:28,630 Latar belakang saya adalah saya telah melakukan penelitian keamanan 10 00:00:28,630 --> 00:00:31,970 untuk waktu yang sangat lama, mungkin sekitar selama orang. 11 00:00:31,970 --> 00:00:35,000 Saya mulai di pertengahan tahun 90an, 12 00:00:35,000 --> 00:00:37,370 dan itu adalah waktu yang cukup menarik karena 13 00:00:37,370 --> 00:00:39,220 kami memiliki perubahan paradigma di pertengahan tahun 90an. 14 00:00:39,220 --> 00:00:43,520 Semua komputer semua orang tiba-tiba yang tersambung ke internet, 15 00:00:43,520 --> 00:00:46,550 dan kemudian kami memiliki awal dari aplikasi web, 16 00:00:46,550 --> 00:00:49,330 dan itulah yang saya terfokus pada banyak maka. 17 00:00:49,330 --> 00:00:51,160 Ini menarik. 18 00:00:51,160 --> 00:00:53,930 Sekarang kita memiliki perubahan paradigma lain terjadi dengan komputasi, 19 00:00:53,930 --> 00:00:58,710 yang merupakan pergeseran untuk aplikasi mobile. 20 00:00:58,710 --> 00:01:03,680 >> Saya merasa itu semacam waktu yang sama maka itu di akhir tahun 90an 21 00:01:03,680 --> 00:01:07,650 ketika kita sedang menyelidiki aplikasi web dan menemukan cacat seperti 22 00:01:07,650 --> 00:01:11,800 kesalahan manajemen sesi dan injeksi SQL 23 00:01:11,800 --> 00:01:14,940 yang benar-benar tidak ada sebelumnya, dan tiba-tiba mereka di mana-mana 24 00:01:14,940 --> 00:01:19,360 dalam aplikasi web, dan sekarang banyak waktu yang saya habiskan 25 00:01:19,360 --> 00:01:27,950 adalah melihat aplikasi mobile dan melihat apa yang terjadi di luar sana di alam liar. 26 00:01:27,950 --> 00:01:32,060 Aplikasi mobile benar-benar akan menjadi platform komputasi yang dominan, 27 00:01:32,060 --> 00:01:35,060 jadi kita benar-benar perlu untuk menghabiskan banyak waktu jika Anda berada di industri keamanan 28 00:01:35,060 --> 00:01:39,280 berfokus pada aplikasi web. 29 00:01:39,280 --> 00:01:43,420 Ada 29 miliar aplikasi download ponsel pada tahun 2011. 30 00:01:43,420 --> 00:01:47,920 Ini diperkirakan menjadi 76 miliar aplikasi pada 2014. 31 00:01:47,920 --> 00:01:54,040 Ada 686 juta perangkat yang akan dibeli tahun ini, 32 00:01:54,040 --> 00:01:57,060 jadi ini adalah di mana orang akan melakukan 33 00:01:57,060 --> 00:01:59,600  sebagian besar komputasi klien mereka ke depan. 34 00:01:59,600 --> 00:02:04,220 >> Saya sedang berbicara dengan seorang wakil presiden di Fidelity Investments 35 00:02:04,220 --> 00:02:08,780 beberapa bulan yang lalu, dan katanya mereka hanya melihat lebih banyak lalu lintas 36 00:02:08,780 --> 00:02:12,610 melakukan transaksi keuangan dari basis pelanggan mereka 37 00:02:12,610 --> 00:02:16,230 pada aplikasi mobile mereka dari situs web mereka, 38 00:02:16,230 --> 00:02:20,610 sehingga penggunaan umum untuk Web di masa lalu telah 39 00:02:20,610 --> 00:02:23,800 memeriksa harga saham Anda, mengelola portofolio Anda, 40 00:02:23,800 --> 00:02:28,060 dan kita benar-benar melihat bahwa pada tahun 2012 beralih atas 41 00:02:28,060 --> 00:02:30,960 untuk lebih dominan pada platform mobile. 42 00:02:30,960 --> 00:02:34,530 Tentu saja jika ada akan menjadi kegiatan kriminal, 43 00:02:34,530 --> 00:02:38,900 aktivitas berbahaya, itu akan mulai difokuskan pada platform mobile 44 00:02:38,900 --> 00:02:44,210 dari waktu ke waktu sebagai orang-orang beralih ke itu. 45 00:02:44,210 --> 00:02:48,320 Jika Anda melihat platform mobile, 46 00:02:48,320 --> 00:02:54,380 untuk melihat risiko dari platform ini berguna untuk memecahnya ke dalam lapisan yang berbeda, 47 00:02:54,380 --> 00:02:59,010 seperti kamu akan melakukannya pada komputer desktop, 48 00:02:59,010 --> 00:03:02,860 dan Anda berpikir tentang lapisan yang berbeda, perangkat lunak, sistem operasi, 49 00:03:02,860 --> 00:03:07,730 lapisan jaringan, lapisan hardware, dan tentu saja, ada kerentanan pada semua lapisan tersebut. 50 00:03:07,730 --> 00:03:10,510 >> Hal yang sama terjadi pada ponsel. 51 00:03:10,510 --> 00:03:14,880 Tapi mobile, tampaknya bahwa beberapa dari mereka lapisan yang lebih buruk. 52 00:03:14,880 --> 00:03:19,840 Untuk satu, lapisan jaringan yang lebih bermasalah pada ponsel 53 00:03:19,840 --> 00:03:25,650 karena banyak orang di kantor atau di rumah 54 00:03:25,650 --> 00:03:30,780 kabel koneksi atau mereka memiliki aman koneksi Wi-Fi, 55 00:03:30,780 --> 00:03:36,530 dan dengan banyak perangkat mobile Anda jelas di luar rumah 56 00:03:36,530 --> 00:03:40,520 atau di luar kantor banyak, dan jika Anda menggunakan Wi-Fi ada 57 00:03:40,520 --> 00:03:42,820 Anda mungkin menggunakan koneksi Wi-Fi yang tidak aman, 58 00:03:42,820 --> 00:03:45,570 sesuatu yang koneksi Wi-Fi publik, 59 00:03:45,570 --> 00:03:48,840 jadi ketika kita berpikir tentang aplikasi mobile kita harus memperhitungkan 60 00:03:48,840 --> 00:03:53,770 bahwa lingkungan jaringan lebih berisiko untuk aplikasi tersebut 61 00:03:53,770 --> 00:03:57,640 ketika Wi-Fi sedang digunakan. 62 00:03:57,640 --> 00:04:02,410 Dan ketika saya masuk ke lebih dari risiko aplikasi mobile 63 00:04:02,410 --> 00:04:04,910 Anda akan melihat mengapa itu lebih penting. 64 00:04:04,910 --> 00:04:09,710 Ada risiko di tingkat hardware pada perangkat mobile. 65 00:04:09,710 --> 00:04:11,670 Ini adalah area dari penelitian yang sedang berlangsung. 66 00:04:11,670 --> 00:04:15,910 Orang menyebut serangan broadband ini atau serangan baseband 67 00:04:15,910 --> 00:04:21,870 di mana Anda menyerang firmware yang mendengarkan di radio. 68 00:04:21,870 --> 00:04:25,430 >> Ini benar-benar serangan menakutkan karena 69 00:04:25,430 --> 00:04:27,280 pengguna tidak perlu melakukan apapun. 70 00:04:27,280 --> 00:04:30,760 Anda dapat menekan banyak perangkat dalam jangkauan RF 71 00:04:30,760 --> 00:04:36,690 sekaligus, dan sepertinya setiap kali penelitian ini gelembung up 72 00:04:36,690 --> 00:04:40,750 dengan cepat akan diklasifikasikan mana 73 00:04:40,750 --> 00:04:46,600 orang menukik dalam sekitar dan berkata, "Di sini, memberitahu kami tentang hal itu, dan silahkan berhenti berbicara tentang hal itu." 74 00:04:46,600 --> 00:04:49,460 Ada beberapa penelitian terjadi di area broadband, 75 00:04:49,460 --> 00:04:51,980 tetapi tampaknya menjadi hush hush sangat. 76 00:04:51,980 --> 00:04:56,910 Saya pikir itu lebih dari jenis negara bangsa penelitian yang sedang terjadi. 77 00:04:56,910 --> 00:05:02,140 Sebuah bidang penelitian aktif, meskipun, adalah lapisan sistem operasi, 78 00:05:02,140 --> 00:05:08,910 dan sekali lagi, ini berbeda daripada di dunia komputer desktop 79 00:05:08,910 --> 00:05:14,840 karena dalam ruang mobile Anda memiliki tim-tim dari orang-orang yang disebut jailbreakers, 80 00:05:14,840 --> 00:05:18,670 dan jailbreakers yang berbeda dari peneliti kerentanan biasa. 81 00:05:18,670 --> 00:05:21,970 Mereka mencoba untuk menemukan kerentanan dalam sistem operasi, 82 00:05:21,970 --> 00:05:27,000 tetapi alasan mereka berusaha untuk menemukan kerentanan bukan untuk 83 00:05:27,000 --> 00:05:31,810 masuk ke mesin orang lain dan kompromi itu. 84 00:05:31,810 --> 00:05:34,280 Ini untuk masuk ke komputer mereka sendiri. 85 00:05:34,280 --> 00:05:38,820 >> Mereka ingin masuk ke ponsel mereka sendiri, memodifikasi sistem operasi mobile mereka sendiri 86 00:05:38,820 --> 00:05:41,050 sehingga mereka dapat menjalankan aplikasi pilihan mereka 87 00:05:41,050 --> 00:05:44,510 dan mengubah sesuatu dengan hak akses administratif penuh, 88 00:05:44,510 --> 00:05:49,050 dan mereka tidak ingin memberitahu vendor tentang hal ini. 89 00:05:49,050 --> 00:05:52,960 Mereka tidak seperti seorang peneliti keamanan yang merupakan seorang peneliti keamanan topi putih 90 00:05:52,960 --> 00:05:56,600 yang akan melakukan pengungkapan yang bertanggung jawab dan memberitahu vendor tentang hal itu. 91 00:05:56,600 --> 00:06:01,270 Mereka ingin melakukan penelitian ini, dan mereka ingin benar-benar mempublikasikannya 92 00:06:01,270 --> 00:06:06,400 dalam mengeksploitasi atau rootkit atau kode jailbreak, 93 00:06:06,400 --> 00:06:10,010 dan mereka ingin melakukannya strategis, seperti tepat setelah 94 00:06:10,010 --> 00:06:13,570 kapal vendor sistem operasi baru. 95 00:06:13,570 --> 00:06:16,350 Anda memiliki hubungan bermusuhan ini 96 00:06:16,350 --> 00:06:19,000 dengan kerentanan OS-level pada ponsel, 97 00:06:19,000 --> 00:06:23,150 yang saya pikir cukup menarik, dan satu tempat kita melihatnya 98 00:06:23,150 --> 00:06:29,210 apakah itu membuatnya begitu bahwa ada baik yang diterbitkan memanfaatkan kode di luar sana 99 00:06:29,210 --> 00:06:31,750 untuk kerentanan kernel-level, 100 00:06:31,750 --> 00:06:35,040 dan kita telah melihat orang-orang benar-benar digunakan oleh penulis malware. 101 00:06:35,040 --> 00:06:38,450 Ini sedikit berbeda dari dunia PC. 102 00:06:38,450 --> 00:06:42,530 Dan kemudian lapisan terakhir adalah lapisan atas, lapisan aplikasi. 103 00:06:42,530 --> 00:06:45,250 Itulah apa yang akan saya bicarakan hari ini. 104 00:06:45,250 --> 00:06:48,970 >> Lapisan lain ada, dan lapisan lainnya bermain ke dalamnya, 105 00:06:48,970 --> 00:06:53,310 tapi aku kebanyakan akan berbicara tentang apa yang terjadi pada lapisan aplikasi 106 00:06:53,310 --> 00:06:55,560 di mana kode berjalan dalam sandbox. 107 00:06:55,560 --> 00:06:58,670 Ia tidak memiliki hak administratif. 108 00:06:58,670 --> 00:07:02,170 Hal ini untuk menggunakan API dari perangkat, 109 00:07:02,170 --> 00:07:06,970 tapi tetap saja, banyak aktivitas berbahaya dan banyak risiko yang dapat terjadi pada lapisan yang 110 00:07:06,970 --> 00:07:09,220 karena itulah lapisan di mana semua informasi tersebut. 111 00:07:09,220 --> 00:07:12,330 Apps dapat mengakses semua informasi pada perangkat 112 00:07:12,330 --> 00:07:15,390 jika mereka memiliki izin yang tepat, 113 00:07:15,390 --> 00:07:17,540 dan mereka dapat mengakses sensor yang berbeda pada perangkat, 114 00:07:17,540 --> 00:07:23,950 Sensor GPS, mikrofon, kamera, apa yang telah Anda. 115 00:07:23,950 --> 00:07:27,380 Meskipun kita hanya berbicara tentang pada lapisan aplikasi 116 00:07:27,380 --> 00:07:33,700 kami memiliki banyak risiko di sana. 117 00:07:33,700 --> 00:07:38,450 Hal lain yang berbeda tentang lingkungan mobile 118 00:07:38,450 --> 00:07:45,060 adalah semua pemain sistem operasi, baik itu BlackBerry atau Android 119 00:07:45,060 --> 00:07:53,410 atau iOS atau Windows mobile, mereka semua memiliki model izin berbutir halus, 120 00:07:53,410 --> 00:07:56,990 dan ini adalah salah satu cara yang mereka dibangun ke dalam sistem operasi 121 00:07:56,990 --> 00:08:01,230 gagasan bahwa itu tidak berisiko seperti yang Anda pikirkan. 122 00:08:01,230 --> 00:08:04,550 Meskipun Anda memiliki semua kontak Anda di sana, semua informasi pribadi Anda, 123 00:08:04,550 --> 00:08:09,080 Anda memiliki foto Anda, Anda memiliki lokasi Anda di sana, 124 00:08:09,080 --> 00:08:14,820 Anda menyimpan pin bank Anda untuk login otomatis di sana, itu aman karena 125 00:08:14,820 --> 00:08:19,430 apps harus memiliki izin tertentu untuk mendapatkan bagian-bagian tertentu 126 00:08:19,430 --> 00:08:25,080 dari informasi pada perangkat, dan pengguna harus disajikan dengan 127 00:08:25,080 --> 00:08:29,230 izin ini dan mengatakan apa-apa. 128 00:08:29,230 --> 00:08:32,590 >> Masalah dengan itu adalah pengguna selalu mengatakan baik-baik saja. 129 00:08:32,590 --> 00:08:35,240 Sebagai orang keamanan, saya tahu Anda dapat meminta pengguna, 130 00:08:35,240 --> 00:08:40,100 mengatakan sesuatu yang sangat buruk akan terjadi, apakah Anda ingin hal itu terjadi? 131 00:08:40,100 --> 00:08:44,680 Dan jika mereka terburu-buru atau ada sesuatu yang sangat menarik di sisi lain itu, 132 00:08:44,680 --> 00:08:47,760 seperti permainan akan diinstal bahwa mereka tunggu-tunggu, 133 00:08:47,760 --> 00:08:50,860 mereka akan klik oke. 134 00:08:50,860 --> 00:08:56,630 Itulah mengapa saya katakan pada slide saya di sini biarkan aku melemparkan burung di babi sudah, 135 00:08:56,630 --> 00:09:03,150 dan Anda dapat melihat pada slide di sini ada contoh kotak izin BlackBerry. 136 00:09:03,150 --> 00:09:05,990 Ia mengatakan "Silakan mengatur hak akses aplikasi BlackBerry Travel 137 00:09:05,990 --> 00:09:09,720 setelah mengklik tombol di bawah ini, "dan pada dasarnya pengguna hanya akan mengatakan 138 00:09:09,720 --> 00:09:12,240 mengatur hak akses dan menyimpan. 139 00:09:12,240 --> 00:09:18,010 Berikut prompt Android di mana itu menunjukkan hal-hal, 140 00:09:18,010 --> 00:09:20,260 dan itu benar-benar menempatkan sesuatu yang hampir terlihat seperti peringatan. 141 00:09:20,260 --> 00:09:25,090 Itu punya semacam yield tanda sana mengatakan komunikasi jaringan, panggilan telepon, 142 00:09:25,090 --> 00:09:28,120 namun pengguna akan klik install, kan? 143 00:09:28,120 --> 00:09:32,940 Dan kemudian satu Apple benar-benar berbahaya. 144 00:09:32,940 --> 00:09:34,300 Ini tidak memberikan peringatan apapun. 145 00:09:34,300 --> 00:09:37,380 Hanya saja Apple ingin menggunakan lokasi Anda saat ini. 146 00:09:37,380 --> 00:09:39,670 Tentu saja Anda akan klik oke. 147 00:09:39,670 --> 00:09:42,260 >> Ada model izin halus ini, 148 00:09:42,260 --> 00:09:45,890 dan aplikasi harus memiliki file manifest di mana mereka menyatakan 149 00:09:45,890 --> 00:09:49,410 hak akses yang mereka butuhkan, dan yang akan mendapatkan ditampilkan kepada pengguna, 150 00:09:49,410 --> 00:09:53,480 dan pengguna akan harus mengatakan saya memberikan izin tersebut. 151 00:09:53,480 --> 00:09:55,080 Tapi mari kita jujur. 152 00:09:55,080 --> 00:09:58,400 Pengguna hanya akan selalu mengatakan baik-baik saja. 153 00:09:58,400 --> 00:10:04,460 Mari kita cepat melihat izin yang aplikasi ini meminta 154 00:10:04,460 --> 00:10:06,850 dan beberapa hak akses yang ada. 155 00:10:06,850 --> 00:10:09,950 Perusahaan ini Praetorian melakukan survei tahun lalu 156 00:10:09,950 --> 00:10:14,170 dari 53.000 aplikasi dianalisis di pasar dan pihak ke-3 pasar Android, 157 00:10:14,170 --> 00:10:16,770 jadi ini adalah semua Android. 158 00:10:16,770 --> 00:10:19,670 Dan aplikasi rata-rata meminta izin 3. 159 00:10:19,670 --> 00:10:23,370 Beberapa aplikasi meminta izin 117, 160 00:10:23,370 --> 00:10:27,480 jadi jelas ini sangat berbutir halus dan terlalu kompleks bagi pengguna untuk memahami 161 00:10:27,480 --> 00:10:31,600 jika mereka disajikan dengan aplikasi ini yang perlu ini 117 izin. 162 00:10:31,600 --> 00:10:37,270 Ini seperti pengguna akhir perjanjian lisensi yang 45 halaman. 163 00:10:37,270 --> 00:10:40,240 Mungkin segera mereka akan memiliki pilihan di mana itu seperti 164 00:10:40,240 --> 00:10:43,100 mencetak perizinan dan mengirim saya email. 165 00:10:43,100 --> 00:10:45,480 >> Tapi jika Anda melihat beberapa izin yang menarik atas 166 00:10:45,480 --> 00:10:50,840 24% dari aplikasi yang mereka download dari 53.000 167 00:10:50,840 --> 00:10:57,230 Informasi GPS diminta dari perangkat. 168 00:10:57,230 --> 00:10:59,810 8% membaca kontak. 169 00:10:59,810 --> 00:11:03,770 4% mengirim SMS, dan 3% menerima SMS. 170 00:11:03,770 --> 00:11:07,730 2% rekaman audio. 171 00:11:07,730 --> 00:11:11,210 1% diproses panggilan keluar. 172 00:11:11,210 --> 00:11:13,140 Saya tidak tahu. 173 00:11:13,140 --> 00:11:17,520 Saya tidak berpikir 4% dari aplikasi di toko app benar-benar perlu untuk mengirim pesan teks SMS, 174 00:11:17,520 --> 00:11:21,410 jadi saya pikir itu adalah petunjuk bahwa sesuatu yang tak diinginkan terjadi. 175 00:11:21,410 --> 00:11:24,350 8% dari aplikasi perlu membaca daftar kontak Anda. 176 00:11:24,350 --> 00:11:26,510 Ini mungkin tidak diperlukan. 177 00:11:26,510 --> 00:11:30,990 Salah satu hal menarik lainnya tentang izin adalah 178 00:11:30,990 --> 00:11:36,740 jika Anda link di shared library ke dalam aplikasi Anda 179 00:11:36,740 --> 00:11:39,780 mereka mewarisi hak akses dari aplikasi, 180 00:11:39,780 --> 00:11:46,570 jadi jika aplikasi Anda membutuhkan daftar kontak atau kebutuhan lokasi GPS berfungsi 181 00:11:46,570 --> 00:11:49,940 dan Anda link dalam perpustakaan iklan, misalnya, 182 00:11:49,940 --> 00:11:53,170 bahwa perpustakaan iklan juga akan dapat mengakses kontak 183 00:11:53,170 --> 00:11:57,630 dan juga dapat mengakses lokasi GPS, 184 00:11:57,630 --> 00:12:01,990 dan pengembang app tahu apa-apa tentang kode yang berjalan di perpustakaan iklan. 185 00:12:01,990 --> 00:12:05,370 Mereka hanya menghubungkan bahwa dalam karena mereka ingin menguangkan aplikasi mereka. 186 00:12:05,370 --> 00:12:09,820 >> Sinilah-dan saya akan berbicara tentang beberapa contoh ini dengan 187 00:12:09,820 --> 00:12:13,930 sebuah aplikasi bernama Pandora di mana pengembang aplikasi 188 00:12:13,930 --> 00:12:18,910 mungkin tanpa disadari akan membocorkan informasi 189 00:12:18,910 --> 00:12:24,580 dari pengguna mereka karena perpustakaan mereka telah dihubungkan masuk 190 00:12:24,580 --> 00:12:30,110 Survei lanskap di luar sana, melihat semua aplikasi yang berbeda 191 00:12:30,110 --> 00:12:34,310 yang telah dilaporkan dalam berita sebagai pengguna sesuatu yang berbahaya atau melakukan tidak ingin 192 00:12:34,310 --> 00:12:39,360 dan kemudian memeriksa banyak aplikasi-kami melakukan banyak analisis biner statis pada aplikasi mobile, 193 00:12:39,360 --> 00:12:42,010 jadi kami telah diperiksa mereka dan melihat kode itu sendiri- 194 00:12:42,010 --> 00:12:49,640 kami datang dengan apa yang kita sebut top 10 daftar perilaku berisiko dalam aplikasi. 195 00:12:49,640 --> 00:12:54,180 Dan itu dipecah menjadi 2 bagian, kode berbahaya, 196 00:12:54,180 --> 00:12:57,600 jadi ini adalah hal buruk yang aplikasi mungkin melakukan itu 197 00:12:57,600 --> 00:13:06,520 cenderung menjadi sesuatu yang individu yang berbahaya 198 00:13:06,520 --> 00:13:10,060 secara khusus dimasukkan ke dalam aplikasi, tapi itu sedikit kabur. 199 00:13:10,060 --> 00:13:13,300 Bisa jadi sesuatu yang pengembang berpikir baik-baik saja, 200 00:13:13,300 --> 00:13:16,350 tetapi akhirnya menjadi dianggap sebagai berbahaya oleh pengguna. 201 00:13:16,350 --> 00:13:19,830 >> Dan kemudian bagian kedua adalah apa yang kita sebut coding kerentanan, 202 00:13:19,830 --> 00:13:24,600 dan ini adalah hal-hal di mana pengembang pada dasarnya adalah membuat kesalahan 203 00:13:24,600 --> 00:13:27,200 atau hanya tidak mengerti bagaimana menulis aplikasi aman, 204 00:13:27,200 --> 00:13:30,260  dan yang menempatkan pengguna app beresiko. 205 00:13:30,260 --> 00:13:34,060 Aku akan pergi melalui ini secara rinci dan memberikan beberapa contoh. 206 00:13:34,060 --> 00:13:39,620 Untuk referensi, saya ingin memasang OWASP ponsel daftar top 10. 207 00:13:39,620 --> 00:13:43,590 Ini adalah 10 isu bahwa kelompok di OWASP, 208 00:13:43,590 --> 00:13:48,900 Proyek Terbuka Keamanan Aplikasi Web, mereka memiliki kelompok kerja 209 00:13:48,900 --> 00:13:50,620 bekerja pada ponsel daftar 10 besar. 210 00:13:50,620 --> 00:13:54,600 Mereka memiliki web top 10 daftar yang sangat terkenal, yang merupakan top 10 211 00:13:54,600 --> 00:13:57,180 hal paling berisiko Anda dapat memiliki dalam aplikasi web. 212 00:13:57,180 --> 00:13:59,090 Mereka melakukan hal yang sama untuk ponsel, 213 00:13:59,090 --> 00:14:01,750 dan daftar mereka adalah sedikit berbeda dari kita. 214 00:14:01,750 --> 00:14:03,670 6 dari 10 adalah sama. 215 00:14:03,670 --> 00:14:06,020 Mereka memiliki 4 yang berbeda. 216 00:14:06,020 --> 00:14:10,550 Saya pikir mereka memiliki sedikit pandangan berbeda tentang 217 00:14:10,550 --> 00:14:14,490 risiko dalam aplikasi mobile di mana banyak masalah mereka 218 00:14:14,490 --> 00:14:20,490 benar-benar bagaimana aplikasi ini berkomunikasi dengan server back-end 219 00:14:20,490 --> 00:14:23,100 atau apa yang terjadi pada server back-end, 220 00:14:23,100 --> 00:14:29,220 tidak begitu banyak aplikasi yang memiliki perilaku berisiko yang hanya mudah aplikasi klien. 221 00:14:29,220 --> 00:14:36,640 >> Yang merah di sini adalah perbedaan antara 2 daftar. 222 00:14:36,640 --> 00:14:40,740 Dan beberapa dari tim penelitian saya telah benar-benar memberikan kontribusi untuk proyek ini, 223 00:14:40,740 --> 00:14:44,570 jadi kita akan melihat apa yang terjadi dari waktu ke waktu, tapi saya pikir takeaway di sini adalah 224 00:14:44,570 --> 00:14:47,550 kita tidak benar-benar tahu apa daftar top 10 adalah dalam aplikasi mobile karena 225 00:14:47,550 --> 00:14:50,510 mereka sudah benar-benar hanya ada selama 2 atau 3 tahun sekarang, 226 00:14:50,510 --> 00:14:57,750 dan belum ada cukup waktu untuk benar-benar penelitian sistem operasi 227 00:14:57,750 --> 00:15:00,450 dan apa yang mereka mampu, dan belum ada cukup waktu 228 00:15:00,450 --> 00:15:06,870 bagi masyarakat berbahaya, jika Anda mau, telah menghabiskan cukup waktu 229 00:15:06,870 --> 00:15:12,910 mencoba untuk menyerang pengguna melalui aplikasi mobile, jadi saya berharap daftar ini untuk mengubah sedikit. 230 00:15:12,910 --> 00:15:18,720 Tetapi untuk sekarang, ini adalah 10 hal yang perlu dikhawatirkan. 231 00:15:18,720 --> 00:15:24,150 Anda mungkin bertanya-tanya di sisi ponsel mana apakah ponsel-kode berbahaya 232 00:15:24,150 --> 00:15:28,880 bagaimana cara mendapatkan ke perangkat? 233 00:15:28,880 --> 00:15:35,210 North Carolina State memiliki sebuah proyek yang disebut Mobile Malware Genome Project 234 00:15:35,210 --> 00:15:39,520 di mana mereka mengumpulkan sebanyak malware ponsel yang mereka bisa dan menganalisanya, 235 00:15:39,520 --> 00:15:45,270 dan mereka telah dipecah vektor injeksi yang menggunakan malware mobile, 236 00:15:45,270 --> 00:15:51,490 dan 86% menggunakan teknik yang disebut pengemasan ulang, 237 00:15:51,490 --> 00:15:54,160 dan ini hanya pada platform Android 238 00:15:54,160 --> 00:15:56,720 dapat Anda benar-benar melakukan pengemasan ulang ini. 239 00:15:56,720 --> 00:16:03,100 >> Alasannya adalah kode Android dibangun dengan 240 00:16:03,100 --> 00:16:08,130 kode byte Java disebut Dalvik yang mudah decompilable. 241 00:16:08,130 --> 00:16:12,460 Apa orang jahat bisa lakukan adalah 242 00:16:12,460 --> 00:16:16,590 mengambil aplikasi Android, mendekompilasi, 243 00:16:16,590 --> 00:16:20,120 memasukkan kode jahat mereka, ulang itu, 244 00:16:20,120 --> 00:16:28,070 dan kemudian memasangnya di toko app mengaku menjadi versi baru dari aplikasi itu, 245 00:16:28,070 --> 00:16:30,330 atau mungkin saja mengubah nama aplikasi. 246 00:16:30,330 --> 00:16:35,140 Jika itu adalah semacam permainan, mengubah nama sedikit, 247 00:16:35,140 --> 00:16:42,860 dan sebagainya repackaging ini adalah bagaimana 86% dari malware ponsel akan didistribusikan. 248 00:16:42,860 --> 00:16:45,810 Ada teknik yang disebut pembaruan lain yang 249 00:16:45,810 --> 00:16:50,030 sangat mirip dengan pengemasan ulang, tapi Anda benar-benar tidak memasukkan kode berbahaya masuk 250 00:16:50,030 --> 00:16:52,870 Apa yang Anda lakukan adalah Anda masukkan ke dalam mekanisme update kecil. 251 00:16:52,870 --> 00:16:56,660 Anda menguraikan, Anda masukkan ke dalam sebuah mekanisme update, dan Anda mengkompilasi ulang itu, 252 00:16:56,660 --> 00:17:02,360 dan kemudian ketika aplikasi sedang berjalan itu menarik ke bawah malware ke perangkat. 253 00:17:02,360 --> 00:17:06,300 >> Sejauh mayoritas adalah orang-2 teknik. 254 00:17:06,300 --> 00:17:12,710 Ada benar-benar banyak men-download drive-bys atau drive-by download di ponsel, 255 00:17:12,710 --> 00:17:15,890 yang bisa seperti serangan phishing. 256 00:17:15,890 --> 00:17:18,200 Hei, memeriksa situs web benar-benar keren, 257 00:17:18,200 --> 00:17:21,020 atau Anda perlu pergi ke website ini dan mengisi formulir ini 258 00:17:21,020 --> 00:17:24,420 untuk tetap terus melakukan sesuatu. 259 00:17:24,420 --> 00:17:26,230 Mereka adalah serangan phishing. 260 00:17:26,230 --> 00:17:28,160 Hal yang sama dapat terjadi pada platform mobile di mana mereka 261 00:17:28,160 --> 00:17:33,830 menunjukkan aplikasi mobile untuk men-download, mengatakan "Hai, ini adalah Bank of America." 262 00:17:33,830 --> 00:17:36,070 "Kami melihat Anda menggunakan aplikasi ini." 263 00:17:36,070 --> 00:17:38,540 "Anda harus mendownload aplikasi lain ini." 264 00:17:38,540 --> 00:17:41,170 Secara teoritis, yang bisa bekerja. 265 00:17:41,170 --> 00:17:48,610 Mungkin itu hanya tidak digunakan cukup untuk menentukan apakah itu berhasil atau tidak, 266 00:17:48,610 --> 00:17:51,680 tetapi mereka menemukan bahwa kurang dari 1% dari waktu teknik yang digunakan. 267 00:17:51,680 --> 00:17:56,130 Sebagian besar waktu itu benar-benar kode repackaged. 268 00:17:56,130 --> 00:17:58,710 >> Ada kategori yang disebut lain standalone 269 00:17:58,710 --> 00:18:01,420 di mana seseorang hanya membangun aplikasi baru. 270 00:18:01,420 --> 00:18:04,020 Mereka membangun sebuah aplikasi yang dimaksudkan untuk menjadi sesuatu. 271 00:18:04,020 --> 00:18:07,360 Ini bukan pengemasan ulang dari sesuatu yang lain, dan yang memiliki kode berbahaya. 272 00:18:07,360 --> 00:18:11,230 Yang digunakan 14% dari waktu. 273 00:18:11,230 --> 00:18:17,880 Sekarang saya ingin berbicara tentang apa yang kode berbahaya lakukan? 274 00:18:17,880 --> 00:18:23,070 Salah satu malware pertama di luar sana 275 00:18:23,070 --> 00:18:25,490 Anda dapat mempertimbangkan spyware. 276 00:18:25,490 --> 00:18:27,620 Pada dasarnya mata-mata pada pengguna. 277 00:18:27,620 --> 00:18:30,470 Ini mengumpulkan email, pesan SMS. 278 00:18:30,470 --> 00:18:32,340 Ternyata pada mikrofon. 279 00:18:32,340 --> 00:18:37,330 Ini panen buku kontak, dan mengirimkannya kepada orang lain. 280 00:18:37,330 --> 00:18:40,870 Jenis spyware ada di PC, 281 00:18:40,870 --> 00:18:46,200 sehingga masuk akal bagi orang untuk mencoba melakukan hal ini pada perangkat mobile. 282 00:18:46,200 --> 00:18:53,230 >> Salah satu contoh pertama ini adalah sebuah program yang disebut Rahasia SMS Replicator. 283 00:18:53,230 --> 00:18:56,250 Itu di Android Marketplace beberapa tahun yang lalu, 284 00:18:56,250 --> 00:18:59,960 dan ide itu jika Anda memiliki akses ke seseorang ponsel Android 285 00:18:59,960 --> 00:19:03,450 bahwa Anda ingin memata-matai, jadi mungkin itu pasangan Anda 286 00:19:03,450 --> 00:19:07,600 atau Anda penting lainnya dan Anda ingin memata-matai pesan teks mereka, 287 00:19:07,600 --> 00:19:11,200 Anda bisa men-download aplikasi ini dan menginstalnya dan mengkonfigurasinya 288 00:19:11,200 --> 00:19:16,540 untuk mengirim pesan teks SMS kepada Anda dengan salinan 289 00:19:16,540 --> 00:19:21,710 setiap pesan teks SMS yang mereka punya. 290 00:19:21,710 --> 00:19:27,220 Hal ini jelas merupakan pelanggaran dari ketentuan app store layanan, 291 00:19:27,220 --> 00:19:32,040 dan ini telah dihapus dari Marketplace Android dalam waktu 18 jam itu berada di sana, 292 00:19:32,040 --> 00:19:36,760 sehingga sejumlah kecil orang yang beresiko karena ini. 293 00:19:36,760 --> 00:19:42,510 Sekarang, saya pikir jika program ini disebut sesuatu mungkin sedikit kurang provokatif 294 00:19:42,510 --> 00:19:48,690 seperti Rahasia SMS Replicator itu mungkin akan bekerja jauh lebih baik. 295 00:19:48,690 --> 00:19:52,870 Tapi itu agak jelas. 296 00:19:52,870 --> 00:19:58,680 >> Salah satu hal yang dapat kita lakukan untuk menentukan apakah aplikasi memiliki perilaku ini yang tidak kita inginkan 297 00:19:58,680 --> 00:20:01,410 adalah untuk memeriksa kode. 298 00:20:01,410 --> 00:20:06,250 Hal ini sebenarnya sangat mudah dilakukan pada Android karena kita bisa mendekompilasi aplikasi. 299 00:20:06,250 --> 00:20:11,050 Pada iOS Anda dapat menggunakan disassembler seperti IDA Pro 300 00:20:11,050 --> 00:20:17,190 untuk melihat apa Apis aplikasi yang menelepon dan apa yang dilakukannya. 301 00:20:17,190 --> 00:20:20,680 Kami menulis analisa statis biner kita sendiri untuk kode kita 302 00:20:20,680 --> 00:20:24,940 dan kami melakukan hal ini, dan jadi apa yang dapat Anda lakukan adalah Anda bisa mengatakan 303 00:20:24,940 --> 00:20:30,490 apakah perangkat melakukan sesuatu yang pada dasarnya memata-matai saya atau pelacakan saya? 304 00:20:30,490 --> 00:20:33,360 Dan aku punya beberapa contoh di sini pada iPhone. 305 00:20:33,360 --> 00:20:41,440 Contoh pertama ini adalah bagaimana untuk mengakses UUID di telepon. 306 00:20:41,440 --> 00:20:47,060 Ini sebenarnya sesuatu yang Apple baru saja dilarang untuk aplikasi baru, 307 00:20:47,060 --> 00:20:52,540 tapi aplikasi lama yang Anda mungkin telah berjalan pada ponsel Anda masih bisa melakukan hal ini, 308 00:20:52,540 --> 00:20:56,500 dan sehingga pengenal unik dapat digunakan untuk melacak Anda 309 00:20:56,500 --> 00:21:00,440 di berbagai aplikasi yang berbeda. 310 00:21:00,440 --> 00:21:07,180 >> Pada Android, saya memiliki contoh di sini untuk mendapatkan lokasi perangkat. 311 00:21:07,180 --> 00:21:10,310 Anda dapat melihat bahwa jika panggilan API ada aplikasi yang pelacakan, 312 00:21:10,310 --> 00:21:15,000 dan Anda dapat melihat apakah itu mendapatkan lokasi yang baik atau lokasi kasar. 313 00:21:15,000 --> 00:21:18,860 Dan kemudian pada bagian bawah di sini, saya memiliki contoh bagaimana di BlackBerry 314 00:21:18,860 --> 00:21:25,130 aplikasi dapat mengakses pesan email dalam kotak masuk Anda. 315 00:21:25,130 --> 00:21:27,660 Ini adalah jenis hal yang dapat Anda memeriksa untuk melihat 316 00:21:27,660 --> 00:21:32,360 jika app adalah melakukan hal-hal. 317 00:21:32,360 --> 00:21:38,320 Kategori kedua besar perilaku berbahaya, dan ini mungkin adalah kategori terbesar sekarang, 318 00:21:38,320 --> 00:21:43,950 adalah panggilan yang tidak sah, pesan teks SMS premium yang tidak sah 319 00:21:43,950 --> 00:21:46,080 atau pembayaran yang tidak sah. 320 00:21:46,080 --> 00:21:48,930 Hal lain yang unik tentang ponsel 321 00:21:48,930 --> 00:21:52,700 adalah perangkat dihubungkan ke rekening penagihan, 322 00:21:52,700 --> 00:21:55,960 dan ketika aktivitas terjadi di telepon 323 00:21:55,960 --> 00:21:58,510 dapat menciptakan biaya. 324 00:21:58,510 --> 00:22:00,700 Anda dapat membeli barang-barang melalui telepon, 325 00:22:00,700 --> 00:22:04,390 dan ketika Anda mengirim pesan teks SMS premium Anda benar-benar memberikan uang 326 00:22:04,390 --> 00:22:11,590 kepada pemegang rekening nomor telepon di sisi lain. 327 00:22:11,590 --> 00:22:17,420 Ini dibentuk untuk mendapatkan harga saham atau mendapatkan horoskop harian Anda atau hal-hal lain, 328 00:22:17,420 --> 00:22:21,680 namun mereka dapat diatur untuk memesan produk dengan mengirimkan teks SMS. 329 00:22:21,680 --> 00:22:26,970 Orang-orang memberikan uang kepada Palang Merah dengan mengirimkan pesan teks. 330 00:22:26,970 --> 00:22:30,650 Anda dapat memberikan $ 10 seperti itu. 331 00:22:30,650 --> 00:22:34,190 >> Para penyerang, apa yang mereka lakukan adalah mereka mendirikan 332 00:22:34,190 --> 00:22:38,750 rekening di luar negeri, dan mereka menanamkan dalam malware 333 00:22:38,750 --> 00:22:42,840 bahwa ponsel akan mengirim pesan teks SMS premium, 334 00:22:42,840 --> 00:22:47,700 mengatakan, beberapa kali sehari, dan pada akhir bulan Anda sadar bahwa Anda telah menghabiskan 335 00:22:47,700 --> 00:22:52,090 puluhan atau bahkan mungkin ratusan dolar, dan mereka pergi dengan uang. 336 00:22:52,090 --> 00:22:57,280 Hal ini menjadi sangat buruk bahwa ini adalah hal pertama yang Android 337 00:22:57,280 --> 00:23:00,760 Marketplace atau Google tempat-itu Marketplace Android pada saat itu, 338 00:23:00,760 --> 00:23:04,430 dan sekarang Google Play-hal pertama yang Google mulai memeriksa. 339 00:23:04,430 --> 00:23:08,700 Ketika Google mulai mendistribusikan aplikasi Android di toko aplikasi mereka 340 00:23:08,700 --> 00:23:11,350 mereka mengatakan mereka tidak akan memeriksa untuk apa pun. 341 00:23:11,350 --> 00:23:15,630 Kami akan menarik aplikasi setelah kami telah diberitahu mereka telah melanggar persyaratan layanan kami, 342 00:23:15,630 --> 00:23:17,520 tapi kami tidak akan memeriksa untuk apa pun. 343 00:23:17,520 --> 00:23:24,350 Nah, sekitar satu tahun yang lalu itu menjadi sangat buruk dengan SMS premium ini malware pesan teks 344 00:23:24,350 --> 00:23:28,030 bahwa ini adalah hal pertama yang mereka mulai memeriksa. 345 00:23:28,030 --> 00:23:31,770 Jika sebuah aplikasi dapat mengirim pesan teks SMS 346 00:23:31,770 --> 00:23:34,750 mereka lebih lanjut secara manual memeriksa aplikasi tersebut. 347 00:23:34,750 --> 00:23:38,770 Mereka mencari API yang menyebutnya, 348 00:23:38,770 --> 00:23:40,580 dan sekarang sejak saat itu Google telah diperluas, 349 00:23:40,580 --> 00:23:46,900 tapi ini adalah hal pertama yang mereka mulai mencari. 350 00:23:46,900 --> 00:23:50,690 >> Beberapa aplikasi lain yang melakukan beberapa pesan teks SMS, 351 00:23:50,690 --> 00:23:56,980 ini Qicsomos Android, saya kira itu disebut. 352 00:23:56,980 --> 00:24:02,670 Ada peristiwa saat ini di mobile di mana CarrierIQ ini keluar 353 00:24:02,670 --> 00:24:07,720 sebagai spyware memakai perangkat oleh operator, 354 00:24:07,720 --> 00:24:10,820 sehingga orang ingin tahu apakah ponsel mereka rentan terhadap hal ini, 355 00:24:10,820 --> 00:24:13,890 dan ini adalah sebuah aplikasi gratis yang diuji itu. 356 00:24:13,890 --> 00:24:17,520 Nah, tentu saja, apa aplikasi ini lakukan adalah itu mengirim pesan teks SMS premium, 357 00:24:17,520 --> 00:24:20,090 sehingga dengan menguji untuk melihat apakah Anda terinfeksi dengan spyware 358 00:24:20,090 --> 00:24:24,930 Anda dimuat malware ke perangkat Anda. 359 00:24:24,930 --> 00:24:27,310 Kami melihat hal yang sama terjadi pada yang terakhir Super Bowl. 360 00:24:27,310 --> 00:24:33,180 Ada versi palsu dari permainan sepak bola Madden 361 00:24:33,180 --> 00:24:38,320 yang mengirim pesan teks SMS premium. 362 00:24:38,320 --> 00:24:45,750 Ini benar-benar mencoba untuk membuat jaringan bot juga pada perangkat. 363 00:24:45,750 --> 00:24:48,090 Di sini saya memiliki beberapa contoh. 364 00:24:48,090 --> 00:24:52,640 Yang cukup menarik, Apple cukup pintar, 365 00:24:52,640 --> 00:24:58,470 dan mereka tidak memungkinkan aplikasi untuk mengirim pesan teks SMS sama sekali. 366 00:24:58,470 --> 00:25:00,350 Tidak ada app bisa melakukannya. 367 00:25:00,350 --> 00:25:03,530 Itu cara yang bagus untuk menyingkirkan seluruh kelas kerentanan, 368 00:25:03,530 --> 00:25:09,040 tetapi pada Android Anda bisa melakukannya, dan tentu saja, pada BlackBerry Anda dapat melakukannya juga. 369 00:25:09,040 --> 00:25:13,060 Sungguh menarik bahwa pada BlackBerry Anda butuhkan adalah izin internet 370 00:25:13,060 --> 00:25:18,370 untuk mengirim pesan teks SMS. 371 00:25:18,370 --> 00:25:21,580 >> Hal lain yang benar-benar bahwa kita mencari 372 00:25:21,580 --> 00:25:24,780 ketika kita sedang mencari untuk melihat apakah ada sesuatu yang berbahaya hanya jenis 373 00:25:24,780 --> 00:25:28,100 aktivitas jaringan yang tidak sah, seperti melihat aktivitas jaringan 374 00:25:28,100 --> 00:25:31,570 app yang seharusnya harus memiliki fungsinya, 375 00:25:31,570 --> 00:25:35,380 dan melihat kegiatan ini jaringan lainnya. 376 00:25:35,380 --> 00:25:43,380 Mungkin sebuah aplikasi, untuk bekerja, harus mendapatkan data melalui HTTP, 377 00:25:43,380 --> 00:25:47,500 tetapi jika itu melakukan hal-hal di atas email atau SMS atau Bluetooth atau sesuatu seperti itu 378 00:25:47,500 --> 00:25:52,890 sekarang aplikasi yang berpotensi menjadi berbahaya, jadi ini adalah hal lain Anda dapat memeriksa untuk. 379 00:25:52,890 --> 00:26:00,430 Dan pada slide ini di sini saya memiliki beberapa contoh dari itu. 380 00:26:00,430 --> 00:26:05,950 Hal lain yang menarik kita lihat dengan malware terjadi kembali pada tahun 2009, 381 00:26:05,950 --> 00:26:07,600 dan itu terjadi di jalan besar. 382 00:26:07,600 --> 00:26:11,390 Saya tidak tahu apakah itu terjadi begitu banyak sejak saat itu, tapi itu sebuah aplikasi 383 00:26:11,390 --> 00:26:15,140 yang menyamar aplikasi lain. 384 00:26:15,140 --> 00:26:21,700 Ada satu set aplikasi, dan itu dijuluki serangan 09Droid, 385 00:26:21,700 --> 00:26:29,770 dan seseorang memutuskan bahwa ada banyak kecil, regional, bank menengah 386 00:26:29,770 --> 00:26:32,260 yang tidak memiliki aplikasi perbankan online, 387 00:26:32,260 --> 00:26:36,870 jadi apa yang mereka lakukan adalah mereka dibangun sekitar 50 aplikasi perbankan online 388 00:26:36,870 --> 00:26:39,410 bahwa semua yang mereka lakukan adalah mengambil nama pengguna dan kata sandi 389 00:26:39,410 --> 00:26:42,190 dan mengarahkan Anda ke situs web. 390 00:26:42,190 --> 00:26:47,470 Dan mereka menaruh semua ini di Google Marketplace, 391 00:26:47,470 --> 00:26:51,530 di Pasar Android, dan ketika seseorang mencari untuk melihat apakah bank mereka 392 00:26:51,530 --> 00:26:56,000 memiliki aplikasi mereka akan menemukan aplikasi palsu, 393 00:26:56,000 --> 00:27:01,230 yang dikumpulkan identitasnya dan kemudian diarahkan ke situs web mereka. 394 00:27:01,230 --> 00:27:06,640 Cara yang ini benar-benar menjadi-aplikasi berada di sana selama beberapa minggu, 395 00:27:06,640 --> 00:27:09,050 dan ada ribuan dan ribuan download. 396 00:27:09,050 --> 00:27:12,910 >> Cara ini terungkap adalah seseorang sedang mengalami masalah 397 00:27:12,910 --> 00:27:15,740 dengan salah satu aplikasi, dan mereka disebut bank mereka, 398 00:27:15,740 --> 00:27:18,390 dan mereka disebut garis dukungan pelanggan bank mereka dan berkata, 399 00:27:18,390 --> 00:27:21,180 "Saya mengalami masalah dengan aplikasi mobile banking Anda." 400 00:27:21,180 --> 00:27:23,460 "Bisakah Anda membantu saya keluar?" 401 00:27:23,460 --> 00:27:26,540 Dan mereka berkata, "Kami tidak memiliki aplikasi mobile banking." 402 00:27:26,540 --> 00:27:28,120 Itu mulai penyelidikan. 403 00:27:28,120 --> 00:27:31,200 Bank yang disebut Google, dan kemudian Google tampak dan berkata, 404 00:27:31,200 --> 00:27:37,220 "Wow, penulis yang sama telah menulis 50 aplikasi perbankan," dan membawa mereka semua turun. 405 00:27:37,220 --> 00:27:43,410 Namun yang pasti ini bisa terjadi lagi. 406 00:27:43,410 --> 00:27:51,790 Ada daftar semua bank yang berbeda di sini 407 00:27:51,790 --> 00:27:55,870 yang merupakan bagian dari penipuan ini. 408 00:27:55,870 --> 00:28:02,050 Hal lain sebuah aplikasi yang dapat Anda lakukan adalah saat ini UI dari aplikasi lain. 409 00:28:02,050 --> 00:28:06,430 Sementara itu berjalan bisa pop up Facebook UI. 410 00:28:06,430 --> 00:28:09,540 Ia mengatakan Anda harus memasukkan nama pengguna dan password untuk melanjutkan 411 00:28:09,540 --> 00:28:15,090 atau memasang setiap nama pengguna dan password UI untuk sebuah situs web 412 00:28:15,090 --> 00:28:18,420 bahwa mungkin pengguna menggunakan hanya untuk mencoba untuk mengelabui pengguna 413 00:28:18,420 --> 00:28:21,340 ke dalam menempatkan identitasnya masuk 414 00:28:21,340 --> 00:28:25,590 Ini benar-benar lurus sejajar dari serangan phishing email 415 00:28:25,590 --> 00:28:28,210 di mana seseorang mengirim pesan email 416 00:28:28,210 --> 00:28:33,050 dan memberi Anda pada dasarnya UI palsu untuk situs Web 417 00:28:33,050 --> 00:28:37,320 bahwa Anda memiliki akses ke. 418 00:28:37,320 --> 00:28:41,590 >> Hal lain yang kami cari dalam kode berbahaya adalah modifikasi sistem. 419 00:28:41,590 --> 00:28:48,160 Anda dapat mencari semua panggilan API yang membutuhkan hak istimewa root 420 00:28:48,160 --> 00:28:50,870 untuk mengeksekusi dengan benar. 421 00:28:50,870 --> 00:28:56,160 Mengubah perangkat web proxy yang akan menjadi sesuatu yang aplikasi 422 00:28:56,160 --> 00:28:59,530 seharusnya tidak mampu melakukannya. 423 00:28:59,530 --> 00:29:03,030 Tetapi jika aplikasi memiliki kode di sana untuk melakukan itu 424 00:29:03,030 --> 00:29:05,960 Anda tahu bahwa itu mungkin aplikasi berbahaya 425 00:29:05,960 --> 00:29:09,620 atau sangat sangat mungkin menjadi aplikasi berbahaya, 426 00:29:09,620 --> 00:29:13,910 dan jadi apa yang akan terjadi adalah bahwa aplikasi akan memiliki beberapa cara untuk meningkat hak istimewa. 427 00:29:13,910 --> 00:29:17,200 Ini akan memiliki beberapa hak istimewa eskalasi mengeksploitasi 428 00:29:17,200 --> 00:29:20,730 dalam aplikasi, dan kemudian setelah itu meningkat hak istimewa 429 00:29:20,730 --> 00:29:23,800 itu akan melakukan modifikasi sistem tersebut. 430 00:29:23,800 --> 00:29:28,010 Anda dapat menemukan malware yang memiliki hak istimewa eskalasi 431 00:29:28,010 --> 00:29:32,550 di dalamnya bahkan tanpa mengetahui bagaimana eskalasi hak istimewa 432 00:29:32,550 --> 00:29:37,960 mengeksploitasi yang akan terjadi, dan itu bagus, cara mudah 433 00:29:37,960 --> 00:29:41,220 untuk mencari malware. 434 00:29:41,220 --> 00:29:46,030 DroidDream mungkin adalah bagian yang paling terkenal dari malware Android. 435 00:29:46,030 --> 00:29:50,530 Saya pikir itu mempengaruhi sekitar 250.000 pengguna selama beberapa hari 436 00:29:50,530 --> 00:29:52,810 sebelum ditemukan. 437 00:29:52,810 --> 00:29:56,890 Mereka repackaged 50 aplikasi palsu, 438 00:29:56,890 --> 00:30:00,370 menempatkan mereka di toko app Android, 439 00:30:00,370 --> 00:30:10,940 dan pada dasarnya dulu kode jailbreak Android untuk meningkatkan hak-hak istimewa 440 00:30:10,940 --> 00:30:16,380 dan kemudian menginstal perintah dan mengontrol dan mengubah semua korban 441 00:30:16,380 --> 00:30:20,690 menjadi jaring bot, tapi Anda bisa mendeteksi ini 442 00:30:20,690 --> 00:30:24,170 jika Anda memindai aplikasi dan hanya mencari 443 00:30:24,170 --> 00:30:32,230 API panggilan yang izin root dibutuhkan untuk menjalankan dengan benar. 444 00:30:32,230 --> 00:30:40,150 >> Dan ada contoh di sini saya memiliki yang mengubah proxy, 445 00:30:40,150 --> 00:30:46,380 dan ini benar-benar hanya tersedia di Android. 446 00:30:46,380 --> 00:30:49,070 Anda dapat melihat Aku memberimu banyak contoh di Android 447 00:30:49,070 --> 00:30:53,990 karena ini adalah di mana ekosistem malware yang paling aktif adalah 448 00:30:53,990 --> 00:30:58,690 karena itu benar-benar mudah bagi penyerang untuk mendapatkan kode berbahaya 449 00:30:58,690 --> 00:31:01,470 ke Android Marketplace. 450 00:31:01,470 --> 00:31:06,480 Ini tidak begitu mudah untuk melakukannya di Apple App Store 451 00:31:06,480 --> 00:31:10,250 karena Apple membutuhkan pengembang untuk mengidentifikasi diri 452 00:31:10,250 --> 00:31:12,790 dan menandatangani kode. 453 00:31:12,790 --> 00:31:20,340 Mereka benar-benar memeriksa siapa Anda, dan Apple sebenarnya meneliti aplikasi. 454 00:31:20,340 --> 00:31:27,450 Kami tidak melihat banyak malware yang benar di mana perangkat semakin terancam. 455 00:31:27,450 --> 00:31:32,250 Aku akan berbicara tentang beberapa contoh di mana itu benar-benar privasi yang semakin terancam, 456 00:31:32,250 --> 00:31:38,460 dan itulah apa yang sebenarnya terjadi pada perangkat Apple. 457 00:31:38,460 --> 00:31:44,090 Hal lain untuk mencari kode berbahaya, kode berisiko dalam perangkat 458 00:31:44,090 --> 00:31:50,300 adalah logika atau bom waktu, dan bom waktu mungkin 459 00:31:50,300 --> 00:31:53,370 jauh lebih mudah untuk mencari dari bom logika. 460 00:31:53,370 --> 00:31:57,030 Tapi dengan bom waktu, yang dapat Anda lakukan adalah Anda dapat mencari 461 00:31:57,030 --> 00:32:04,760 tempat di kode di mana waktu diuji atau waktu mutlak mencari 462 00:32:04,760 --> 00:32:08,190 sebelum fungsionalitas tertentu di app terjadi. 463 00:32:08,190 --> 00:32:14,200 Dan ini bisa dilakukan untuk menyembunyikan aktivitas yang dari pengguna, 464 00:32:14,200 --> 00:32:17,510 sehingga terjadi larut malam. 465 00:32:17,510 --> 00:32:24,350 DroidDream melakukan semua aktivitasnya 11:00-08:00 waktu setempat 466 00:32:24,350 --> 00:32:30,650 untuk mencoba melakukannya sementara pengguna tidak mungkin menggunakan perangkat mereka. 467 00:32:30,650 --> 00:32:38,680 >> Alasan lain untuk melakukan ini adalah jika orang yang menggunakan analisis perilaku aplikasi, 468 00:32:38,680 --> 00:32:43,430 menjalankan aplikasi di bak pasir untuk melihat apa perilaku aplikasi tersebut, 469 00:32:43,430 --> 00:32:51,090 mereka dapat menggunakan logika berbasis waktu untuk melakukan kegiatan 470 00:32:51,090 --> 00:32:54,640 ketika aplikasi tidak di kotak pasir. 471 00:32:54,640 --> 00:33:01,520 Sebagai contoh, sebuah toko aplikasi seperti Apple 472 00:33:01,520 --> 00:33:07,940 menjalankan aplikasi, tetapi mereka mungkin tidak menjalankan setiap aplikasi untuk, katakanlah, 30 hari 473 00:33:07,940 --> 00:33:10,550 sebelum menyetujui hal itu, sehingga Anda dapat menempatkan 474 00:33:10,550 --> 00:33:14,120 logika dalam aplikasi Anda yang mengatakan, oke, hanya melakukan hal yang buruk 475 00:33:14,120 --> 00:33:20,490 setelah 30 hari telah berlalu atau setelah 30 hari setelah mempublikasikan tanggal aplikasi, 476 00:33:20,490 --> 00:33:27,020 dan yang dapat membantu menyembunyikan kode berbahaya dari orang-orang memeriksa untuk itu. 477 00:33:27,020 --> 00:33:30,050 Jika perusahaan anti-virus menjalankan hal-hal dalam kotak pasir 478 00:33:30,050 --> 00:33:36,370 atau toko aplikasi sendiri ini dapat membantu 479 00:33:36,370 --> 00:33:39,260 menyembunyikan bahwa dari pemeriksaan itu. 480 00:33:39,260 --> 00:33:43,020 Sekarang, sisi lain dari itu adalah sangat mudah untuk menemukan dengan analisis statis, 481 00:33:43,020 --> 00:33:46,170 jadi sebenarnya memeriksa kode Anda dapat mencari semua tempat 482 00:33:46,170 --> 00:33:54,010 dimana aplikasi tes waktu dan memeriksa seperti itu. 483 00:33:54,010 --> 00:33:58,850 Dan di sini saya memiliki beberapa contoh tentang ini 3 platform yang berbeda 484 00:33:58,850 --> 00:34:05,640 bagaimana waktu dapat diperiksa oleh pembuat app 485 00:34:05,640 --> 00:34:10,520 sehingga Anda tahu apa yang harus dicari jika Anda memeriksa aplikasi statis. 486 00:34:10,520 --> 00:34:14,570 >> Aku hanya pergi melalui sejumlah kegiatan berbahaya yang berbeda 487 00:34:14,570 --> 00:34:18,969 bahwa kita telah melihat di alam liar, tetapi mana yang paling umum? 488 00:34:18,969 --> 00:34:23,940 Bahwa penelitian yang sama dari North Carolina State Ponsel Genome Project 489 00:34:23,940 --> 00:34:28,560 menerbitkan beberapa data, dan ada dasarnya 4 daerah 490 00:34:28,560 --> 00:34:32,850 bahwa mereka melihat di mana ada banyak kegiatan. 491 00:34:32,850 --> 00:34:35,370 37% dari aplikasi melakukan eskalasi hak istimewa, 492 00:34:35,370 --> 00:34:38,429 sehingga mereka memiliki beberapa jenis kode jailbreak di sana 493 00:34:38,429 --> 00:34:42,070 di mana mereka mencoba untuk meningkatkan hak istimewa sehingga mereka bisa 494 00:34:42,070 --> 00:34:48,360 jangan perintah API berjalan sebagai sistem operasi. 495 00:34:48,360 --> 00:34:52,520 45% dari aplikasi di luar sana melakukan SMS premium, 496 00:34:52,520 --> 00:34:57,260 jadi itu persentase besar yang sedang mencoba untuk langsung menghasilkan uang. 497 00:34:57,260 --> 00:35:02,640 93% melakukan remote control, sehingga mereka mencoba untuk membuat jaring bot, jaring bot mobile. 498 00:35:02,640 --> 00:35:08,990 Dan 45% dipanen informasi identitas 499 00:35:08,990 --> 00:35:16,230 seperti nomor telepon, UUIDs, lokasi GPS, account pengguna, 500 00:35:16,230 --> 00:35:22,870 dan ini menambahkan hingga lebih dari 100 karena kebanyakan malware mencoba untuk melakukan beberapa hal-hal ini. 501 00:35:22,870 --> 00:35:27,070 >> Aku akan beralih ke babak kedua dan berbicara tentang kerentanan kode. 502 00:35:27,070 --> 00:35:29,480 Ini adalah paruh kedua aktivitas berisiko. 503 00:35:29,480 --> 00:35:33,450 Di sinilah pada dasarnya pengembang membuat kesalahan. 504 00:35:33,450 --> 00:35:37,210 Seorang pengembang yang sah menulis sebuah aplikasi yang sah 505 00:35:37,210 --> 00:35:41,830 membuat kesalahan atau tidak mengetahui risiko dari platform mobile. 506 00:35:41,830 --> 00:35:44,780 Mereka hanya tidak tahu bagaimana untuk membuat aplikasi mobile yang aman, 507 00:35:44,780 --> 00:35:47,700 atau kadang-kadang pengembang tidak peduli menempatkan pengguna pada risiko. 508 00:35:47,700 --> 00:35:50,850 Kadang-kadang bagian dari model bisnis mereka mungkin 509 00:35:50,850 --> 00:35:54,610 panen informasi pribadi pengguna. 510 00:35:54,610 --> 00:35:58,090 Itu semacam kategori lainnya, dan itulah mengapa beberapa dari ini berbahaya 511 00:35:58,090 --> 00:36:03,200 dibandingkan mulai sah berdarah lebih karena ada perbedaan pendapat 512 00:36:03,200 --> 00:36:10,440 antara apa yang pengguna ingin dan apa yang user menganggap berisiko 513 00:36:10,440 --> 00:36:13,050 dan apa pengembang aplikasi menganggap berisiko. 514 00:36:13,050 --> 00:36:18,380 Tentu saja, itu bukan data aplikasi pengembang dalam banyak kasus. 515 00:36:18,380 --> 00:36:22,030 >> Dan akhirnya, cara lain ini terjadi adalah pengembang mungkin link di 516 00:36:22,030 --> 00:36:28,600 shared library yang memiliki kerentanan atau perilaku berisiko ini di dalamnya 517 00:36:28,600 --> 00:36:32,480 tanpa sepengetahuan mereka. 518 00:36:32,480 --> 00:36:37,060 Kategori pertama adalah kebocoran data sensitif, 519 00:36:37,060 --> 00:36:40,030 dan ini adalah ketika app mengumpulkan informasi 520 00:36:40,030 --> 00:36:44,980 seperti lokasi, informasi buku alamat, informasi pemilik 521 00:36:44,980 --> 00:36:48,000 dan mengirimkan dari perangkat. 522 00:36:48,000 --> 00:36:53,050 Dan setelah itu off perangkat, kita tidak tahu apa yang terjadi dengan informasi tersebut. 523 00:36:53,050 --> 00:36:57,170 Hal ini dapat disimpan insecurely oleh pengembang aplikasi. 524 00:36:57,170 --> 00:37:02,070 Kami telah melihat pengembang aplikasi bisa dikompromikan, 525 00:37:02,070 --> 00:37:05,820 dan data yang mereka menyimpan akan diambil. 526 00:37:05,820 --> 00:37:10,970 Hal ini terjadi beberapa bulan yang lalu untuk pengembang di Florida 527 00:37:10,970 --> 00:37:21,660 di mana sejumlah besar-itu iPad UUIDs dan nama perangkat 528 00:37:21,660 --> 00:37:25,270 bocor karena seseorang, saya pikir itu anonim, 529 00:37:25,270 --> 00:37:29,460 mengaku melakukan hal ini, masuk ke server ini pengembang 530 00:37:29,460 --> 00:37:34,920 dan mencuri jutaan iPad UUIDs 531 00:37:34,920 --> 00:37:37,390 dan nama komputer. 532 00:37:37,390 --> 00:37:40,260 Bukan informasi yang paling berisiko, 533 00:37:40,260 --> 00:37:46,820 tapi bagaimana jika itu adalah penyimpanan nama pengguna dan password 534 00:37:46,820 --> 00:37:48,170 dan alamat rumah? 535 00:37:48,170 --> 00:37:51,100 Ada banyak aplikasi yang menyimpan informasi semacam itu. 536 00:37:51,100 --> 00:37:53,230 Risiko ini ada. 537 00:37:53,230 --> 00:37:56,620 >> Hal lain yang bisa terjadi adalah jika pengembang tidak mengurus 538 00:37:56,620 --> 00:38:01,370 untuk mengamankan saluran data, dan itu kerentanan besar lain saya akan berbicara tentang, 539 00:38:01,370 --> 00:38:05,160 Data yang sedang dikirim dalam jelas. 540 00:38:05,160 --> 00:38:09,040 Jika pengguna pada publik jaringan Wi-Fi 541 00:38:09,040 --> 00:38:12,330 atau seseorang mengendus internet di suatu tempat 542 00:38:12,330 --> 00:38:19,260 sepanjang jalan data yang sedang terkena. 543 00:38:19,260 --> 00:38:23,790 Salah satu kasus yang sangat terkenal dari kebocoran informasi ini terjadi dengan Pandora, 544 00:38:23,790 --> 00:38:27,250 dan ini adalah sesuatu yang kita meneliti di Veracode. 545 00:38:27,250 --> 00:38:33,200 Kami mendengar bahwa ada-saya pikir itu adalah Federal Trade Commission 546 00:38:33,200 --> 00:38:35,310 investigasi terjadi dengan Pandora. 547 00:38:35,310 --> 00:38:39,830 Kami berkata, "Apa yang terjadi di sana? Mari kita mulai menggali ke dalam aplikasi Pandora." 548 00:38:39,830 --> 00:38:46,690 Dan apa yang kita ditentukan adalah aplikasi Pandora dikumpulkan 549 00:38:46,690 --> 00:38:51,270 jenis kelamin dan usia Anda, 550 00:38:51,270 --> 00:38:56,660 dan juga diakses lokasi GPS Anda, dan aplikasi Pandora 551 00:38:56,660 --> 00:39:00,200 melakukan ini untuk apa yang mereka katakan sebagai alasan yang sah. 552 00:39:00,200 --> 00:39:05,360 Musik yang mereka bermain-Pandora adalah aplikasi-streaming musik 553 00:39:05,360 --> 00:39:07,530 musik mereka bermain hanya berlisensi di Amerika Serikat, 554 00:39:07,530 --> 00:39:13,020 sehingga mereka harus memeriksa untuk mematuhi perjanjian lisensi mereka bahwa mereka telah 555 00:39:13,020 --> 00:39:17,240 untuk musik bahwa pengguna berada di Amerika Serikat. 556 00:39:17,240 --> 00:39:25,070 Mereka juga ingin mematuhi penasehat orangtua 557 00:39:25,070 --> 00:39:33,790 sekitar bahasa orang dewasa dalam musik, 558 00:39:33,790 --> 00:39:37,500 dan jadi ini adalah program sukarela, tetapi mereka ingin mematuhi itu 559 00:39:37,500 --> 00:39:43,010 dan tidak bermain lirik eksplisit bagi anak-anak 13 dan di bawah. 560 00:39:43,010 --> 00:39:46,280 >> Mereka memiliki alasan yang sah untuk mengumpulkan data ini. 561 00:39:46,280 --> 00:39:49,160 App mereka memiliki izin untuk melakukannya. 562 00:39:49,160 --> 00:39:52,000 Pengguna pikir ini adalah sah. Tapi apa yang terjadi? 563 00:39:52,000 --> 00:39:55,810 Mereka terkait dalam 3 atau 4 perpustakaan iklan yang berbeda. 564 00:39:55,810 --> 00:39:59,140 Sekarang semua dari semua tiba-tiba perpustakaan iklan ini 565 00:39:59,140 --> 00:40:02,970 mendapatkan akses ke informasi yang sama. 566 00:40:02,970 --> 00:40:05,830 Perpustakaan iklan, jika Anda melihat kode dalam perpustakaan iklan 567 00:40:05,830 --> 00:40:08,430 apa yang mereka lakukan adalah setiap perpustakaan ad mengatakan 568 00:40:08,430 --> 00:40:11,340 "Apakah aplikasi saya memiliki izin untuk mendapatkan lokasi GPS?" 569 00:40:11,340 --> 00:40:14,890 "Oh, itu? Oke, katakan padaku lokasi GPS." 570 00:40:14,890 --> 00:40:16,620 Setiap perpustakaan iklan tunggal melakukan itu, 571 00:40:16,620 --> 00:40:19,740 dan jika app tidak memiliki izin GPS 572 00:40:19,740 --> 00:40:23,460 tidak akan bisa mendapatkannya, tetapi jika tidak, ia akan mendapatkannya. 573 00:40:23,460 --> 00:40:26,240 Di sinilah model bisnis perpustakaan iklan 574 00:40:26,240 --> 00:40:31,160 menentang privasi pengguna. 575 00:40:31,160 --> 00:40:34,980 Dan sudah ada penelitian di luar sana yang akan mengatakan jika Anda tahu usia 576 00:40:34,980 --> 00:40:38,430 seseorang dan Anda tahu lokasi mereka 577 00:40:38,430 --> 00:40:42,530 di mana mereka tidur di malam hari, karena Anda memiliki koordinat GPS mereka 578 00:40:42,530 --> 00:40:46,030 sementara mereka mungkin sedang tidur, Anda tahu persis siapa orang tersebut 579 00:40:46,030 --> 00:40:50,230 karena Anda dapat menentukan anggota rumah tangga yang orang itu. 580 00:40:50,230 --> 00:40:54,780 Benar-benar ini adalah mengidentifikasi ke pengiklan 581 00:40:54,780 --> 00:40:59,530 persis siapa Anda, dan sepertinya itu sah. 582 00:40:59,530 --> 00:41:02,800 Aku hanya ingin streaming musik saya, dan ini adalah satu-satunya cara untuk mendapatkannya. 583 00:41:02,800 --> 00:41:05,370 >> Yah, kita terkena ini. 584 00:41:05,370 --> 00:41:08,030 Kami menulis ini di beberapa posting blog, 585 00:41:08,030 --> 00:41:13,280 dan ternyata bahwa seseorang dari majalah Rolling Stone 586 00:41:13,280 --> 00:41:18,810 membaca salah satu posting blog kita dan menulis blog mereka sendiri di Rolling Stone tentang hal itu, 587 00:41:18,810 --> 00:41:22,120 dan keesokan harinya Pandora pikir itu ide yang baik 588 00:41:22,120 --> 00:41:27,600 untuk menghapus perpustakaan iklan dari aplikasi mereka. 589 00:41:27,600 --> 00:41:31,270 Sejauh yang saya tahu mereka hanya-mereka harus dipuji. 590 00:41:31,270 --> 00:41:35,770 Saya pikir mereka hanya jenis freemium dari aplikasi yang telah melakukan ini. 591 00:41:35,770 --> 00:41:38,660 Semua aplikasi freemium lain memiliki perilaku yang sama, 592 00:41:38,660 --> 00:41:41,780 jadi Anda harus berpikir tentang apa jenis data Anda memberikan 593 00:41:41,780 --> 00:41:48,330 aplikasi freemium karena itu semua akan pengiklan. 594 00:41:48,330 --> 00:41:53,390 Praetorian juga melakukan studi tentang shared library dan berkata, 595 00:41:53,390 --> 00:41:57,100 "Mari kita lihat apa yang shared library adalah perpustakaan terbagi atas," dan ini adalah data. 596 00:41:57,100 --> 00:41:59,420 >> Mereka menganalisis 53.000 aplikasi, 597 00:41:59,420 --> 00:42:01,900 dan nomor 1 shared library adalah Admob. 598 00:42:01,900 --> 00:42:06,060 Itu benar-benar di 38% dari aplikasi di luar sana, 599 00:42:06,060 --> 00:42:08,800 sehingga 38% dari aplikasi yang Anda gunakan 600 00:42:08,800 --> 00:42:11,250 cenderung panen informasi pribadi Anda 601 00:42:11,250 --> 00:42:16,650 dan mengirimkannya ke jaringan iklan. 602 00:42:16,650 --> 00:42:19,350 Apache dan Android adalah 8% dan 6%, 603 00:42:19,350 --> 00:42:22,960 dan kemudian ini yang lain turun di bagian bawah, Google Ads, kebingungan, 604 00:42:22,960 --> 00:42:26,600 Mob Kota dan Millenial Media, 605 00:42:26,600 --> 00:42:30,500 ini semua perusahaan iklan, dan kemudian, cukup menarik, 606 00:42:30,500 --> 00:42:33,500 4% terkait di perpustakaan Facebook 607 00:42:33,500 --> 00:42:38,870 mungkin untuk melakukan otentikasi melalui Facebook 608 00:42:38,870 --> 00:42:40,810 sehingga aplikasi bisa mengotentikasi Facebook. 609 00:42:40,810 --> 00:42:44,660 Tapi itu juga berarti korporasi Facebook mengontrol kode 610 00:42:44,660 --> 00:42:49,010 yang berjalan di 4% dari aplikasi mobile Android di luar sana, 611 00:42:49,010 --> 00:42:53,490 dan mereka memiliki akses ke semua data bahwa aplikasi yang memiliki izin untuk mendapatkan. 612 00:42:53,490 --> 00:42:57,170 Facebook pada dasarnya mencoba untuk menjual ruang iklan. 613 00:42:57,170 --> 00:43:00,120 Itulah model bisnis mereka. 614 00:43:00,120 --> 00:43:02,920 >> Jika Anda melihat seluruh ekosistem ini dengan izin ini 615 00:43:02,920 --> 00:43:07,740 dan shared library Anda mulai melihat bahwa 616 00:43:07,740 --> 00:43:13,850 Anda memiliki banyak risiko dalam aplikasi dianggap sah. 617 00:43:13,850 --> 00:43:19,360 Hal serupa yang sama yang terjadi dengan Pandora 618 00:43:19,360 --> 00:43:22,340 terjadi dengan sebuah aplikasi bernama Path, 619 00:43:22,340 --> 00:43:27,660 dan Jalur pikir mereka sedang membantu, ramah pengembang. 620 00:43:27,660 --> 00:43:32,160 Mereka hanya mencoba untuk memberikan pengalaman pengguna yang luar biasa, 621 00:43:32,160 --> 00:43:37,810 dan ternyata bahwa tanpa dorongan pengguna atau memberitahu pengguna apa- 622 00:43:37,810 --> 00:43:40,400 dan ini terjadi pada iPhone dan Android, 623 00:43:40,400 --> 00:43:44,420 Pandora app pada iPhone dan Android- 624 00:43:44,420 --> 00:43:48,890 bahwa aplikasi jalan itu meraih seluruh buku alamat Anda 625 00:43:48,890 --> 00:43:52,830 dan meng-upload ke jalan hanya saat Anda menginstal dan menjalankan aplikasi, 626 00:43:52,830 --> 00:43:55,840 dan mereka tidak memberitahu Anda tentang hal ini. 627 00:43:55,840 --> 00:43:58,750 Mereka pikir itu benar-benar membantu bagi Anda 628 00:43:58,750 --> 00:44:04,040 untuk dapat berbagi dengan semua orang dalam buku alamat Anda 629 00:44:04,040 --> 00:44:06,920 bahwa Anda menggunakan aplikasi Path. 630 00:44:06,920 --> 00:44:09,490 >> Yah, jelas Jalur pikir ini adalah besar untuk perusahaan mereka. 631 00:44:09,490 --> 00:44:13,510 Tidak begitu besar kepada pengguna. 632 00:44:13,510 --> 00:44:19,020 Anda harus berpikir bahwa itu satu hal apakah mungkin seorang remaja 633 00:44:19,020 --> 00:44:23,700 menggunakan aplikasi ini dan puluhan teman-teman mereka ada di sana, 634 00:44:23,700 --> 00:44:29,360 tetapi bagaimana jika itu adalah CEO dari sebuah perusahaan yang menginstal Jalur 635 00:44:29,360 --> 00:44:33,170 dan kemudian semua buku alamat seluruh mereka tiba-tiba ada di atas sana? 636 00:44:33,170 --> 00:44:38,310 Anda akan mendapatkan banyak informasi kontak yang mungkin berharga 637 00:44:38,310 --> 00:44:40,920 untuk banyak orang. 638 00:44:40,920 --> 00:44:44,500 Seorang reporter dari New York Times, Anda mungkin bisa mendapatkan nomor telepon 639 00:44:44,500 --> 00:44:47,380 untuk presiden ex dari buku alamat mereka, 640 00:44:47,380 --> 00:44:54,780 jadi jelas banyak informasi sensitif akan ditransfer dengan sesuatu seperti ini. 641 00:44:54,780 --> 00:44:58,090 Ada seperti flap besar tentang ini jalan yang meminta maaf. 642 00:44:58,090 --> 00:45:01,610 Mereka mengubah aplikasi mereka, dan bahkan berdampak Apple. 643 00:45:01,610 --> 00:45:06,950 Apple mengatakan, "Kita akan memaksa vendor aplikasi untuk mendorong pengguna 644 00:45:06,950 --> 00:45:12,650 jika mereka akan mengumpulkan seluruh buku alamat mereka. " 645 00:45:12,650 --> 00:45:15,360 >> Sepertinya apa yang terjadi di sini adalah 646 00:45:15,360 --> 00:45:19,430 ketika ada satu pelanggaran privasi besar dan itu membuat pers 647 00:45:19,430 --> 00:45:21,680 kita melihat perubahan di luar sana. 648 00:45:21,680 --> 00:45:23,230 Tapi tentu saja, ada hal-hal lain di luar sana. 649 00:45:23,230 --> 00:45:27,440 Aplikasi LinkedIn panen entri kalender, 650 00:45:27,440 --> 00:45:34,530 tetapi Apple tidak membuat pengguna akan diminta tentang itu. 651 00:45:34,530 --> 00:45:38,030 Entri kalender dapat memiliki informasi sensitif di dalamnya juga. 652 00:45:38,030 --> 00:45:40,000 Di mana Anda akan menarik garis? 653 00:45:40,000 --> 00:45:43,960 Ini benar-benar jenis tempat berkembang 654 00:45:43,960 --> 00:45:47,640 di mana ada benar-benar tidak ada standar yang baik di luar sana 655 00:45:47,640 --> 00:45:51,990 bagi pengguna untuk memahami ketika informasi mereka akan berada pada risiko 656 00:45:51,990 --> 00:45:57,820 dan ketika mereka akan tahu itu diambil. 657 00:45:57,820 --> 00:46:03,040 Kami menulis sebuah aplikasi di Veracode disebut Adios, 658 00:46:03,040 --> 00:46:08,350 dan pada dasarnya itu memungkinkan Anda untuk mengarahkan aplikasi di direktori iTunes Anda 659 00:46:08,350 --> 00:46:12,550 dan melihat semua aplikasi yang sedang memanen buku alamat lengkap Anda. 660 00:46:12,550 --> 00:46:19,760 Dan seperti yang Anda lihat pada daftar ini di sini, Angry Birds, 661 00:46:19,760 --> 00:46:21,590 AIM, AroundMe. 662 00:46:21,590 --> 00:46:24,050 Mengapa Angry Birds membutuhkan buku alamat Anda? 663 00:46:24,050 --> 00:46:29,160 Aku tidak tahu, tapi itu entah bagaimana. 664 00:46:29,160 --> 00:46:32,310 >> Ini adalah sesuatu yang banyak, banyak aplikasi lakukan. 665 00:46:32,310 --> 00:46:34,780 Anda dapat memeriksa kode untuk ini. 666 00:46:34,780 --> 00:46:38,660 Ada API yang didefinisikan dengan baik untuk iPhone, Android dan BlackBerry 667 00:46:38,660 --> 00:46:42,120 untuk mendapatkan buku alamat. 668 00:46:42,120 --> 00:46:48,520 Anda dapat benar-benar mudah memeriksa untuk ini, dan ini adalah apa yang kita lakukan dalam aplikasi Adios kami. 669 00:46:48,520 --> 00:46:52,320 Kategori berikutnya, tidak aman Sensitif Penyimpanan Data, 670 00:46:52,320 --> 00:46:55,670 adalah sesuatu di mana pengembang mengambil sesuatu seperti pin atau nomor rekening 671 00:46:55,670 --> 00:46:58,530 atau kata sandi dan menyimpannya di jelas pada perangkat. 672 00:46:58,530 --> 00:47:02,310 Lebih buruk lagi, mereka mungkin menyimpannya di suatu daerah di telepon 673 00:47:02,310 --> 00:47:06,820 yang dapat diakses secara global, seperti kartu SD. 674 00:47:06,820 --> 00:47:11,320 Anda melihat hal ini lebih sering pada Android karena Android memungkinkan untuk kartu SD. 675 00:47:11,320 --> 00:47:13,200 Perangkat iPhone tidak. 676 00:47:13,200 --> 00:47:17,900 Tapi kami bahkan melihat hal ini terjadi dalam aplikasi CitiGroup. 677 00:47:17,900 --> 00:47:25,450 Aplikasi perbankan online mereka menyimpan nomor rekening insecurely, 678 00:47:25,450 --> 00:47:28,120 hanya di jelas, jadi jika Anda kehilangan perangkat Anda, 679 00:47:28,120 --> 00:47:30,670 dasarnya Anda kehilangan rekening bank Anda. 680 00:47:30,670 --> 00:47:36,000 Ini adalah mengapa saya pribadi tidak melakukan transaksi perbankan pada iPhone. 681 00:47:36,000 --> 00:47:43,710 Saya pikir itu terlalu berisiko sekarang untuk melakukan jenis-jenis kegiatan. 682 00:47:43,710 --> 00:47:45,950 >> Skype melakukan hal yang sama. 683 00:47:45,950 --> 00:47:49,870 Skype, tentu saja, memiliki saldo rekening, nama pengguna dan kata sandi 684 00:47:49,870 --> 00:47:51,030 yang mengakses keseimbangan itu. 685 00:47:51,030 --> 00:48:00,080 Mereka menyimpan semua informasi di jelas pada perangkat mobile. 686 00:48:00,080 --> 00:48:05,760 Saya punya beberapa contoh di sini menciptakan file 687 00:48:05,760 --> 00:48:10,310 yang tidak memiliki izin yang tepat atau menulis ke disk 688 00:48:10,310 --> 00:48:17,260 dan tidak memiliki enkripsi apapun terjadi untuk itu. 689 00:48:17,260 --> 00:48:20,190 Daerah ini berikutnya, tidak aman Sensitif Transmisi Data, 690 00:48:20,190 --> 00:48:24,450 Saya sudah menyinggung hal ini beberapa kali, dan karena Wi-Fi publik 691 00:48:24,450 --> 00:48:27,770 ini adalah sesuatu yang benar-benar apps perlu melakukan, 692 00:48:27,770 --> 00:48:31,250 dan ini mungkin apa yang kita lihat salah paling. 693 00:48:31,250 --> 00:48:34,920 Aku akan mengatakan-benar, saya pikir saya memiliki data aktual, 694 00:48:34,920 --> 00:48:38,120 tapi itu dekat dengan setengah aplikasi mobile 695 00:48:38,120 --> 00:48:41,780 mengacaukan melakukan SSL. 696 00:48:41,780 --> 00:48:43,910 Mereka hanya tidak menggunakan API dengan benar. 697 00:48:43,910 --> 00:48:47,970 Maksudku, semua yang Anda harus lakukan adalah mengikuti petunjuk dan menggunakan API, 698 00:48:47,970 --> 00:48:54,720 tetapi mereka melakukan hal-hal seperti tidak memeriksa apakah ada sertifikat yang tidak valid di ujung lain, 699 00:48:54,720 --> 00:49:02,120 tidak memeriksa apakah ujung yang lain mencoba untuk melakukan serangan protokol downgrade. 700 00:49:02,120 --> 00:49:07,200 >> Para pengembang, mereka ingin mendapatkan checkbox mereka, kan? 701 00:49:07,200 --> 00:49:11,910 Kebutuhan mereka adalah untuk menggunakan ini untuk menjual. Mereka telah menggunakan ini untuk menjual. 702 00:49:11,910 --> 00:49:14,800 Persyaratannya adalah untuk tidak menggunakan ini untuk menjual aman, 703 00:49:14,800 --> 00:49:19,680 dan jadi ini adalah mengapa semua aplikasi yang menggunakan SSL untuk mengamankan data 704 00:49:19,680 --> 00:49:23,470 seperti itu sedang dikirim dari perangkat benar-benar harus diperiksa 705 00:49:23,470 --> 00:49:28,950 memastikan bahwa telah diterapkan dengan benar. 706 00:49:28,950 --> 00:49:32,850 Dan di sini saya memiliki beberapa contoh di mana Anda dapat melihat aplikasi 707 00:49:32,850 --> 00:49:37,400 mungkin menggunakan HTTP bukan HTTPS. 708 00:49:37,400 --> 00:49:40,510 Dalam beberapa kasus aplikasi akan jatuh kembali ke HTTP 709 00:49:40,510 --> 00:49:44,250 jika HTTPS tidak bekerja. 710 00:49:44,250 --> 00:49:49,070 Aku punya panggilan lain di sini di Android di mana mereka telah menonaktifkan cek sertifikat, 711 00:49:49,070 --> 00:49:51,700 sehingga serangan man-in-the-middle bisa terjadi. 712 00:49:51,700 --> 00:49:56,370 Sertifikat yang tidak valid akan diterima. 713 00:49:56,370 --> 00:50:01,920 Ini semua adalah kasus di mana penyerang akan bisa mendapatkan pada 714 00:50:01,920 --> 00:50:07,150 sama koneksi Wi-Fi sebagai pengguna dan mengakses semua data 715 00:50:07,150 --> 00:50:11,650 yang sedang dikirim melalui internet. 716 00:50:11,650 --> 00:50:15,970 >> Dan akhirnya, kategori terakhir yang saya miliki di sini adalah password hardcoded dan kunci. 717 00:50:15,970 --> 00:50:21,470 Kami benar-benar melihat banyak pengembang menggunakan gaya pengkodean yang sama 718 00:50:21,470 --> 00:50:25,900 bahwa yang mereka lakukan ketika mereka sedang membangun aplikasi web server 719 00:50:25,900 --> 00:50:29,700 jadi mereka membangun sebuah server aplikasi Java, dan mereka hardcoding kunci. 720 00:50:29,700 --> 00:50:31,940 Nah, ketika Anda sedang membangun aplikasi server, yeah, 721 00:50:31,940 --> 00:50:34,240 hardcoding kuncinya adalah bukan ide yang baik. 722 00:50:34,240 --> 00:50:36,290 Itu membuat sulit untuk berubah. 723 00:50:36,290 --> 00:50:40,700 Tapi itu tidak begitu buruk pada sisi server karena yang memiliki akses ke sisi server? 724 00:50:40,700 --> 00:50:43,140 Hanya administrator. 725 00:50:43,140 --> 00:50:48,100 Tetapi jika Anda mengambil kode yang sama dan Anda menuangkannya ke aplikasi mobile 726 00:50:48,100 --> 00:50:52,550 sekarang setiap orang yang memiliki bahwa aplikasi mobile memiliki akses ke kunci hardcoded, 727 00:50:52,550 --> 00:50:56,380 dan kita benar-benar melihat ini banyak kali, dan saya memiliki beberapa statistik 728 00:50:56,380 --> 00:51:00,920 pada seberapa sering kita melihat hal ini terjadi. 729 00:51:00,920 --> 00:51:04,940 Sebenarnya itu dalam contoh kode yang MasterCard diterbitkan 730 00:51:04,940 --> 00:51:06,850 tentang cara menggunakan layanan mereka. 731 00:51:06,850 --> 00:51:11,860 Contoh kode menunjukkan bagaimana Anda hanya akan mengambil password 732 00:51:11,860 --> 00:51:14,850 dan memasukkannya ke dalam string hardcoded di sana, 733 00:51:14,850 --> 00:51:19,380 dan kita tahu bagaimana pengembang suka copy dan paste potongan kode 734 00:51:19,380 --> 00:51:22,360 ketika mereka mencoba untuk melakukan sesuatu, sehingga Anda copy dan paste potongan kode 735 00:51:22,360 --> 00:51:28,450 bahwa mereka berikan sebagai contoh kode, dan Anda memiliki aplikasi yang tidak aman. 736 00:51:28,450 --> 00:51:31,490 >> Dan di sini kita memiliki beberapa contoh. 737 00:51:31,490 --> 00:51:35,840 Pertama ini adalah salah satu kita melihat banyak di mana mereka hardcode 738 00:51:35,840 --> 00:51:40,510 data langsung ke URL yang akan dikirim. 739 00:51:40,510 --> 00:51:45,120 Kadang-kadang kita melihat string password = password. 740 00:51:45,120 --> 00:51:49,060 Itu cukup mudah untuk mendeteksi, atau string password di BlackBerry dan Android. 741 00:51:49,060 --> 00:51:53,680 Ini sebenarnya cukup mudah untuk memeriksa karena hampir selalu 742 00:51:53,680 --> 00:51:57,030 nama-nama pengembang variabel yang memegang password 743 00:51:57,030 --> 00:52:02,290 beberapa variasi password. 744 00:52:02,290 --> 00:52:05,200 Saya menyebutkan bahwa kami melakukan analisis statis di Veracode, 745 00:52:05,200 --> 00:52:11,790 jadi kami telah menganalisis beberapa ratus aplikasi Android dan iOS. 746 00:52:11,790 --> 00:52:15,160 Kami telah membangun model penuh dengan mereka, dan kami mampu untuk memindai mereka 747 00:52:15,160 --> 00:52:19,280 untuk kerentanan yang berbeda, terutama kerentanan yang saya bicarakan, 748 00:52:19,280 --> 00:52:21,050 dan saya memiliki beberapa data di sini. 749 00:52:21,050 --> 00:52:24,320 68,5% dari aplikasi Android kita melihat 750 00:52:24,320 --> 00:52:28,590 telah melanggar kode kriptografi, 751 00:52:28,590 --> 00:52:33,240 yang bagi kita, kita tidak dapat mendeteksi jika Anda membuat rutin kripto Anda sendiri, 752 00:52:33,240 --> 00:52:38,980 Bukankah itu itu adalah ide yang baik, tapi ini benar-benar menggunakan API yang diterbitkan 753 00:52:38,980 --> 00:52:42,530 yang berada di platform tetapi melakukannya sedemikian rupa 754 00:52:42,530 --> 00:52:46,680 bahwa kripto akan rentan, 68,5. 755 00:52:46,680 --> 00:52:49,870 Dan ini adalah untuk orang-orang yang mengirimkan aplikasi mereka sebenarnya karena 756 00:52:49,870 --> 00:52:53,730 mereka pikir itu ide yang baik untuk melakukan pengujian keamanan. 757 00:52:53,730 --> 00:52:56,960 Ini sudah orang-orang yang mungkin berpikir aman, 758 00:52:56,960 --> 00:52:59,540 jadi mungkin bahkan lebih buruk. 759 00:52:59,540 --> 00:53:02,690 >> Saya tidak berbicara tentang kontrol injeksi line feed. 760 00:53:02,690 --> 00:53:07,640 Ini sesuatu yang kita memeriksa, tapi itu bukan yang berisiko masalah. 761 00:53:07,640 --> 00:53:15,390 Kebocoran informasi, ini adalah di mana data sensitif sedang dikirim dari perangkat. 762 00:53:15,390 --> 00:53:19,270 Kami menemukan bahwa dalam 40% dari aplikasi. 763 00:53:19,270 --> 00:53:23,540 Waktu dan negara, yaitu ras masalah jenis kondisi, biasanya cukup sulit untuk mengeksploitasi, 764 00:53:23,540 --> 00:53:26,170 jadi saya tidak bicara tentang itu, tapi kami melihat itu. 765 00:53:26,170 --> 00:53:28,750 23% memiliki masalah injeksi SQL. 766 00:53:28,750 --> 00:53:32,020 Banyak orang tidak tahu bahwa banyak aplikasi 767 00:53:32,020 --> 00:53:35,880 menggunakan database SQL kecil kecil di belakang mereka untuk menyimpan data. 768 00:53:35,880 --> 00:53:40,430 Nah, jika data yang Anda meraih melalui jaringan 769 00:53:40,430 --> 00:53:43,800 memiliki string serangan injeksi SQL di dalamnya 770 00:53:43,800 --> 00:53:45,970 seseorang bisa kompromi perangkat melalui itu, 771 00:53:45,970 --> 00:53:49,800 dan jadi saya pikir kami menemukan sekitar 40% dari aplikasi web memiliki masalah ini, 772 00:53:49,800 --> 00:53:52,840 yang merupakan masalah epidemi besar. 773 00:53:52,840 --> 00:53:55,740 Kami menemukan 23% dari waktu dalam aplikasi mobile 774 00:53:55,740 --> 00:54:02,030 dan itu mungkin karena banyak aplikasi web lebih menggunakan SQL dari mobile. 775 00:54:02,030 --> 00:54:05,580 >> Dan kemudian kita masih melihat beberapa cross-site scripting, masalah otorisasi, 776 00:54:05,580 --> 00:54:09,400 dan kemudian manajemen credential, itulah di mana Anda memiliki password hardcoded Anda. 777 00:54:09,400 --> 00:54:14,540 Pada 5% dari aplikasi yang kita lihat itu. 778 00:54:14,540 --> 00:54:17,970 Dan kemudian kita memiliki beberapa data pada iOS. 779 00:54:17,970 --> 00:54:20,180 81% memiliki masalah penanganan error. 780 00:54:20,180 --> 00:54:23,130 Ini lebih dari masalah kualitas kode, 781 00:54:23,130 --> 00:54:28,010 tetapi 67% memiliki masalah kriptografi, sehingga tidak seburuk Android. 782 00:54:28,010 --> 00:54:32,440 Mungkin API yang sedikit lebih mudah, kode contoh sedikit lebih baik pada iOS. 783 00:54:32,440 --> 00:54:35,420 Tapi tetap persentase yang sangat tinggi. 784 00:54:35,420 --> 00:54:39,040 Kami memiliki 54% dengan kebocoran informasi, 785 00:54:39,040 --> 00:54:42,080 sekitar 30% dengan kesalahan manajemen buffer. 786 00:54:42,080 --> 00:54:45,930 Itulah tempat di mana ada berpotensi menjadi masalah korupsi memori. 787 00:54:45,930 --> 00:54:50,350 Ternyata itu tidak banyak masalah bagi eksploitasi 788 00:54:50,350 --> 00:54:56,450 pada iOS karena semua kode harus ditandatangani, 789 00:54:56,450 --> 00:55:02,210 jadi sulit bagi penyerang untuk mengeksekusi kode arbitrary pada iOS. 790 00:55:02,210 --> 00:55:07,880 Kualitas kode, direktori traversal, tapi kemudian kredensial manajemen di sini di 14,6%, 791 00:55:07,880 --> 00:55:09,250 jadi lebih buruk dari pada Android. 792 00:55:09,250 --> 00:55:13,240 Kami memiliki orang-orang tidak menangani password dengan benar. 793 00:55:13,240 --> 00:55:15,790 Dan kemudian kesalahan numerik dan buffer overflow, 794 00:55:15,790 --> 00:55:22,680 mereka lebih akan menjadi masalah kualitas kode pada iOS. 795 00:55:22,680 --> 00:55:26,110 >> Itu bagi presentasi saya. Saya tidak tahu apakah kita kehabisan waktu atau tidak. 796 00:55:26,110 --> 00:55:29,540 Saya tidak tahu apakah ada pertanyaan. 797 00:55:29,540 --> 00:55:33,220 [Pria] Sebuah pertanyaan singkat sekitar fragmentasi dan pasar Android. 798 00:55:33,220 --> 00:55:36,240 Apel setidaknya memiliki patch. 799 00:55:36,240 --> 00:55:40,780 Mereka melakukan pekerjaan yang baik mendapatkan itu di luar sana sedangkan kurang begitu dalam ruang Android. 800 00:55:40,780 --> 00:55:44,280 Anda hampir perlu jailbreak telepon Anda untuk tinggal saat ini 801 00:55:44,280 --> 00:55:46,660 dengan rilis saat ini dari Android. 802 00:55:46,660 --> 00:55:50,960 Ya, itu masalah besar dan jadi jika Anda berpikir tentang- 803 00:55:50,960 --> 00:55:52,280 [Pria] Mengapa kamu tidak bisa mengulanginya? 804 00:55:52,280 --> 00:55:55,610 >> Oh, benar, jadi pertanyaannya adalah bagaimana fragmentasi 805 00:55:55,610 --> 00:56:00,410 dari sistem operasi pada platform Android? 806 00:56:00,410 --> 00:56:05,890 Bagaimana yang mempengaruhi resiko dari alat-alat? 807 00:56:05,890 --> 00:56:09,700 Dan itu benar-benar merupakan masalah besar karena apa yang terjadi adalah 808 00:56:09,700 --> 00:56:15,110 perangkat yang lebih tua, ketika seseorang datang dengan jailbreak untuk perangkat tersebut, 809 00:56:15,110 --> 00:56:19,960 dasarnya itu eskalasi hak istimewa, dan sampai sistem operasi diperbarui 810 00:56:19,960 --> 00:56:25,350 malware kemudian dapat menggunakan kerentanan yang untuk benar-benar kompromi perangkat, 811 00:56:25,350 --> 00:56:30,200 dan apa yang kita lihat pada Android adalah dalam rangka untuk mendapatkan sistem operasi baru 812 00:56:30,200 --> 00:56:34,690 Google telah mengeluarkan sistem operasi, dan kemudian produsen hardware 813 00:56:34,690 --> 00:56:39,390 harus menyesuaikan, dan kemudian operator harus menyesuaikan dan mengirimkannya. 814 00:56:39,390 --> 00:56:43,070 Anda pada dasarnya memiliki 3 bagian yang bergerak di sini, 815 00:56:43,070 --> 00:56:47,210 dan itu mematikan bahwa operator tidak peduli, 816 00:56:47,210 --> 00:56:50,400 dan produsen perangkat keras tidak peduli, dan Google tidak dorongan mereka cukup 817 00:56:50,400 --> 00:56:54,430 untuk melakukan sesuatu, jadi pada dasarnya lebih dari setengah dari perangkat luar sana 818 00:56:54,430 --> 00:57:00,590 memiliki sistem operasi yang memiliki kerentanan eskalasi hak istimewa ini di dalamnya, 819 00:57:00,590 --> 00:57:08,440 dan jadi jika Anda mendapatkan malware pada perangkat Android Anda itu jauh lebih dari masalah. 820 00:57:08,440 --> 00:57:10,350 >> Oke, terima kasih banyak. 821 00:57:10,350 --> 00:57:12,310 [Tepuk tangan] 822 00:57:12,310 --> 00:57:14,310 [CS50.TV]