1 00:00:00,000 --> 00:00:02,610 [Powered by Google Translate] [講座] [衛冕設備:移動應用安全性的背後] 2 00:00:02,610 --> 00:00:04,380 [克里斯Wysopal] [哈佛大學] 3 00:00:04,380 --> 00:00:07,830 [這是CS50。] [CS50.TV] 4 00:00:07,830 --> 00:00:10,360 >> 下午好。我的名字是克里斯Wysopal。 5 00:00:10,360 --> 00:00:13,360 我Veracode的首席技術官和共同創始人。 6 00:00:13,360 --> 00:00:15,880 Veracode的是應用程序的安全公司。 7 00:00:15,880 --> 00:00:18,230 我們測試各種不同的應用, 8 00:00:18,230 --> 00:00:25,060 我今天要談的是移動應用程序的安全性。 9 00:00:25,060 --> 00:00:28,630 我的背景是我一直在做安全研究 10 00:00:28,630 --> 00:00:31,970 很長一段時間,大概只要人。 11 00:00:31,970 --> 00:00:35,000 我在90年代中期開始, 12 00:00:35,000 --> 00:00:37,370 這一段時間,這是相當有趣的,因為 13 00:00:37,370 --> 00:00:39,220 我們有一個模式的改變,在90年代中期。 14 00:00:39,220 --> 00:00:43,520 突然每個人的電腦連接到互聯網, 15 00:00:43,520 --> 00:00:46,550 然後我們有Web應用程序的開端, 16 00:00:46,550 --> 00:00:49,330 這就是我把重點放在了很多,然後。 17 00:00:49,330 --> 00:00:51,160 這很有趣。 18 00:00:51,160 --> 00:00:53,930 現在我們有另一個範式變化發生計算, 19 00:00:53,930 --> 00:00:58,710 這是移動應用的轉變。 20 00:00:58,710 --> 00:01:03,680 >> 我覺得它是一種類似的時間,那麼它是在90年代後期 21 00:01:03,680 --> 00:01:07,650 當我們在調查Web應用程序和發現缺陷,如 22 00:01:07,650 --> 00:01:11,800 會話管理錯誤和SQL注入 23 00:01:11,800 --> 00:01:14,940 它真的不存在之前,突然他們無處不在 24 00:01:14,940 --> 00:01:19,360 在Web應用程序,而現在,我花了很多的時間 25 00:01:19,360 --> 00:01:27,950 正在尋找在移動應用和看發生了什麼事在野外。 26 00:01:27,950 --> 00:01:32,060 移動應用程序真的要佔主導地位的計算平台, 27 00:01:32,060 --> 00:01:35,060 所以我們真的需要花費大量的時間,如果你在安防行業 28 00:01:35,060 --> 00:01:39,280 專注於Web應用程序。 29 00:01:39,280 --> 00:01:43,420 有29億移動應用程序下載在2011年。 30 00:01:43,420 --> 00:01:47,920 它的預測是,到2014年的76億的應用程序。 31 00:01:47,920 --> 00:01:54,040 有686萬台設備,今年將要購買的, 32 00:01:54,040 --> 00:01:57,060 所以這是那裡的人都打算做 33 00:01:57,060 --> 00:01:59,600  他們的大部分客戶端計算向前發展。 34 00:01:59,600 --> 00:02:04,220 >> 我是說富達投資公司的副總裁。 35 00:02:04,220 --> 00:02:08,780 幾個月前,他說,他們只是看到了更多的流量 36 00:02:08,780 --> 00:02:12,610 從他們的客戶群做金融交易 37 00:02:12,610 --> 00:02:16,230 在他們的移動應用比在他們的網站上, 38 00:02:16,230 --> 00:02:20,610 所以在過去一直是常見的用於Web 39 00:02:20,610 --> 00:02:23,800 檢查您的股票行情,您的投資組合管理, 40 00:02:23,800 --> 00:02:28,060 我們實際上看到,在2012年切換 41 00:02:28,060 --> 00:02:30,960 在移動平台上更佔優勢。 42 00:02:30,960 --> 00:02:34,530 當然,如果有任何犯罪活動, 43 00:02:34,530 --> 00:02:38,900 任何惡意活動,它要開始把重點放在移動平台 44 00:02:38,900 --> 00:02:44,210 隨著時間的推移,人們切換。 45 00:02:44,210 --> 00:02:48,320 如果你看看移動平台 46 00:02:48,320 --> 00:02:54,380 來看看它的平台的風險是非常有用的,把它分解成不同的層, 47 00:02:54,380 --> 00:02:59,010 就像你會做一台台式電腦, 48 00:02:59,010 --> 00:03:02,860 你想想不同的層,軟件,操作系統, 49 00:03:02,860 --> 00:03:07,730 網絡層,硬件層,當然,還有所有這些層上的漏洞。 50 00:03:07,730 --> 00:03:10,510 >> 同樣的事情發生在移動。 51 00:03:10,510 --> 00:03:14,880 但是,移動設備,它似乎,這些層更糟。 52 00:03:14,880 --> 00:03:19,840 為一體,網絡層移動的問題 53 00:03:19,840 --> 00:03:25,650 因為很多人在辦公室或在家 54 00:03:25,650 --> 00:03:30,780 有線連接,或者他們有安全的Wi-Fi連接, 55 00:03:30,780 --> 00:03:36,530 有很多的移動設備,你顯然是家庭以外的 56 00:03:36,530 --> 00:03:40,520 或者在辦公室以外的很多,而且如果你使用的Wi-Fi 57 00:03:40,520 --> 00:03:42,820 你可能正在使用不安全的Wi-Fi連接, 58 00:03:42,820 --> 00:03:45,570 的東西,這是一個公共Wi-Fi連接, 59 00:03:45,570 --> 00:03:48,840 所以,我們認為有關移動應用程序時,我們必須考慮到 60 00:03:48,840 --> 00:03:53,770 這些應用程序的網絡環境是風險 61 00:03:53,770 --> 00:03:57,640 正在使用Wi-Fi時。 62 00:03:57,640 --> 00:04:02,410 而當我進入更多的移動應用風險 63 00:04:02,410 --> 00:04:04,910 你就會明白為什麼這是更重要的。 64 00:04:04,910 --> 00:04:09,710 移動設備在硬件水平上均存在風險。 65 00:04:09,710 --> 00:04:11,670 這是一個正在進行的研究領域。 66 00:04:11,670 --> 00:04:15,910 人們稱這些寬帶攻擊或基帶攻擊 67 00:04:15,910 --> 00:04:21,870 你攻擊的固件在電台收聽。 68 00:04:21,870 --> 00:04:25,430 >> 這些是真正可怕的攻擊,因為 69 00:04:25,430 --> 00:04:27,280 用戶不必做任何事情。 70 00:04:27,280 --> 00:04:30,760 在射頻範圍內,你可以打很多的設備 71 00:04:30,760 --> 00:04:36,690 一次,好像每當這個研究冒泡 72 00:04:36,690 --> 00:04:40,750 迅速被歸類 73 00:04:40,750 --> 00:04:46,600 人一舉左右,並說,“在這裡,告訴我們這件事,並請停止談論它。” 74 00:04:46,600 --> 00:04:49,460 還有一些研究將在寬帶領域, 75 00:04:49,460 --> 00:04:51,980 但它似乎是非常噓噓。 76 00:04:51,980 --> 00:04:56,910 我覺得更重要的是一個民族國家的類型研究是怎麼回事。 77 00:04:56,910 --> 00:05:02,140 一個活躍的研究領域,雖然是操作系統層, 78 00:05:02,140 --> 00:05:08,910 再次強調,這是比桌面計算世界不同 79 00:05:08,910 --> 00:05:14,840 因為在移動領域,你有這些球隊的人叫越獄, 80 00:05:14,840 --> 00:05:18,670 越獄不同於常規漏洞的研究人員。 81 00:05:18,670 --> 00:05:21,970 他們試圖找到在操作系統中的漏洞, 82 00:05:21,970 --> 00:05:27,000 但,他們正試圖找到漏洞的原因是不是 83 00:05:27,000 --> 00:05:31,810 闖入別人的機器和妥協。 84 00:05:31,810 --> 00:05:34,280 這是打入自己的電腦。 85 00:05:34,280 --> 00:05:38,820 >> 他們想打入自己的手機,修改自己的移動操作系統 86 00:05:38,820 --> 00:05:41,050 使他們能夠運行的應用程序,他們的選擇 87 00:05:41,050 --> 00:05:44,510 具有完全的管理權限和改變的事情, 88 00:05:44,510 --> 00:05:49,050 他們不希望這告訴供應商。 89 00:05:49,050 --> 00:05:52,960 他們不喜歡一名安全研究人員,這是一個白帽子安全研究員 90 00:05:52,960 --> 00:05:56,600 這是怎麼回事,做負責任的披露,並告訴它的供應商。 91 00:05:56,600 --> 00:06:01,270 他們想要做的這項研究,他們希望實際發布 92 00:06:01,270 --> 00:06:06,400 一個漏洞或一個rootkit或越獄的代碼, 93 00:06:06,400 --> 00:06:10,010 他們想要做的戰略,像右後 94 00:06:10,010 --> 00:06:13,570 廠商會在新的操作系統。 95 00:06:13,570 --> 00:06:16,350 你有這樣的敵對關係 96 00:06:16,350 --> 00:06:19,000 在移動操作系統級別的漏洞, 97 00:06:19,000 --> 00:06:23,150 我覺得這是挺有意思的,我們看到它的一個地方 98 00:06:23,150 --> 00:06:29,210 它使得有好公佈的漏洞的代碼在那裡 99 00:06:29,210 --> 00:06:31,750 內核級漏洞, 100 00:06:31,750 --> 00:06:35,040 我們已經看到了那些實際使用惡意軟件編寫者。 101 00:06:35,040 --> 00:06:38,450 它比PC世界有一點點不同。 102 00:06:38,450 --> 00:06:42,530 然後最後一層是最佳的層,應用層。 103 00:06:42,530 --> 00:06:45,250 這就是我要說說今天。 104 00:06:45,250 --> 00:06:48,970 >> 存在其他層,其他層發揮到它 105 00:06:48,970 --> 00:06:53,310 但我主要是要說說這是怎麼回事,在應用層 106 00:06:53,310 --> 00:06:55,560 在沙箱中運行的代碼。 107 00:06:55,560 --> 00:06:58,670 它不具有管理權限。 108 00:06:58,670 --> 00:07:02,170 它使用API​​的設備, 109 00:07:02,170 --> 00:07:06,970 但仍然,很多的惡意活動,很多風險可以發生在該層 110 00:07:06,970 --> 00:07:09,220 因為這層,所有的信息。 111 00:07:09,220 --> 00:07:12,330 應用程序可以訪問所有的設備上的信息 112 00:07:12,330 --> 00:07:15,390 如果他們有正確的權限, 113 00:07:15,390 --> 00:07:17,540 他們可以訪問的移動設備上的不同傳感器之間的 114 00:07:17,540 --> 00:07:23,950 GPS傳感器,麥克風,攝像頭,你有什麼。 115 00:07:23,950 --> 00:07:27,380 即使我們只談論在應用層 116 00:07:27,380 --> 00:07:33,700 我們有一個很大的風險。 117 00:07:33,700 --> 00:07:38,450 其他的事情,不同的移動環境 118 00:07:38,450 --> 00:07:45,060 是所有操作系統的球員,無論是黑莓或Android 119 00:07:45,060 --> 00:07:53,410 或iOS或Windows手機,他們都有一個細粒度的權限模型, 120 00:07:53,410 --> 00:07:56,990 ,這是一個到操作系統中內置的方式,他們 121 00:07:56,990 --> 00:08:01,230 的想法,這不是你認為的風險。 122 00:08:01,230 --> 00:08:04,550 即使你把所有的聯繫人在那裡,你的所有個人信息, 123 00:08:04,550 --> 00:08:09,080 你有你的照片,你有你的位置在那裡, 124 00:08:09,080 --> 00:08:14,820 你存儲在那裡為自動登錄,您的銀行銷,它是安全的,因為 125 00:08:14,820 --> 00:08:19,430 應用程序必須有一定的權限來獲得某些部分 126 00:08:19,430 --> 00:08:25,080 的移動設備上的信息,並且用戶具有帶有 127 00:08:25,080 --> 00:08:29,230 這些權限和說沒關係。 128 00:08:29,230 --> 00:08:32,590 >> 它的問題是,用戶總是說沒事。 129 00:08:32,590 --> 00:08:35,240 作為安全性的人,我知道,你可以提示用戶, 130 00:08:35,240 --> 00:08:40,100 說真的不好的事情將要發生,你希望它發生嗎? 131 00:08:40,100 --> 00:08:44,680 如果他們在匆忙或有什麼東西真的很誘人,在另一側, 132 00:08:44,680 --> 00:08:47,760 就像一場將要被安裝的,他們一直在等待, 133 00:08:47,760 --> 00:08:50,860 他們打算按一下好。 134 00:08:50,860 --> 00:08:56,630 這就是為什麼我說我的幻燈片上,在這裡只是讓我一扔鳥已經在豬, 135 00:08:56,630 --> 00:09:03,150 你可以看到幻燈片上,這裡有黑莓權限“框中的例子。 136 00:09:03,150 --> 00:09:05,990 它說:“請設置黑莓手機旅遊應用程序的權限 137 00:09:05,990 --> 00:09:09,720 後,點擊下面的按鈕,用戶基本上只是會說 138 00:09:09,720 --> 00:09:12,240 設置權限和保存。 139 00:09:12,240 --> 00:09:18,010 這裡有一個Android的提示,它顯示, 140 00:09:18,010 --> 00:09:20,260 它實際上把的東西,幾乎看起來像一個警告。 141 00:09:20,260 --> 00:09:25,090 它有一種屈服的跡象,有說網絡通信,電話, 142 00:09:25,090 --> 00:09:28,120 但用戶要點擊安裝,正確的嗎? 143 00:09:28,120 --> 00:09:32,940 然後蘋果是完全無害的。 144 00:09:32,940 --> 00:09:34,300 它不提供任何形式的警告。 145 00:09:34,300 --> 00:09:37,380 這只是蘋果想用您的當前位置。 146 00:09:37,380 --> 00:09:39,670 當然,你要點擊沒關係。 147 00:09:39,670 --> 00:09:42,260 >> 有這種細粒度的權限模型, 148 00:09:42,260 --> 00:09:45,890 和應用程序必須有一個manifest文件中聲明 149 00:09:45,890 --> 00:09:49,410 瀏覽顯示給用戶的權限所需要的,這將 150 00:09:49,410 --> 00:09:53,480 用戶將不得不說,我授予這些權限。 151 00:09:53,480 --> 00:09:55,080 但是,說實話。 152 00:09:55,080 --> 00:09:58,400 用戶總是說沒事。 153 00:09:58,400 --> 00:10:04,460 讓我們來快速瀏覽一下權限,這些應用程序所要求的 154 00:10:04,460 --> 00:10:06,850 一些有權限。 155 00:10:06,850 --> 00:10:09,950 這家公司的Praetorian去年做了一個調查 156 00:10:09,950 --> 00:10:14,170 53,000的應用程序在Android市場和第三方市場分析, 157 00:10:14,170 --> 00:10:16,770 所以這是所有的Andr​​oid。 158 00:10:16,770 --> 00:10:19,670 和平均應用程序要求的權限。 159 00:10:19,670 --> 00:10:23,370 一些應用程序要求117權限, 160 00:10:23,370 --> 00:10:27,480 所以很明顯,這些都是非常細粒度的用戶了解和方式過於複雜 161 00:10:27,480 --> 00:10:31,600 如果他們提出了與此應用程序需要117權限。 162 00:10:31,600 --> 00:10:37,270 這就像是長達45頁的最終用戶許可協議。 163 00:10:37,270 --> 00:10:40,240 也許不久後,他們將有一個選項,它就像 164 00:10:40,240 --> 00:10:43,100 打印的權限,並給我發電子郵件。 165 00:10:43,100 --> 00:10:45,480 >> 但是,如果你看一下一些有趣的頂級權限 166 00:10:45,480 --> 00:10:50,840 24%的應用程序,他們下載了53,000 167 00:10:50,840 --> 00:10:57,230 請求的從設備的GPS信息。 168 00:10:57,230 --> 00:10:59,810 8%閱讀觸點。 169 00:10:59,810 --> 00:11:03,770 發送短信4%,3%,收到的短信。 170 00:11:03,770 --> 00:11:07,730 2%,錄製的音頻。 171 00:11:07,730 --> 00:11:11,210 1%處理撥出電話。 172 00:11:11,210 --> 00:11:13,140 我不知道。 173 00:11:13,140 --> 00:11:17,520 我不認為4%的應用程序商店中的應用程序確實需要發送短信, 174 00:11:17,520 --> 00:11:21,410 所以我認為這是一個暗示,不良的東西是怎麼回事。 175 00:11:21,410 --> 00:11:24,350 8%的應用程序需要讀取您的聯繫人列表。 176 00:11:24,350 --> 00:11:26,510 它可能不是必要的。 177 00:11:26,510 --> 00:11:30,990 有關權限的其他有趣的事情之一是 178 00:11:30,990 --> 00:11:36,740 如果您鏈接到您的應用程序在共享庫 179 00:11:36,740 --> 00:11:39,780 那些繼承權限的應用程序, 180 00:11:39,780 --> 00:11:46,570 所以如果你的應用程序需要的聯繫人列表或需要GPS定位功能 181 00:11:46,570 --> 00:11:49,940 鏈接在廣告庫中,例如, 182 00:11:49,940 --> 00:11:53,170 該廣告庫也將能夠訪問聯繫人 183 00:11:53,170 --> 00:11:57,630 也能夠訪問的GPS位置, 184 00:11:57,630 --> 00:12:01,990 的應用程序的開發人員知道什麼廣告庫中運行的代碼。 185 00:12:01,990 --> 00:12:05,370 他們只是聯繫起來,因為他們想賺錢他們的應用程序。 186 00:12:05,370 --> 00:12:09,820 >> 這是哪裡,我會談論一些這樣的例子, 187 00:12:09,820 --> 00:12:13,930 一個叫潘多拉的應用程序開發人員的應用程序 188 00:12:13,930 --> 00:12:18,910 可能在不知不覺中被洩露信息 189 00:12:18,910 --> 00:12:24,580 從他們的用戶,因為他們的圖書館鏈接中。 190 00:12:24,580 --> 00:12:30,110 在那裡,看著所有不同的應用程序測量景觀 191 00:12:30,110 --> 00:12:34,310 已在新聞報導的惡意或做一些用戶不想 192 00:12:34,310 --> 00:12:39,360 然後檢查了很多應用程序,移動應用程序上,我們做了很多的靜態二進制分析, 193 00:12:39,360 --> 00:12:42,010 所以我們已經檢查了他們並且看著代碼本身 194 00:12:42,010 --> 00:12:49,640 我們來到了我們所說的我們的前10名名單在應用中的危險行為。 195 00:12:49,640 --> 00:12:54,180 它分解成2個部分,惡意代碼, 196 00:12:54,180 --> 00:12:57,600 所以這些都是不好的事情,應用程序可能會做 197 00:12:57,600 --> 00:13:06,520 很可能是一個惡意的個人 198 00:13:06,520 --> 00:13:10,060 專門整理中的應用,但它是一個有點模糊。 199 00:13:10,060 --> 00:13:13,300 這可能是一些開發商認為是正常的, 200 00:13:13,300 --> 00:13:16,350 但它結束了由用戶所想的是惡意的。 201 00:13:16,350 --> 00:13:19,830 >> 然後第二部分就是我們所說的編碼漏洞, 202 00:13:19,830 --> 00:13:24,600 這些都是開發商基本上是決策失誤 203 00:13:24,600 --> 00:13:27,200 或根本不知道如何安全地編寫應用程序, 204 00:13:27,200 --> 00:13:30,260  這把應用程序用戶處於危險之中。 205 00:13:30,260 --> 00:13:34,060 我會去通過這些細節,並給出一些例子。 206 00:13:34,060 --> 00:13:39,620 僅供參考,我希望把OWASP移動前10名名單。 207 00:13:39,620 --> 00:13:43,590 這些都是10個問題,一組在OWASP 208 00:13:43,590 --> 00:13:48,900 開放Web應用安全項目,他們有一個工作組 209 00:13:48,900 --> 00:13:50,620 工作在移動前10名之列。 210 00:13:50,620 --> 00:13:54,600 他們有一個非常有名的網絡排名前10位名單,這是前1​​0名 211 00:13:54,600 --> 00:13:57,180 最危險的事情,你可以在一個web應用程序。 212 00:13:57,180 --> 00:13:59,090 他們正在做同樣的事情,為移動電話, 213 00:13:59,090 --> 00:14:01,750 他們的名單比我們有一點不同。 214 00:14:01,750 --> 00:14:03,670 6,滿分10是相同的。 215 00:14:03,670 --> 00:14:06,020 他們有4個是不同的。 216 00:14:06,020 --> 00:14:10,550 我覺得他們有一點點不同的看法 217 00:14:10,550 --> 00:14:14,490 在移動應用程序中的風險,那裡有很多自己的問題 218 00:14:14,490 --> 00:14:20,490 真的如何將應用程序的後端服務器通信 219 00:14:20,490 --> 00:14:23,100 或後端服務器上發生了什麼事情, 220 00:14:23,100 --> 00:14:29,220 沒有這麼多的應用程序,有危險的行為,只是簡單的客戶端應用程序。 221 00:14:29,220 --> 00:14:36,640 >> 紅色在這裡的2個列表之間的差異。 222 00:14:36,640 --> 00:14:40,740 我的研究團隊和一些實際上已經促成這個項目, 223 00:14:40,740 --> 00:14:44,570 所以我們會看到隨著時間的推移會發生什麼,但我認為這裡的外賣 224 00:14:44,570 --> 00:14:47,550 我們真的不知道是在移動應用程序中的前10名名單,因為 225 00:14:47,550 --> 00:14:50,510 他們真的只有2年或3年左右,現在 226 00:14:50,510 --> 00:14:57,750 有沒有足夠的時間去真正研究操作系統 227 00:14:57,750 --> 00:15:00,450 他們有能力,有沒有足夠的時間 228 00:15:00,450 --> 00:15:06,870 惡意的社會,如果你願意,已經花了足夠的時間 229 00:15:06,870 --> 00:15:12,910 試圖攻擊用戶通過移動應用程序,所以我希望這些列表來改變一點點。 230 00:15:12,910 --> 00:15:18,720 但現在,這是前1​​0名的事情擔心。 231 00:15:18,720 --> 00:15:24,150 你可能不知道從何惡意移動代碼在移動側 232 00:15:24,150 --> 00:15:28,880 它是如何獲取到設備? 233 00:15:28,880 --> 00:15:35,210 北卡羅萊納州有一個項目稱為移動惡意軟件基因組計劃 234 00:15:35,210 --> 00:15:39,520 他們,因為他們可以收集盡可能多的手機惡意軟件和分析, 235 00:15:39,520 --> 00:15:45,270 他們已經打破了注射載體,移動惡意軟件的使用, 236 00:15:45,270 --> 00:15:51,490 和86%使用的技術稱為重新包裝, 237 00:15:51,490 --> 00:15:54,160 而這僅僅是Android平台上的 238 00:15:54,160 --> 00:15:56,720 你真的可以做到這一點重新包裝。 239 00:15:56,720 --> 00:16:03,100 >> 原因是Android的代碼是建立與 240 00:16:03,100 --> 00:16:08,130 一個叫做Dalvik的Java字節碼,這是很容易的把。 241 00:16:08,130 --> 00:16:12,460 壞傢伙可以做的是 242 00:16:12,460 --> 00:16:16,590 一個Android應用程序,反編譯, 243 00:16:16,590 --> 00:16:20,120 插入惡意代碼,重新編譯它, 244 00:16:20,120 --> 00:16:28,070 然後把它看來是一個新版本的該應用程序在App Store中, 245 00:16:28,070 --> 00:16:30,330 或只是可能改變應用程序的名稱。 246 00:16:30,330 --> 00:16:35,140 如果它是某種形式的遊戲,稍微更改名稱, 247 00:16:35,140 --> 00:16:42,860 ,所以這86%的手機惡意軟件是如何被分配的重新包裝。 248 00:16:42,860 --> 00:16:45,810 還有另一種技術,稱為更新 249 00:16:45,810 --> 00:16:50,030 重新包裝非常相似,但實際上你不把惡意代碼中。 250 00:16:50,030 --> 00:16:52,870 你要做的就是你把一個小的更新機制。 251 00:16:52,870 --> 00:16:56,660 你反編譯,你把更新機制,並重新編譯它, 252 00:16:56,660 --> 00:17:02,360 然後應用程序正在運行時,它打破了惡意軟件到設備上。 253 00:17:02,360 --> 00:17:06,300 >> 到目前為止,大多數是那些技術。 254 00:17:06,300 --> 00:17:12,710 沒有真正意義上下載驅動車處或驅動器的手機上下載, 255 00:17:12,710 --> 00:17:15,890 這可能是一個釣魚攻擊一樣。 256 00:17:15,890 --> 00:17:18,200 嘿,這真的很酷的網站, 257 00:17:18,200 --> 00:17:21,020 或者你需要去這個網站,並填寫此表 258 00:17:21,020 --> 00:17:24,420 保持繼續做的事情。 259 00:17:24,420 --> 00:17:26,230 這些都是釣魚式攻擊。 260 00:17:26,230 --> 00:17:28,160 同樣的事情可以發生在移動平台上,在那裡他們 261 00:17:28,160 --> 00:17:33,830 指向一個移動應用程序下載,說:“嗨,這是美國銀行(Bank of America)。” 262 00:17:33,830 --> 00:17:36,070 “我們看到了你使用這個應用程序。” 263 00:17:36,070 --> 00:17:38,540 “你應該下載其他應用程序。” 264 00:17:38,540 --> 00:17:41,170 從理論上講,可以工作。 265 00:17:41,170 --> 00:17:48,610 也許它只是沒有被足夠使用,以確定它是否是成功與否, 266 00:17:48,610 --> 00:17:51,680 但他們發現,小於1%的時間,技術被使用。 267 00:17:51,680 --> 00:17:56,130 大部分時間裡,它的確是一個重新包裝的代碼。 268 00:17:56,130 --> 00:17:58,710 >> 還有另外一類稱為獨立 269 00:17:58,710 --> 00:18:01,420 有人只是建立了一個全新的應用。 270 00:18:01,420 --> 00:18:04,020 他們構建一個應用程序,聲稱是。 271 00:18:04,020 --> 00:18:07,360 這不是別的東西重新包裝,並具有惡意代碼。 272 00:18:07,360 --> 00:18:11,230 這是用14%的時間。 273 00:18:11,230 --> 00:18:17,880 現在我想談談什麼是惡意代碼做? 274 00:18:17,880 --> 00:18:23,070 有第一的惡意軟件之一 275 00:18:23,070 --> 00:18:25,490 你可以考慮一個間諜軟件。 276 00:18:25,490 --> 00:18:27,620 它用戶基本上間諜。 277 00:18:27,620 --> 00:18:30,470 它收集電子郵件,短信。 278 00:18:30,470 --> 00:18:32,340 打開麥克風。 279 00:18:32,340 --> 00:18:37,330 豐收聯絡簿,並把它發送給別人。 280 00:18:37,330 --> 00:18:40,870 這種類型的間諜軟件在PC機上,存在 281 00:18:40,870 --> 00:18:46,200 所以人們在移動設備上嘗試這樣做非常有意義。 282 00:18:46,200 --> 00:18:53,230 >> 其中的第一個例子,這是一個稱為秘密短信複製的程序。 283 00:18:53,230 --> 00:18:56,250 這是一對夫婦幾年前,在Android市場 284 00:18:56,250 --> 00:18:59,960 當時的想法是,如果你有機會訪問到別人的Andr​​oid手機 285 00:18:59,960 --> 00:19:03,450 你想窺探,也許這是你的配偶 286 00:19:03,450 --> 00:19:07,600 或您的顯著其他你想窺視他們的短信, 287 00:19:07,600 --> 00:19:11,200 你可以下載的應用程序,並將其安裝和配置 288 00:19:11,200 --> 00:19:16,540 發送SMS文本消息給你一份 289 00:19:16,540 --> 00:19:21,710 每一個SMS文本消息,他們得到了。 290 00:19:21,710 --> 00:19:27,220 這顯然是違反了App Store的服務條款, 291 00:19:27,220 --> 00:19:32,040 這是從Android市場中移除它在那裡的18小時內, 292 00:19:32,040 --> 00:19:36,760 讓極少數人是因為這樣的風險。 293 00:19:36,760 --> 00:19:42,510 現在,我認為,如果該程序被稱為東西也許有點不太挑釁 294 00:19:42,510 --> 00:19:48,690 它可能會像秘密短信複製工作好了很多。 295 00:19:48,690 --> 00:19:52,870 但它是一種顯而易見的。 296 00:19:52,870 --> 00:19:58,680 >> 我們可以做的事情之一的應用程序,以確定是否有這樣的行為,我們不希望 297 00:19:58,680 --> 00:20:01,410 是為了視察代碼。 298 00:20:01,410 --> 00:20:06,250 這實際上是很容易的,因為我們可以在Android上做反編譯的應用程序。 299 00:20:06,250 --> 00:20:11,050 在iOS上,你可以使用像IDA Pro的反彙編 300 00:20:11,050 --> 00:20:17,190 看什麼應用程序的API調用和它在做什麼。 301 00:20:17,190 --> 00:20:20,680 我們寫自己的二進制代碼的靜態分析 302 00:20:20,680 --> 00:20:24,940 我們這樣做,所以你可以做的是,你可以說 303 00:20:24,940 --> 00:20:30,490 設備沒有做任何事情,基本上是我從事間諜活動,或跟踪我? 304 00:20:30,490 --> 00:20:33,360 我這裡有一些例子,在iPhone上。 305 00:20:33,360 --> 00:20:41,440 這第一個例子是如何在電話上訪問的UUID。 306 00:20:41,440 --> 00:20:47,060 這其實是蘋果剛剛禁止為新的應用, 307 00:20:47,060 --> 00:20:52,540 但老,你可能已經在你的手機上運行的應用程序仍然可以這樣做, 308 00:20:52,540 --> 00:20:56,500 使唯一的標識符可以被用來追踪您 309 00:20:56,500 --> 00:21:00,440 在許多不同的應用程序。 310 00:21:00,440 --> 00:21:07,180 >> 在Android中,我有一個例子,這裡的設備的位置。 311 00:21:07,180 --> 00:21:10,310 你可以看到,如果有,API調用,應用程序跟踪, 312 00:21:10,310 --> 00:21:15,000 你可以看到,無論是獲得精確的位置或粗略的位置。 313 00:21:15,000 --> 00:21:18,860 然後在底部在這裡,我有一個例子,如何在BlackBerry 314 00:21:18,860 --> 00:21:25,130 應用程序可能訪問您的收件箱中的電子郵件消息。 315 00:21:25,130 --> 00:21:27,660 這些都是樣的東西,你可以檢查看看 316 00:21:27,660 --> 00:21:32,360 如果應用程序正在做這些事情。 317 00:21:32,360 --> 00:21:38,320 第二大類惡意行為,這恐怕是目前最大的一類, 318 00:21:38,320 --> 00:21:43,950 擅自撥號,未經授權的溢價SMS短信 319 00:21:43,950 --> 00:21:46,080 或未經授權的付款。 320 00:21:46,080 --> 00:21:48,930 另一件事是關於手機的獨特功能 321 00:21:48,930 --> 00:21:52,700 設備迷上計費帳戶, 322 00:21:52,700 --> 00:21:55,960 活動時發生在手機上 323 00:21:55,960 --> 00:21:58,510 它可以創建費用。 324 00:21:58,510 --> 00:22:00,700 您可以通過電話購買的東西, 325 00:22:00,700 --> 00:22:04,390 當您發送優質的SMS文本消息其實你給錢 326 00:22:04,390 --> 00:22:11,590 到另一側上的電話號碼的帳戶持有人。 327 00:22:11,590 --> 00:22:17,420 這些股票報價或讓你的每日星座運勢或其他東西, 328 00:22:17,420 --> 00:22:21,680 但它們可以被設置為通過發送SMS文本訂購商品。 329 00:22:21,680 --> 00:22:26,970 人們把錢給紅十字會發送短信。 330 00:22:26,970 --> 00:22:30,650 你可以給$ 10這樣。 331 00:22:30,650 --> 00:22:34,190 >> 攻擊者,他們做了什麼,他們成立了 332 00:22:34,190 --> 00:22:38,750 佔在國外,它們嵌入在惡意軟件 333 00:22:38,750 --> 00:22:42,840 手機將發出溢價SMS文本消息, 334 00:22:42,840 --> 00:22:47,700 說了幾次了一天,你意識到你已經花了一個月的結束 335 00:22:47,700 --> 00:22:52,090 或者幾十甚至上百美元,而他們的錢走開。 336 00:22:52,090 --> 00:22:57,280 這變得如此糟糕,這是第一件事,是Android 337 00:22:57,280 --> 00:23:00,760 市場或谷歌的地方,它是Android市場的時候, 338 00:23:00,760 --> 00:23:04,430 它現在是谷歌遊戲的第一件事情,谷歌開始檢查。 339 00:23:04,430 --> 00:23:08,700 當谷歌在他們的應用程序商店開始銷售Android應用程序 340 00:23:08,700 --> 00:23:11,350 他們說他們不會去檢查什麼。 341 00:23:11,350 --> 00:23:15,630 我們會拉一旦我們被告知,他們已經打破了我們的服務條款的應用程序, 342 00:23:15,630 --> 00:23:17,520 但我們不打算以任何檢查。 343 00:23:17,520 --> 00:23:24,350 嗯,大約一年前,它變得如此糟糕,這個溢價的SMS文本消息惡意軟件 344 00:23:24,350 --> 00:23:28,030 這是第一件事,他們開始檢查。 345 00:23:28,030 --> 00:23:31,770 如果一個應用程序可以發送短信 346 00:23:31,770 --> 00:23:34,750 他們進一步手動審議該應用程序。 347 00:23:34,750 --> 00:23:38,770 他們尋找的API調用這個, 348 00:23:38,770 --> 00:23:40,580 現在自那時以來,谷歌已經展開, 349 00:23:40,580 --> 00:23:46,900 但是這是他們的第一件事就是開始尋找。 350 00:23:46,900 --> 00:23:50,690 >> 其他一些應用程序做了一些短信消息, 351 00:23:50,690 --> 00:23:56,980 這Android Qicsomos的,我想它被稱為。 352 00:23:56,980 --> 00:24:02,670 在移動這個CarrierIQ出來有這個當前事件 353 00:24:02,670 --> 00:24:07,720 如間諜軟件把設備上的運營商, 354 00:24:07,720 --> 00:24:10,820 所以人們想知道,這是脆弱的,如果他們的手機, 355 00:24:10,820 --> 00:24:13,890 這是一個免費的應用程序測試。 356 00:24:13,890 --> 00:24:17,520 嗯,當然,這是什麼應用程序是收費短訊發送短信, 357 00:24:17,520 --> 00:24:20,090 所以通過測試,看看如果你感染了間諜軟件 358 00:24:20,090 --> 00:24:24,930 您加載惡意軟件到您的設備。 359 00:24:24,930 --> 00:24:27,310 我們看到同樣的事情發生在最後的超級碗。 360 00:24:27,310 --> 00:24:33,180 勁爆足球比賽有一個假的版本 361 00:24:33,180 --> 00:24:38,320 優質的SMS文本消息發送。 362 00:24:38,320 --> 00:24:45,750 它實際上是試圖,太在設備上創建一個殭屍網絡。 363 00:24:45,750 --> 00:24:48,090 在這裡,我有一些例子。 364 00:24:48,090 --> 00:24:52,640 有趣的是,蘋果很聰明, 365 00:24:52,640 --> 00:24:58,470 他們沒有在所有,允許應用程序發送短信。 366 00:24:58,470 --> 00:25:00,350 任何應用程序可以做到這一點。 367 00:25:00,350 --> 00:25:03,530 這是一個偉大的方式擺脫一整類漏洞, 368 00:25:03,530 --> 00:25:09,040 但在Android上,你可以做到這一點,當然,你可以在BlackBerry做了。 369 00:25:09,040 --> 00:25:13,060 有趣的是,所有你需要的是在BlackBerry Internet權限 370 00:25:13,060 --> 00:25:18,370 發送SMS文本消息。 371 00:25:18,370 --> 00:25:21,580 >> 其他的事情,真的,我們來看看 372 00:25:21,580 --> 00:25:24,780 當我們正在尋找,看看是否有惡意,只是什麼樣的 373 00:25:24,780 --> 00:25:28,100 未經授權的網絡活動,如在網絡活動 374 00:25:28,100 --> 00:25:31,570 該應用被認為必須有它的功能, 375 00:25:31,570 --> 00:25:35,380 並期待在這個其他網絡活動。 376 00:25:35,380 --> 00:25:43,380 也許一個應用程序,工作,通過HTTP來獲取數據, 377 00:25:43,380 --> 00:25:47,500 但如果它做的事情通過電子郵件或短信或藍牙或類似的東西 378 00:25:47,500 --> 00:25:52,890 現在,應用程序可能是惡意的,所以這是另一回事,您可以檢查的。 379 00:25:52,890 --> 00:26:00,430 這張幻燈片上,我有一些這方面的例子。 380 00:26:00,430 --> 00:26:05,950 惡意軟件,我們看到另一個有趣的事情發生在2009年, 381 00:26:05,950 --> 00:26:07,600 它發生在一個大的方式。 382 00:26:07,600 --> 00:26:11,390 我不知道它是否出現過這樣的情況,所以從那時起,但它是一個應用程序 383 00:26:11,390 --> 00:26:15,140 模擬其他應用程序。 384 00:26:15,140 --> 00:26:21,700 有一組應用程序,它被冠以09Droid的攻擊, 385 00:26:21,700 --> 00:26:29,770 有人認為有很多小區域,中型銀行 386 00:26:29,770 --> 00:26:32,260 沒有網上銀行的應用, 387 00:26:32,260 --> 00:26:36,870 所以他們做了什麼,他們建立了約50網上銀行的應用 388 00:26:36,870 --> 00:26:39,410 他們所做的一切的用戶名和密碼 389 00:26:39,410 --> 00:26:42,190 並重定向到該網站。 390 00:26:42,190 --> 00:26:47,470 因此,他們把這些都在谷歌市場, 391 00:26:47,470 --> 00:26:51,530 在Android市場,而當有人搜索,看看他們的銀行 392 00:26:51,530 --> 00:26:56,000 有一個應用程序,他們會發現假的應用程序, 393 00:26:56,000 --> 00:27:01,230 收集他們的憑據,然後重定向到他們的網站。 394 00:27:01,230 --> 00:27:06,640 的方式,這實際上成為的應用程序分別上漲了幾個星期, 395 00:27:06,640 --> 00:27:09,050 且有成千上萬下載。 396 00:27:09,050 --> 00:27:12,910 >> 這揭發的方式是有人有問題 397 00:27:12,910 --> 00:27:15,740 用的應用程序之一,他們稱他們的銀行, 398 00:27:15,740 --> 00:27:18,390 他們叫銀行的客戶支持熱線說, 399 00:27:18,390 --> 00:27:21,180 “我有一個問題,您的移動銀行應用程序。” 400 00:27:21,180 --> 00:27:23,460 “你能幫幫我嗎?” 401 00:27:23,460 --> 00:27:26,540 他們說,“我們沒有一個移動銀行應用程序。” 402 00:27:26,540 --> 00:27:28,120 這開始了調查。 403 00:27:28,120 --> 00:27:31,200 該銀行稱谷歌,那麼谷歌看了看說, 404 00:27:31,200 --> 00:27:37,220 “哇,同一作者寫的50家銀行申請”,把他們全都下來。 405 00:27:37,220 --> 00:27:43,410 但可以肯定,這可能再次發生。 406 00:27:43,410 --> 00:27:51,790 不同的銀行在這裡有列表 407 00:27:51,790 --> 00:27:55,870 這個騙局的一部分。 408 00:27:55,870 --> 00:28:02,050 一個應用程序可以做的另一件事是提出另一個應用程序的UI。 409 00:28:02,050 --> 00:28:06,430 雖然它的運行,它可以彈出Facebook的UI。 410 00:28:06,430 --> 00:28:09,540 它說,你必須把你的用戶名和密碼才能繼續 411 00:28:09,540 --> 00:28:15,090 或任何一個網站的用戶名和密碼的用戶界面 412 00:28:15,090 --> 00:28:18,420 用戶使用,也許只是試圖欺騙用戶 413 00:28:18,420 --> 00:28:21,340 到把他們的憑據英寸 414 00:28:21,340 --> 00:28:25,590 這的確是一個直線平行的電子郵件釣魚攻擊 415 00:28:25,590 --> 00:28:28,210 有人向您發送一封電子郵件 416 00:28:28,210 --> 00:28:33,050 並給你一個網站基本上是一個假的UI 417 00:28:33,050 --> 00:28:37,320 您可以訪問。 418 00:28:37,320 --> 00:28:41,590 >> 其他的事情,我們期待在惡意代碼的系統修改。 419 00:28:41,590 --> 00:28:48,160 你可以看一下所有的API調用需要root權限 420 00:28:48,160 --> 00:28:50,870 正確執行。 421 00:28:50,870 --> 00:28:56,160 更改設備的Web代理是一個應用程序 422 00:28:56,160 --> 00:28:59,530 不應該是能夠做到的。 423 00:28:59,530 --> 00:29:03,030 但是,如果應用程序的代碼在那裡做 424 00:29:03,030 --> 00:29:05,960 你知道,它可能是一個惡意應用程序 425 00:29:05,960 --> 00:29:09,620 或非常極有可能是一個惡意應用程序, 426 00:29:09,620 --> 00:29:13,910 所以會發生什麼事是,應用程序將有一些特權升級方式。 427 00:29:13,910 --> 00:29:17,200 這將有一些特權升級漏洞 428 00:29:17,200 --> 00:29:20,730 在應用程序中,然後一次升級特權 429 00:29:20,730 --> 00:29:23,800 它會做修改這些系統。 430 00:29:23,800 --> 00:29:28,010 你可以找到惡意軟件,有特權升級 431 00:29:28,010 --> 00:29:32,550 它甚至不知道如何的特權升級 432 00:29:32,550 --> 00:29:37,960 漏洞的事​​情發生,這是一個不錯的,簡單的方法 433 00:29:37,960 --> 00:29:41,220 尋找惡意軟件。 434 00:29:41,220 --> 00:29:46,030 DroidDream的Andr​​oid惡意軟件很可能是最有名的一塊。 435 00:29:46,030 --> 00:29:50,530 過不了幾天我認為這影響了約25萬用戶 436 00:29:50,530 --> 00:29:52,810 之前被發現。 437 00:29:52,810 --> 00:29:56,890 他們重新包裝50假的應用程序, 438 00:29:56,890 --> 00:30:00,370 把它們放在Android應用程序商店, 439 00:30:00,370 --> 00:30:10,940 基本上,它使用Android越獄的代碼,提升權限 440 00:30:10,940 --> 00:30:16,380 然後安裝一個指揮和控制,並把所有的受害者 441 00:30:16,380 --> 00:30:20,690 成一個殭屍網絡,但你可以發現這 442 00:30:20,690 --> 00:30:24,170 如果你是掃描應用程序,只是在尋找 443 00:30:24,170 --> 00:30:32,230 API調用,需要root權限才能正確執行。 444 00:30:32,230 --> 00:30:40,150 >> 有一個例子,我在這裡已經改變代理, 445 00:30:40,150 --> 00:30:46,380 這實際上是只可在Android。 446 00:30:46,380 --> 00:30:49,070 你可以看到我給你很多的例子在Android 447 00:30:49,070 --> 00:30:53,990 因為這是最活躍的惡意軟件生態系統 448 00:30:53,990 --> 00:30:58,690 因為它真的很容易讓攻擊者獲取惡意代碼 449 00:30:58,690 --> 00:31:01,470 進入Android市場。 450 00:31:01,470 --> 00:31:06,480 這不是那麼容易的事,在蘋果App Store 451 00:31:06,480 --> 00:31:10,250 因為蘋果需要開發自己的身份 452 00:31:10,250 --> 00:31:12,790 並簽署代碼。 453 00:31:12,790 --> 00:31:20,340 他們實際檢查你是誰,蘋果實際上是審議申請。 454 00:31:20,340 --> 00:31:27,450 我們沒有看到真正的惡意軟件,設備越來越妥協了很多。 455 00:31:27,450 --> 00:31:32,250 我會談談一些例子,這是真正的隱私得到妥協, 456 00:31:32,250 --> 00:31:38,460 蘋果設備上到底發生了什麼。 457 00:31:38,460 --> 00:31:44,090 尋找惡意代碼,危險的代碼,在設備的另一件事 458 00:31:44,090 --> 00:31:50,300 是邏輯或定時炸彈,定時炸彈可能 459 00:31:50,300 --> 00:31:53,370 更容易尋找比邏輯炸彈。 460 00:31:53,370 --> 00:31:57,030 但隨著時間的推移炸彈,你可以做什麼的,你可以看看 461 00:31:57,030 --> 00:32:04,760 代碼中的測試時間或絕對時間的地方尋找 462 00:32:04,760 --> 00:32:08,190 之前發生在應用程序的某些功能。 463 00:32:08,190 --> 00:32:14,200 這可以隱藏該活動從用戶, 464 00:32:14,200 --> 00:32:17,510 所以它的發生在深夜。 465 00:32:17,510 --> 00:32:24,350 DroidDream其所有活動之間當地時間上午11點和8 466 00:32:24,350 --> 00:32:30,650 嘗試這樣做,而用戶可能無法使用他們的設備。 467 00:32:30,650 --> 00:32:38,680 >> 這樣做的另一個原因是,如果人們使用應用程序行為分析, 468 00:32:38,680 --> 00:32:43,430 在沙箱中運行的應用程序到應用程序的行為是什麼, 469 00:32:43,430 --> 00:32:51,090 他們可以使用基於時間的邏輯活動 470 00:32:51,090 --> 00:32:54,640 當應用程序是不是在沙箱中。 471 00:32:54,640 --> 00:33:01,520 例如,像蘋果的應用程序商店 472 00:33:01,520 --> 00:33:07,940 運行應用程序,但他們可能不運行的每個應用程序,比如說,30天 473 00:33:07,940 --> 00:33:10,550 在審批之前,所以你可以把 474 00:33:10,550 --> 00:33:14,120 沒關係,只說在你的應用程序的邏輯,做壞事 475 00:33:14,120 --> 00:33:20,490 30天之後,已經或之後的應用程序的發布日期後30日內, 476 00:33:20,490 --> 00:33:27,020 可以幫助人們檢查惡意代碼隱藏。 477 00:33:27,020 --> 00:33:30,050 如果反病毒公司都運行在沙箱的東西 478 00:33:30,050 --> 00:33:36,370 或自己的應用程序商店,這可以幫助 479 00:33:36,370 --> 00:33:39,260 隱藏從該檢查。 480 00:33:39,260 --> 00:33:43,020 現在,它的另一面,是很容易找到與靜態分析, 481 00:33:43,020 --> 00:33:46,170 所以實際上檢查代碼,你可以看看所有的地方 482 00:33:46,170 --> 00:33:54,010 應用測試的時間和檢查這樣。 483 00:33:54,010 --> 00:33:58,850 在這裡,我這3個不同的平台上有一些例子 484 00:33:58,850 --> 00:34:05,640 時間可以檢查應用程序製造商 485 00:34:05,640 --> 00:34:10,520 所以您知道要尋找什麼,如果你檢查應用程序的靜態。 486 00:34:10,520 --> 00:34:14,570 >> 我剛剛經歷了一大堆不同的惡意活動 487 00:34:14,570 --> 00:34:18,969 在野生環境中,我們已經看到,但哪些是最流行的? 488 00:34:18,969 --> 00:34:23,940 這同樣來自北卡羅萊納州立移動基因組計劃的研究 489 00:34:23,940 --> 00:34:28,560 公佈了一些數據,基本上有4個區域 490 00:34:28,560 --> 00:34:32,850 他們看到那裡有很多的活動。 491 00:34:32,850 --> 00:34:35,370 37%的應用程序沒有特權升級, 492 00:34:35,370 --> 00:34:38,429 所以他們在那裡有一些類型的越獄代碼 493 00:34:38,429 --> 00:34:42,070 他們試圖提升自己的權限,讓他們可以 494 00:34:42,070 --> 00:34:48,360 做API作為操作系統上運行的命令。 495 00:34:48,360 --> 00:34:52,520 的應用程序有45%的溢價短信, 496 00:34:52,520 --> 00:34:57,260 所以這是一個巨大的比例,試圖直接賺錢。 497 00:34:57,260 --> 00:35:02,640 93%的人遠程控制,所以他們試圖建立一個殭屍網絡,移動殭屍網絡。 498 00:35:02,640 --> 00:35:08,990 45%的收穫識別信息 499 00:35:08,990 --> 00:35:16,230 像電話號碼的UUID,GPS定位,用戶帳戶, 500 00:35:16,230 --> 00:35:22,870 這加起來超過100個,因為大多數惡意軟件嘗試這些事情做了幾個。 501 00:35:22,870 --> 00:35:27,070 >> 我要切換到下半年,談談代碼漏洞。 502 00:35:27,070 --> 00:35:29,480 這是下半年風險的活動。 503 00:35:29,480 --> 00:35:33,450 這是基本上是開發商的決策失誤。 504 00:35:33,450 --> 00:35:37,210 一個合法的開發商寫一個合法的應用程序 505 00:35:37,210 --> 00:35:41,830 決策失誤或移動平台的風險一無所知。 506 00:35:41,830 --> 00:35:44,780 他們只是不知道如何做一個安全的移動應用程序, 507 00:35:44,780 --> 00:35:47,700 或有時開發商不關心把用戶風險。 508 00:35:47,700 --> 00:35:50,850 有時,他們的業務模式的一部分可能是 509 00:35:50,850 --> 00:35:54,610 收穫用戶的個人信息。 510 00:35:54,610 --> 00:35:58,090 這是其他類別的排序,這就是為什麼這一些惡意 511 00:35:58,090 --> 00:36:03,200 與合法開始流血,因為有不同的意見 512 00:36:03,200 --> 00:36:10,440 用戶想要什麼和什麼之間的用戶認為風險 513 00:36:10,440 --> 00:36:13,050 和什麼樣的應用程序開發人員認為有風險的。 514 00:36:13,050 --> 00:36:18,380 當然,它不是在大多數情況下,應用程序開發人員的數據。 515 00:36:18,380 --> 00:36:22,030 >> 最後,發生這種情況的另一種方式是開發者可能會鏈接 516 00:36:22,030 --> 00:36:28,600 一個共享庫,有漏洞或這種危險行為 517 00:36:28,600 --> 00:36:32,480 他們不知道。 518 00:36:32,480 --> 00:36:37,060 第一類是敏感數據洩漏, 519 00:36:37,060 --> 00:36:40,030 這是當應用程序收集的信息 520 00:36:40,030 --> 00:36:44,980 如位置,通訊錄信息,所有者信息 521 00:36:44,980 --> 00:36:48,000 和發送裝置關機。 522 00:36:48,000 --> 00:36:53,050 而一旦關閉設備,我們不知道發生了什麼信息。 523 00:36:53,050 --> 00:36:57,170 它可以存儲在不安全的應用程序開發人員。 524 00:36:57,170 --> 00:37:02,070 我們已經看到了應用程序開發人員得到妥協, 525 00:37:02,070 --> 00:37:05,820 他們存儲的數據被採取。 526 00:37:05,820 --> 00:37:10,970 這在幾個月前發生在佛羅里達開發商 527 00:37:10,970 --> 00:37:21,660 - 它是一個龐大的數字iPad的UUID和設備名稱 528 00:37:21,660 --> 00:37:25,270 被洩露,因為有人,我覺得它是匿名的, 529 00:37:25,270 --> 00:37:29,460 聲稱要做到這一點,闖進這個開發商的服務器 530 00:37:29,460 --> 00:37:34,920 並偷走數以百萬計的iPad的UUID 531 00:37:34,920 --> 00:37:37,390 和電腦名稱。 532 00:37:37,390 --> 00:37:40,260 不是最危險的信息, 533 00:37:40,260 --> 00:37:46,820 但如果這是存儲的用戶名和密碼 534 00:37:46,820 --> 00:37:48,170 家庭住址? 535 00:37:48,170 --> 00:37:51,100 的應用程序商店有很多這方面的信息。 536 00:37:51,100 --> 00:37:53,230 風險是存在的。 537 00:37:53,230 --> 00:37:56,620 >> 其他的事情可能發生的是,如果開發商不照顧 538 00:37:56,620 --> 00:38:01,370 保護數據通道,這就是我要談的另一大漏洞, 539 00:38:01,370 --> 00:38:05,160 數據被明文發送。 540 00:38:05,160 --> 00:38:09,040 如果用戶是在公共Wi-Fi網絡 541 00:38:09,040 --> 00:38:12,330 或者有人嗅探互聯網上某個地方 542 00:38:12,330 --> 00:38:19,260 沿路徑的數據正被暴露。 543 00:38:19,260 --> 00:38:23,790 一個非常著名的案例發生此信息洩漏與潘多拉 544 00:38:23,790 --> 00:38:27,250 這是我們研究的東西在Veracode的。 545 00:38:27,250 --> 00:38:33,200 我們聽說,有一個我覺得它是一個聯邦貿易委員會 546 00:38:33,200 --> 00:38:35,310 調查與潘多拉。 547 00:38:35,310 --> 00:38:39,830 我們說:“這是怎麼回事呢?讓我們開始挖掘進入潘多拉應用程序。” 548 00:38:39,830 --> 00:38:46,690 我們確定的是潘多拉應用程序收集 549 00:38:46,690 --> 00:38:51,270 你的性別和年齡, 550 00:38:51,270 --> 00:38:56,660 而且還訪問了您的GPS位置,以及潘多拉應用程序 551 00:38:56,660 --> 00:39:00,200 這樣做對他們說什麼正當理由。 552 00:39:00,200 --> 00:39:05,360 他們玩潘多拉的音樂是音樂流應用程序 553 00:39:05,360 --> 00:39:07,530 玩音樂,他們只在美國的許可, 554 00:39:07,530 --> 00:39:13,020 所以他們不得不檢查遵守他們有他們的許可協議 555 00:39:13,020 --> 00:39:17,240 為音樂,用戶是在美國。 556 00:39:17,240 --> 00:39:25,070 他們也想遵守與家長諮詢 557 00:39:25,070 --> 00:39:33,790 圍繞在音樂的成人語言, 558 00:39:33,790 --> 00:39:37,500 ,所以它是一個自願性的計劃,但他們想遵守 559 00:39:37,500 --> 00:39:43,010 13兒童發揮明確的歌詞。 560 00:39:43,010 --> 00:39:46,280 >> 他們收集這些數據的正當理由。 561 00:39:46,280 --> 00:39:49,160 他們的應用程序的權限做到這一點。 562 00:39:49,160 --> 00:39:52,000 用戶認為這是合法的。但是,什麼發生了什麼? 563 00:39:52,000 --> 00:39:55,810 他們掛在3或4個不同的廣告庫。 564 00:39:55,810 --> 00:39:59,140 現在一下子所有這些廣告庫 565 00:39:59,140 --> 00:40:02,970 獲得此相同的信息的訪問。 566 00:40:02,970 --> 00:40:05,830 廣告庫,如果你看一下廣告庫中的代碼 567 00:40:05,830 --> 00:40:08,430 他們做了什麼,是每一個廣告庫說 568 00:40:08,430 --> 00:40:11,340 “我的應用程序是否有權限來獲取GPS位置嗎?” 569 00:40:11,340 --> 00:40:14,890 “哦,這不好吧,告訴我的GPS位置。” 570 00:40:14,890 --> 00:40:16,620 每一個廣告庫這樣做, 571 00:40:16,620 --> 00:40:19,740 如果應用程序不具備GPS功能的權限 572 00:40:19,740 --> 00:40:23,460 它不會是能夠得到它,但如果這樣做,就會得到它。 573 00:40:23,460 --> 00:40:26,240 這是商業模式的廣告庫 574 00:40:26,240 --> 00:40:31,160 反對用戶的隱私。 575 00:40:31,160 --> 00:40:34,980 有過研究,在那裡,會說,如果你知道的年齡 576 00:40:34,980 --> 00:40:38,430 一個人,你知道自己的位置 577 00:40:38,430 --> 00:40:42,530 他們晚上睡覺的地方,因為你有他們的GPS坐標 578 00:40:42,530 --> 00:40:46,030 同時,他們也許正在睡覺,你知道那個人究竟是誰 579 00:40:46,030 --> 00:40:50,230 因為你可以決定該家庭成員是那個人。 580 00:40:50,230 --> 00:40:54,780 實際上這是識別廣告 581 00:40:54,780 --> 00:40:59,530 你是誰,它看起來是合法的。 582 00:40:59,530 --> 00:41:02,800 我只想我的流媒體音樂,這是唯一的方式得到它。 583 00:41:02,800 --> 00:41:05,370 >> 好吧,我們暴露了這一點。 584 00:41:05,370 --> 00:41:08,030 我們寫這在幾個博客文章, 585 00:41:08,030 --> 00:41:13,280 它橫空出世,有人從滾石雜誌 586 00:41:13,280 --> 00:41:18,810 閱讀我們的博客文章,寫自己的博客,它的滾石, 587 00:41:18,810 --> 00:41:22,120 第二天潘多拉認為這是一個好主意 588 00:41:22,120 --> 00:41:27,600 刪除廣告從他們的應用程序庫。 589 00:41:27,600 --> 00:41:31,270 據我所知,他們是唯一的,他們應該受到表揚。 590 00:41:31,270 --> 00:41:35,770 我覺得他們的應用程序,這樣做的唯一的免費增值型。 591 00:41:35,770 --> 00:41:38,660 所有其他的免費增值應用也有同樣的行為, 592 00:41:38,660 --> 00:41:41,780 所以,你要想想什麼樣的數據,你給 593 00:41:41,780 --> 00:41:48,330 這些免費增值應用,因為它的一切都會給廣告客戶。 594 00:41:48,330 --> 00:41:53,390 禁衛軍對於共享庫也做了一項研究說, 595 00:41:53,390 --> 00:41:57,100 “讓我們看看哪些共享庫頂部的共享庫,”這是數據。 596 00:41:57,100 --> 00:41:59,420 >> 他們分析了53,000個應用程序, 597 00:41:59,420 --> 00:42:01,900 和數字1的共享庫的AdMob。 598 00:42:01,900 --> 00:42:06,060 它實際上是在38%的應用在那裡, 599 00:42:06,060 --> 00:42:08,800 所以您正在使用的應用程序的38% 600 00:42:08,800 --> 00:42:11,250 您的個人信息可能收穫 601 00:42:11,250 --> 00:42:16,650 並將其發送到廣告網絡。 602 00:42:16,650 --> 00:42:19,350 阿帕奇和Android分別為8%和6%, 603 00:42:19,350 --> 00:42:22,960 那麼這些其他的底部向下,谷歌廣告,亂舞, 604 00:42:22,960 --> 00:42:26,600 手機市公司Millennial Media, 605 00:42:26,600 --> 00:42:30,500 這些是所​​有廣告公司,然後,有趣的是, 606 00:42:30,500 --> 00:42:33,500 掛在Facebook的庫4% 607 00:42:33,500 --> 00:42:38,870 大概做認證通過Facebook 608 00:42:38,870 --> 00:42:40,810 所以應用程序可以驗證了Facebook。 609 00:42:40,810 --> 00:42:44,660 但是,這也意味著該公司的Facebook控制代碼 610 00:42:44,660 --> 00:42:49,010 在4%的Andr​​oid手機應用程序運行在那裡, 611 00:42:49,010 --> 00:42:53,490 他們有訪問該應用程序的所有數據的權限來獲得。 612 00:42:53,490 --> 00:42:57,170 Facebook的實質上是嘗試出售廣告空間。 613 00:42:57,170 --> 00:43:00,120 這是他們的商業模式。 614 00:43:00,120 --> 00:43:02,920 >> 如果你看看這整個生態系統具有這些權限 615 00:43:02,920 --> 00:43:07,740 和共享庫,你開始看到 616 00:43:07,740 --> 00:43:13,850 在一個假定的合法的應用程序,你有一個很大的風險。 617 00:43:13,850 --> 00:43:19,360 同樣類似的事情發生了潘多拉 618 00:43:19,360 --> 00:43:22,340 與應用程序稱為路徑發生, 619 00:43:22,340 --> 00:43:27,660 和路徑以為他們是有幫助的,友好的開發。 620 00:43:27,660 --> 00:43:32,160 他們只是想給你一個很好的用戶體驗, 621 00:43:32,160 --> 00:43:37,810 它橫空出世,不提示用戶的情況下,或告訴用戶什麼 622 00:43:37,810 --> 00:43:40,400 這發生在iPhone和Android上, 623 00:43:40,400 --> 00:43:44,420 潘多拉的應用程序是iPhone和Android 624 00:43:44,420 --> 00:43:48,890 路徑應用抓住你的整個通訊錄 625 00:43:48,890 --> 00:43:52,830 並上傳到路徑只是當你安裝並運行應用程序, 626 00:43:52,830 --> 00:43:55,840 他們沒有告訴你這一點。 627 00:43:55,840 --> 00:43:58,750 他們認為這是真的對你有幫助 628 00:43:58,750 --> 00:44:04,040 能夠與大家分享您的地址簿中的所有的人 629 00:44:04,040 --> 00:44:06,920 你使用的應用程序的路徑。 630 00:44:06,920 --> 00:44:09,490 >> 嗯,很明顯的路徑認為這是非常適合他們公司。 631 00:44:09,490 --> 00:44:13,510 沒有那麼大的用戶。 632 00:44:13,510 --> 00:44:19,020 你認為它也許是一件事,如果一個十幾歲的 633 00:44:19,020 --> 00:44:23,700 使用這個應用程序,他們的許多朋友都在那裡, 634 00:44:23,700 --> 00:44:29,360 但如果它是一家公司的CEO,安裝路徑 635 00:44:29,360 --> 00:44:33,170 然後突然整個地址簿的所有嗎? 636 00:44:33,170 --> 00:44:38,310 你會得到很多潛在的有價值的聯繫人信息 637 00:44:38,310 --> 00:44:40,920 很多人。 638 00:44:40,920 --> 00:44:44,500 記者從紐約時報,你可能能夠得到的電話號碼 639 00:44:44,500 --> 00:44:47,380 他們的地址簿中的前總統, 640 00:44:47,380 --> 00:44:54,780 如此明顯的敏感信息得到了很多像這樣的東西轉移。 641 00:44:54,780 --> 00:44:58,090 有這樣一個大瓣,路徑道歉。 642 00:44:58,090 --> 00:45:01,610 他們改變他們的應用程序,它甚至影響了蘋果。 643 00:45:01,610 --> 00:45:06,950 蘋果公司表示,“我們將迫使應用程序供應商,以提示用戶 644 00:45:06,950 --> 00:45:12,650 如果他們要收集他們的整個通訊錄。“ 645 00:45:12,650 --> 00:45:15,360 >> 它看起來像這裡發生了什麼 646 00:45:15,360 --> 00:45:19,430 當有一個大的侵犯隱私,它使記者 647 00:45:19,430 --> 00:45:21,680 在那裡,我們看到了一個改變。 648 00:45:21,680 --> 00:45:23,230 不過,當然,還有其他的東西在那裡。 649 00:45:23,230 --> 00:45:27,440 LinkedIn的應用收成您的日曆條目, 650 00:45:27,440 --> 00:45:34,530 但蘋果並沒有關於該用戶被提示。 651 00:45:34,530 --> 00:45:38,030 日曆項可以在他們的敏感信息。 652 00:45:38,030 --> 00:45:40,000 你要去哪裡劃清界線? 653 00:45:40,000 --> 00:45:43,960 這的確是一種不斷變化的地方 654 00:45:43,960 --> 00:45:47,640 那裡真的沒有很好的標準有 655 00:45:47,640 --> 00:45:51,990 用戶理解他們的信息時,要在風險 656 00:45:51,990 --> 00:45:57,820 當他們要知道它正在採取。 657 00:45:57,820 --> 00:46:03,040 我們寫了一個應用程序在Veracode的叫一路平安, 658 00:46:03,040 --> 00:46:08,350 基本上,它允許你指向的應用程序在您的iTunes目錄 659 00:46:08,350 --> 00:46:12,550 看,收穫您的詳細地址簿中的所有應用程序。 660 00:46:12,550 --> 00:46:19,760 你可以在這裡看到這個名單上,憤怒的小鳥, 661 00:46:19,760 --> 00:46:21,590 AIM,AroundMe。 662 00:46:21,590 --> 00:46:24,050 “憤怒的小鳥”為什麼需要你的地址簿? 663 00:46:24,050 --> 00:46:29,160 我不知道,但它確實不知何故。 664 00:46:29,160 --> 00:46:32,310 >> 這是很多,很多應用程序做的事情。 665 00:46:32,310 --> 00:46:34,780 您可以檢查代碼。 666 00:46:34,780 --> 00:46:38,660 有定義良好的API,用於iPhone,Android和黑莓 667 00:46:38,660 --> 00:46:42,120 在地址簿中。 668 00:46:42,120 --> 00:46:48,520 你真的可以輕鬆地檢查,這是我們做我們一路平安應用。 669 00:46:48,520 --> 00:46:52,320 下一個類別,不安全的敏感數據存儲, 670 00:46:52,320 --> 00:46:55,670 一些開發商拿東西像針或帳號 671 00:46:55,670 --> 00:46:58,530 或密碼,並將其存儲在設備上的明確。 672 00:46:58,530 --> 00:47:02,310 更糟的是,他們可能會存儲在手機上的一個區域 673 00:47:02,310 --> 00:47:06,820 這是全局可訪問的,像SD卡。 674 00:47:06,820 --> 00:47:11,320 你看這往往在Android,因為Android允許SD卡。 675 00:47:11,320 --> 00:47:13,200 不IPhone裝置。 676 00:47:13,200 --> 00:47:17,900 但是,我們甚至看到這種情況發生在花旗集團(Citigroup)應用程序。 677 00:47:17,900 --> 00:47:25,450 他們的在線銀行應用程序存儲的帳戶號碼不安全, 678 00:47:25,450 --> 00:47:28,120 只是在明確,所以如果你失去了你的設備, 679 00:47:28,120 --> 00:47:30,670 基本上,你失去了你的銀行帳戶。 680 00:47:30,670 --> 00:47:36,000 這就是為什麼我個人不辦銀行在我的iPhone。 681 00:47:36,000 --> 00:47:43,710 我認為這是太冒險了,現在做這類活動。 682 00:47:43,710 --> 00:47:45,950 >> Skype公司也做了同樣的事情。 683 00:47:45,950 --> 00:47:49,870 Skype的,當然,帳戶餘額,用戶名和密碼 684 00:47:49,870 --> 00:47:51,030 訪問該資產。 685 00:47:51,030 --> 00:48:00,080 在清澈的,他們所有的信息存儲在移動設備上。 686 00:48:00,080 --> 00:48:05,760 我這裡有一些例子,創建文件 687 00:48:05,760 --> 00:48:10,310 沒有正確的權限或寫入光盤 688 00:48:10,310 --> 00:48:17,260 不用任何加密的發生。 689 00:48:17,260 --> 00:48:20,190 這一個區域,不安全的敏感數據傳輸, 690 00:48:20,190 --> 00:48:24,450 我提到的這幾次,而且由於公共Wi-Fi 691 00:48:24,450 --> 00:48:27,770 這是應用程序絕對需要做的事情, 692 00:48:27,770 --> 00:48:31,250 這可能是我們所看到的去錯了最。 693 00:48:31,250 --> 00:48:34,920 我想說,其實,我覺得我有實際的數據, 694 00:48:34,920 --> 00:48:38,120 但接近一半的移動應用程序 695 00:48:38,120 --> 00:48:41,780 搞砸做SSL。 696 00:48:41,780 --> 00:48:43,910 他們只是不正確地使用API​​。 697 00:48:43,910 --> 00:48:47,970 我的意思是,所有你所要做的就是按照說明進行操作,並使用API​​, 698 00:48:47,970 --> 00:48:54,720 但他們做的事情不喜歡檢查是否有無效的證書在另一端, 699 00:48:54,720 --> 00:49:02,120 不檢查,如果另一端試圖做一個協議降級攻擊。 700 00:49:02,120 --> 00:49:07,200 >> 開發商,他們希望得到他們的複選框,對不對? 701 00:49:07,200 --> 00:49:11,910 他們的要求是用這個來賣。他們已經用這種出售。 702 00:49:11,910 --> 00:49:14,800 要求是不使用這種安全出售, 703 00:49:14,800 --> 00:49:19,680 所以這是為什麼所有應用程序使用SSL來保護數據 704 00:49:19,680 --> 00:49:23,470 因為它是被傳輸設備確實需要進行檢查 705 00:49:23,470 --> 00:49:28,950 確保這是正確實施。 706 00:49:28,950 --> 00:49:32,850 在這裡,我有一些例子,你可以看到一個應用程序 707 00:49:32,850 --> 00:49:37,400 可能會使用HTTP而不是HTTPS。 708 00:49:37,400 --> 00:49:40,510 在某些情況下,應用程序將回落到HTTP 709 00:49:40,510 --> 00:49:44,250 如果使用HTTPS不工作。 710 00:49:44,250 --> 00:49:49,070 我有另一個呼叫禁用證書檢查,他們已經在Android, 711 00:49:49,070 --> 00:49:51,700 所以可能發生的man-in-the-middle攻擊。 712 00:49:51,700 --> 00:49:56,370 一個無效的證書將被接受。 713 00:49:56,370 --> 00:50:01,920 所有這些情況下,攻擊者將能夠得到 714 00:50:01,920 --> 00:50:07,150 相同的Wi-Fi連接的用戶和訪問所有數據 715 00:50:07,150 --> 00:50:11,650 在互聯網上被發送。 716 00:50:11,650 --> 00:50:15,970 >> 最後,我這裡有最後一類是硬編碼的密碼和鑰匙。 717 00:50:15,970 --> 00:50:21,470 事實上,我們看到很多開發者使用相同的編碼風格 718 00:50:21,470 --> 00:50:25,900 他們時,他​​們建立Web服務器應用程序, 719 00:50:25,900 --> 00:50:29,700 所以他們正在構建一個Java服務器應用程序,和他們硬編碼的關鍵。 720 00:50:29,700 --> 00:50:31,940 那麼,當你建立一個服務器應用程序,是啊, 721 00:50:31,940 --> 00:50:34,240 硬編碼的關鍵,是不是一個好主意。 722 00:50:34,240 --> 00:50:36,290 這使得它很難改變。 723 00:50:36,290 --> 00:50:40,700 但它不是那麼糟糕,因為在服務器端訪問到服務器端? 724 00:50:40,700 --> 00:50:43,140 只有管​​理員。 725 00:50:43,140 --> 00:50:48,100 但是,如果你把相同的代碼和你倒過來一個移動應用程序 726 00:50:48,100 --> 00:50:52,550 現在大家誰擁有移動應用訪問該硬編碼的關鍵, 727 00:50:52,550 --> 00:50:56,380 實際上,我們看到了很多次,我有一些統計數據 728 00:50:56,380 --> 00:51:00,920 我們常常看到這樣的情況。 729 00:51:00,920 --> 00:51:04,940 它實際上是在示例代碼,萬事達卡發布 730 00:51:04,940 --> 00:51:06,850 如何使用他們的服務。 731 00:51:06,850 --> 00:51:11,860 示例代碼表明你將如何只取密碼 732 00:51:11,860 --> 00:51:14,850 在一個硬編碼的字符串,並把它在那裡, 733 00:51:14,850 --> 00:51:19,380 我們知道如何開發者的喜愛,複製和粘貼代碼片段 734 00:51:19,380 --> 00:51:22,360 當他們試圖做一些事情,所以你複製和粘貼的代碼片段 735 00:51:22,360 --> 00:51:28,450 他們給的例子代碼,你有一個不安全的應用程序。 736 00:51:28,450 --> 00:51:31,490 >> 在這裡,我們有一些例子。 737 00:51:31,490 --> 00:51:35,840 第一個是我們看到了很多在他們硬編碼 738 00:51:35,840 --> 00:51:40,510 數據被發送到一個URL。 739 00:51:40,510 --> 00:51:45,120 有時候,我們看到的字符串密碼=密碼。 740 00:51:45,120 --> 00:51:49,060 這是很容易察覺,或黑莓和Android的字符串密碼。 741 00:51:49,060 --> 00:51:53,680 它實際上是很容易檢查,因為幾乎總是 742 00:51:53,680 --> 00:51:57,030 開發商命名的變量密碼 743 00:51:57,030 --> 00:52:02,290 一些變化的密碼。 744 00:52:02,290 --> 00:52:05,200 我提到,我們做靜態分析Veracode的, 745 00:52:05,200 --> 00:52:11,790 因此,我們已經分析了數百個Android和iOS應用程序。 746 00:52:11,790 --> 00:52:15,160 我們已經建立了完整的模型,我們就可以對其進行掃描 747 00:52:15,160 --> 00:52:19,280 對於不同的漏洞,尤其是我在談論的漏洞, 748 00:52:19,280 --> 00:52:21,050 我這裡有一些數據。 749 00:52:21,050 --> 00:52:24,320 68.5%的Andr​​oid應用程序中,我們看著 750 00:52:24,320 --> 00:52:28,590 打破了加密代碼, 751 00:52:28,590 --> 00:52:33,240 這對我們來說,我們可以不檢測,如果你做你自己的加密例程, 752 00:52:33,240 --> 00:52:38,980 不,這是一個好主意,但其實這是使用發布的API 753 00:52:38,980 --> 00:52:42,530 在該平台上,但它們以這樣的方式做 754 00:52:42,530 --> 00:52:46,680 加密將是脆弱的,68.5。 755 00:52:46,680 --> 00:52:49,870 這是人發送我們自己的應用程序實際上是因為 756 00:52:49,870 --> 00:52:53,730 他們認為這是一個好主意,做安全測試。 757 00:52:53,730 --> 00:52:56,960 這些已經有人可能會想牢固, 758 00:52:56,960 --> 00:52:59,540 所以它可能更糟。 759 00:52:59,540 --> 00:53:02,690 >> 我沒有談論控制換行注射。 760 00:53:02,690 --> 00:53:07,640 這是我們檢查的東西,但它不是風險的問題。 761 00:53:07,640 --> 00:53:15,390 信息洩漏,這是其中的敏感數據被發送關閉設備。 762 00:53:15,390 --> 00:53:19,270 我們發現,在40%的申請。 763 00:53:19,270 --> 00:53:23,540 時間和狀態,這些都是比賽條件類型的問題,通常是相當困難的利用, 764 00:53:23,540 --> 00:53:26,170 所以我不談論這個,但我們看著它。 765 00:53:26,170 --> 00:53:28,750 23%有SQL注入的問題。 766 00:53:28,750 --> 00:53:32,020 很多人不知道,很多應用程序 767 00:53:32,020 --> 00:53:35,880 在他們的後端使用一個小的SQL數據庫來存儲數據。 768 00:53:35,880 --> 00:53:40,430 好吧,如果你的數據在網絡上抓住 769 00:53:40,430 --> 00:53:43,800 SQL注入攻擊的字符串 770 00:53:43,800 --> 00:53:45,970 有人可能會危及通過該設備, 771 00:53:45,970 --> 00:53:49,800 所以我覺得有這樣的問題,我們發現約40%的Web應用程序, 772 00:53:49,800 --> 00:53:52,840 這是一個巨大的防疫問題。 773 00:53:52,840 --> 00:53:55,740 我們發現23%的時間在移動應用程序 774 00:53:55,740 --> 00:54:02,030 這可能是因為許多Web應用程序使用SQL比移動。 775 00:54:02,030 --> 00:54:05,580 >> 然後,我們仍然可以看到一些跨站點腳本,授權問題, 776 00:54:05,580 --> 00:54:09,400 然後憑證管理,這就是你有你的硬編碼密碼。 777 00:54:09,400 --> 00:54:14,540 在5%的應用中,我們看到這一點。 778 00:54:14,540 --> 00:54:17,970 然後我們有一些iOS上的數據。 779 00:54:17,970 --> 00:54:20,180 81%以上的有錯誤處理的問題。 780 00:54:20,180 --> 00:54:23,130 這是更多的代碼質量問題, 781 00:54:23,130 --> 00:54:28,010 但67%的加密問題,所以不太為Android不好。 782 00:54:28,010 --> 00:54:32,440 也許API是稍微容易一些,例如代碼iOS上更好一點。 783 00:54:32,440 --> 00:54:35,420 但仍然是一個非常高的比例。 784 00:54:35,420 --> 00:54:39,040 我們有54%的信息洩漏, 785 00:54:39,040 --> 00:54:42,080 約30%的緩衝區管理錯誤。 786 00:54:42,080 --> 00:54:45,930 這就是地方有可能是內存損壞問題。 787 00:54:45,930 --> 00:54:50,350 事實證明,這不是太大的問題,為剝削 788 00:54:50,350 --> 00:54:56,450 在iOS上,因為所有的代碼都必須簽署, 789 00:54:56,450 --> 00:55:02,210 所以很難攻擊者執行任意代碼在iOS。 790 00:55:02,210 --> 00:55:07,880 代碼質量,目錄遍歷,但是當時的憑據管理為14.6%, 791 00:55:07,880 --> 00:55:09,250 所以不如在Android。 792 00:55:09,250 --> 00:55:13,240 我們有沒有正確處理密碼的人。 793 00:55:13,240 --> 00:55:15,790 然後將數字錯誤和緩衝區溢出 794 00:55:15,790 --> 00:55:22,680 那些更將是iOS上的代碼質量問題。 795 00:55:22,680 --> 00:55:26,110 >> 這是對我的介紹。我不知道,如果我們的時間或不。 796 00:55:26,110 --> 00:55:29,540 我不知道,如果有任何問題。 797 00:55:29,540 --> 00:55:33,220 [男]一個快速的問題圍繞碎片和Android市場。 798 00:55:33,220 --> 00:55:36,240 蘋果至少擁有修補。 799 00:55:36,240 --> 00:55:40,780 他們做好得到它在那裡,而在Android空間較少。 800 00:55:40,780 --> 00:55:44,280 你幾乎需要越獄你的手機保持當前 801 00:55:44,280 --> 00:55:46,660 與當前版本的Andr​​oid。 802 00:55:46,660 --> 00:55:50,960 是啊,這是一個巨大的問題,所以,如果你認為約 803 00:55:50,960 --> 00:55:52,280 [男]為什麼不能重複呢? 804 00:55:52,280 --> 00:55:55,610 >> 哦,對了,所以這個問題是關於碎片 805 00:55:55,610 --> 00:56:00,410 在Android平台上的操作系統? 806 00:56:00,410 --> 00:56:05,890 如何影響這些設備的風險度? 807 00:56:05,890 --> 00:56:09,700 它實際上是一個巨大的問題,因為會發生什麼 808 00:56:09,700 --> 00:56:15,110 早期的設備,當有人想出了該設備的越獄, 809 00:56:15,110 --> 00:56:19,960 本質上是特權升級,直到該操作系統更新 810 00:56:19,960 --> 00:56:25,350 任何惡意軟件就可以利用該漏洞完全妥協的設備, 811 00:56:25,350 --> 00:56:30,200 我們看到在Android是為了得到一個新的操作系統 812 00:56:30,200 --> 00:56:34,690 谷歌已經放出來的操作系統,然後在硬件製造商 813 00:56:34,690 --> 00:56:39,390 來定制它,然後運營商來定制它,並將其交付。 814 00:56:39,390 --> 00:56:43,070 這裡有3個基本的運動部件, 815 00:56:43,070 --> 00:56:47,210 它的轉向,運營商不關心, 816 00:56:47,210 --> 00:56:50,400 和硬件製造商不關心,和谷歌沒有催促他們足夠 817 00:56:50,400 --> 00:56:54,430 做任何事,所以基本上有一半以上的設備 818 00:56:54,430 --> 00:57:00,590 他們具有這些特權提升漏洞的操作系統, 819 00:57:00,590 --> 00:57:08,440 所以如果你得到你的Andr​​oid設備上的惡意軟件,它更是一個問題。 820 00:57:08,440 --> 00:57:10,350 >> 好的,非常感謝你。 821 00:57:10,350 --> 00:57:12,310 [鼓掌] 822 00:57:12,310 --> 00:57:14,310 [CS50.TV]