[Powered by Google Translate] [講座] [衛冕設備：移動應用安全性的背後]
[克里斯Wysopal] [哈佛大學]
[這是CS50。] [CS50.TV]
>> 下午好。我的名字是克里斯Wysopal。
我Veracode的首席技術官和共同創始人。
Veracode的是應用程序的安全公司。
我們測試各種不同的應用，
我今天要談的是移動應用程序的安全性。
我的背景是我一直在做安全研究
很長一段時間，大概只要人。
我在90年代中期開始，
這一段時間，這是相當有趣的，因為
我們有一個模式的改變，在90年代中期。
突然每個人的電腦連接到互聯網，
然後我們有Web應用程序的開端，
這就是我把重點放在了很多，然後。
這很有趣。
現在我們有另一個範式變化發生計算，
這是移動應用的轉變。
>> 我覺得它是一種類似的時間，那麼它是在90年代後期
當我們在調查Web應用程序和發現缺陷，如
會話管理錯誤和SQL注入
它真的不存在之前，突然他們無處不在
在Web應用程序，而現在，我花了很多的時間
正在尋找在移動應用和看發生了什麼事在野外。
移動應用程序真的要佔主導地位的計算平台，
所以我們真的需要花費大量的時間，如果你在安防行業
專注於Web應用程序。
有29億移動應用程序下載在2011年。
它的預測是，到2014年的76億的應用程序。
有686萬台設備，今年將要購買的，
所以這是那裡的人都打算做
他們的大部分客戶端計算向前發展。
>> 我是說富達投資公司的副總裁。
幾個月前，他說，他們只是看到了更多的流量
從他們的客戶群做金融交易
在他們的移動應用比在他們的網站上，
所以在過去一直是常見的用於Web
檢查您的股票行情，您的投資組合管理，
我們實際上看到，在2012年切換
在移動平台上更佔優勢。
當然，如果有任何犯罪活動，
任何惡意活動，它要開始把重點放在移動平台
隨著時間的推移，人們切換。
如果你看看移動平台
來看看它的平台的風險是非常有用的，把它分解成不同的層，
就像你會做一台台式電腦，
你想想不同的層，軟件，操作系統，
網絡層，硬件層，當然，還有所有這些層上的漏洞。
>> 同樣的事情發生在移動。
但是，移動設備，它似乎，這些層更糟。
為一體，網絡層移動的問題
因為很多人在辦公室或在家
有線連接，或者他們有安全的Wi-Fi連接，
有很多的移動設備，你顯然是家庭以外的
或者在辦公室以外的很多，而且如果你使用的Wi-Fi
你可能正在使用不安全的Wi-Fi連接，
的東西，這是一個公共Wi-Fi連接，
所以，我們認為有關移動應用程序時，我們必須考慮到
這些應用程序的網絡環境是風險
正在使用Wi-Fi時。
而當我進入更多的移動應用風險
你就會明白為什麼這是更重要的。
移動設備在硬件水平上均存在風險。
這是一個正在進行的研究領域。
人們稱這些寬帶攻擊或基帶攻擊
你攻擊的固件在電台收聽。
>> 這些是真正可怕的攻擊，因為
用戶不必做任何事情。
在射頻範圍內，你可以打很多的設備
一次，好像每當這個研究冒泡
迅速被歸類
人一舉左右，並說，“在這裡，告訴我們這件事，並請停止談論它。”
還有一些研究將在寬帶領域，
但它似乎是非常噓噓。
我覺得更重要的是一個民族國家的類型研究是怎麼回事。
一個活躍的研究領域，雖然是操作系統層，
再次強調，這是比桌面計算世界不同
因為在移動領域，你有這些球隊的人叫越獄，
越獄不同於常規漏洞的研究人員。
他們試圖找到在操作系統中的漏洞，
但，他們正試圖找到漏洞的原因是不是
闖入別人的機器和妥協。
這是打入自己的電腦。
>> 他們想打入自己的手機，修改自己的移動操作系統
使他們能夠運行的應用程序，他們的選擇
具有完全的管理權限和改變的事情，
他們不希望這告訴供應商。
他們不喜歡一名安全研究人員，這是一個白帽子安全研究員
這是怎麼回事，做負責任的披露，並告訴它的供應商。
他們想要做的這項研究，他們希望實際發布
一個漏洞或一個rootkit或越獄的代碼，
他們想要做的戰略，像右後
廠商會在新的操作系統。
你有這樣的敵對關係
在移動操作系統級別的漏洞，
我覺得這是挺有意思的，我們看到它的一個地方
它使得有好公佈的漏洞的代碼在那裡
內核級漏洞，
我們已經看到了那些實際使用惡意軟件編寫者。
它比PC世界有一點點不同。
然後最後一層是最佳的層，應用層。
這就是我要說說今天。
>> 存在其他層，其他層發揮到它
但我主要是要說說這是怎麼回事，在應用層
在沙箱中運行的代碼。
它不具有管理權限。
它使用API​​的設備，
但仍然，很多的惡意活動，很多風險可以發生在該層
因為這層，所有的信息。
應用程序可以訪問所有的設備上的信息
如果他們有正確的權限，
他們可以訪問的移動設備上的不同傳感器之間的
GPS傳感器，麥克風，攝像頭，你有什麼。
即使我們只談論在應用層
我們有一個很大的風險。
其他的事情，不同的移動環境
是所有操作系統的球員，無論是黑莓或Android
或iOS或Windows手機，他們都有一個細粒度的權限模型，
，這是一個到操作系統中內置的方式，他們
的想法，這不是你認為的風險。
即使你把所有的聯繫人在那裡，你的所有個人信息，
你有你的照片，你有你的位置在那裡，
你存儲在那裡為自動登錄，您的銀行銷，它是安全的，因為
應用程序必須有一定的權限來獲得某些部分
的移動設備上的信息，並且用戶具有帶有
這些權限和說沒關係。
>> 它的問題是，用戶總是說沒事。
作為安全性的人，我知道，你可以提示用戶，
說真的不好的事情將要發生，你希望它發生嗎？
如果他們在匆忙或有什麼東西真的很誘人，在另一側，
就像一場將要被安裝的，他們一直在等待，
他們打算按一下好。
這就是為什麼我說我的幻燈片上，在這裡只是讓我一扔鳥已經在豬，
你可以看到幻燈片上，這裡有黑莓權限“框中的例子。
它說：“請設置黑莓手機旅遊應用程序的權限
後，點擊下面的按鈕，用戶基本上只是會說
設置權限和保存。
這裡有一個Android的提示，它顯示，
它實際上把的東西，幾乎看起來像一個警告。
它有一種屈服的跡象，有說網絡通信，電話，
但用戶要點擊安裝，正確的嗎？
然後蘋果是完全無害的。
它不提供任何形式的警告。
這只是蘋果想用您的當前位置。
當然，你要點擊沒關係。
>> 有這種細粒度的權限模型，
和應用程序必須有一個manifest文件中聲明
瀏覽顯示給用戶的權限所需要的，這將
用戶將不得不說，我授予這些權限。
但是，說實話。
用戶總是說沒事。
讓我們來快速瀏覽一下權限，這些應用程序所要求的
一些有權限。
這家公司的Praetorian去年做了一個調查
53,000的應用程序在Android市場和第三方市場分析，
所以這是所有的Andr​​oid。
和平均應用程序要求的權限。
一些應用程序要求117權限，
所以很明顯，這些都是非常細粒度的用戶了解和方式過於複雜
如果他們提出了與此應用程序需要117權限。
這就像是長達45頁的最終用戶許可協議。
也許不久後，他們將有一個選項，它就像
打印的權限，並給我發電子郵件。
>> 但是，如果你看一下一些有趣的頂級權限
24％的應用程序，他們下載了53,000
請求的從設備的GPS信息。
8％閱讀觸點。
發送短信4％，3％，收到的短信。
2％，錄製的音頻。
1％處理撥出電話。
我不知道。
我不認為4％的應用程序商店中的應用程序確實需要發送短信，
所以我認為這是一個暗示，不良的東西是怎麼回事。
8％的應用程序需要讀取您的聯繫人列表。
它可能不是必要的。
有關權限的其他有趣的事情之一是
如果您鏈接到您的應用程序在共享庫
那些繼承權限的應用程序，
所以如果你的應用程序需要的聯繫人列表或需要GPS定位功能
鏈接在廣告庫中，例如，
該廣告庫也將能夠訪問聯繫人
也能夠訪問的GPS位置，
的應用程序的開發人員知道什麼廣告庫中運行的代碼。
他們只是聯繫起來，因為他們想賺錢他們的應用程序。
>> 這是哪裡，我會談論一些這樣的例子，
一個叫潘多拉的應用程序開發人員的應用程序
可能在不知不覺中被洩露信息
從他們的用戶，因為他們的圖書館鏈接中。
在那裡，看著所有不同的應用程序測量景觀
已在新聞報導的惡意或做一些用戶不想
然後檢查了很多應用程序，移動應用程序上，我們做了很多的靜態二進制分析，
所以我們已經檢查了他們並且看著代碼本身
我們來到了我們所說的我們的前10名名單在應用中的危險行為。
它分解成2個部分，惡意代碼，
所以這些都是不好的事情，應用程序可能會做
很可能是一個惡意的個人
專門整理中的應用，但它是一個有點模糊。
這可能是一些開發商認為是正常的，
但它結束了由用戶所想的是惡意的。
>> 然後第二部分就是我們所說的編碼漏洞，
這些都是開發商基本上是決策失誤
或根本不知道如何安全地編寫應用程序，
這把應用程序用戶處於危險之中。
我會去通過這些細節，並給出一些例子。
僅供參考，我希望把OWASP移動前10名名單。
這些都是10個問題，一組在OWASP
開放Web應用安全項目，他們有一個工作組
工作在移動前10名之列。
他們有一個非常有名的網絡排名前10位名單，這是前1​​0名
最危險的事情，你可以在一個web應用程序。
他們正在做同樣的事情，為移動電話，
他們的名單比我們有一點不同。
6，滿分10是相同的。
他們有4個是不同的。
我覺得他們有一點點不同的看法
在移動應用程序中的風險，那裡有很多自己的問題
真的如何將應用程序的後端服務器通信
或後端服務器上發生了什麼事情，
沒有這麼多的應用程序，有危險的行為，只是簡單的客戶端應用程序。
>> 紅色在這裡的2個列表之間的差異。
我的研究團隊和一些實際上已經促成這個項目，
所以我們會看到隨著時間的推移會發生什麼，但我認為這裡的外賣
我們真的不知道是在移動應用程序中的前10名名單，因為
他們真的只有2年或3年左右，現在
有沒有足夠的時間去真正研究操作系統
他們有能力，有沒有足夠的時間
惡意的社會，如果你願意，已經花了足夠的時間
試圖攻擊用戶通過移動應用程序，所以我希望這些列表來改變一點點。
但現在，這是前1​​0名的事情擔心。
你可能不知道從何惡意移動代碼在移動側
它是如何獲取到設備？
北卡羅萊納州有一個項目稱為移動惡意軟件基因組計劃
他們，因為他們可以收集盡可能多的手機惡意軟件和分析，
他們已經打破了注射載體，移動惡意軟件的使用，
和86％使用的技術稱為重新包裝，
而這僅僅是Android平台上的
你真的可以做到這一點重新包裝。
>> 原因是Android的代碼是建立與
一個叫做Dalvik的Java字節碼，這是很容易的把。
壞傢伙可以做的是
一個Android應用程序，反編譯，
插入惡意代碼，重新編譯它，
然後把它看來是一個新版本的該應用程序在App Store中，
或只是可能改變應用程序的名稱。
如果它是某種形式的遊戲，稍微更改名稱，
，所以這86％的手機惡意軟件是如何被分配的重新包裝。
還有另一種技術，稱為更新
重新包裝非常相似，但實際上你不把惡意代碼中。
你要做的就是你把一個小的更新機制。
你反編譯，你把更新機制，並重新編譯它，
然後應用程序正在運行時，它打破了惡意軟件到設備上。
>> 到目前為止，大多數是那些技術。
沒有真正意義上下載驅動車處或驅動器的手機上下載，
這可能是一個釣魚攻擊一樣。
嘿，這真的很酷的網站，
或者你需要去這個網站，並填寫此表
保持繼續做的事情。
這些都是釣魚式攻擊。
同樣的事情可以發生在移動平台上，在那裡他們
指向一個移動應用程序下載，說：“嗨，這是美國銀行（Bank of America）。”
“我們看到了你使用這個應用程序。”
“你應該下載其他應用程序。”
從理論上講，可以工作。
也許它只是沒有被足夠使用，以確定它是否是成功與否，
但他們發現，小於1％的時間，技術被使用。
大部分時間裡，它的確是一個重新包裝的代碼。
>> 還有另外一類稱為獨立
有人只是建立了一個全新的應用。
他們構建一個應用程序，聲稱是。
這不是別的東西重新包裝，並具有惡意代碼。
這是用14％的時間。
現在我想談談什麼是惡意代碼做？
有第一的惡意軟件之一
你可以考慮一個間諜軟件。
它用戶基本上間諜。
它收集電子郵件，短信。
打開麥克風。
豐收聯絡簿，並把它發送給別人。
這種類型的間諜軟件在PC機上，存在
所以人們在移動設備上嘗試這樣做非常有意義。
>> 其中的第一個例子，這是一個稱為秘密短信複製的程序。
這是一對夫婦幾年前，在Android市場
當時的想法是，如果你有機會訪問到別人的Andr​​oid手機
你想窺探，也許這是你的配偶
或您的顯著其他你想窺視他們的短信，
你可以下載的應用程序，並將其安裝和配置
發送SMS文本消息給你一份
每一個SMS文本消息，他們得到了。
這顯然是違反了App Store的服務條款，
這是從Android市場中移除它在那裡的18小時內，
讓極少數人是因為這樣的風險。
現在，我認為，如果該程序被稱為東西也許有點不太挑釁
它可能會像秘密短信複製工作好了很多。
但它是一種顯而易見的。
>> 我們可以做的事情之一的應用程序，以確定是否有這樣的行為，我們不希望
是為了視察代碼。
這實際上是很容易的，因為我們可以在Android上做反編譯的應用程序。
在iOS上，你可以使用像IDA Pro的反彙編
看什麼應用程序的API調用和它在做什麼。
我們寫自己的二進制代碼的靜態分析
我們這樣做，所以你可以做的是，你可以說
設備沒有做任何事情，基本上是我從事間諜活動，或跟踪我？
我這裡有一些例子，在iPhone上。
這第一個例子是如何在電話上訪問的UUID。
這其實是蘋果剛剛禁止為新的應用，
但老，你可能已經在你的手機上運行的應用程序仍然可以這樣做，
使唯一的標識符可以被用來追踪您
在許多不同的應用程序。
>> 在Android中，我有一個例子，這裡的設備的位置。
你可以看到，如果有，API調用，應用程序跟踪，
你可以看到，無論是獲得精確的位置或粗略的位置。
然後在底部在這裡，我有一個例子，如何在BlackBerry
應用程序可能訪問您的收件箱中的電子郵件消息。
這些都是樣的東西，你可以檢查看看
如果應用程序正在做這些事情。
第二大類惡意行為，這恐怕是目前最大的一類，
擅自撥號，未經授權的溢價SMS短信
或未經授權的付款。
另一件事是關於手機的獨特功能
設備迷上計費帳戶，
活動時發生在手機上
它可以創建費用。
您可以通過電話購買的東西，
當您發送優質的SMS文本消息其實你給錢
到另一側上的電話號碼的帳戶持有人。
這些股票報價或讓你的每日星座運勢或其他東西，
但它們可以被設置為通過發送SMS文本訂購商品。
人們把錢給紅十字會發送短信。
你可以給$ 10這樣。
>> 攻擊者，他們做了什麼，他們成立了
佔在國外，它們嵌入在惡意軟件
手機將發出溢價SMS文本消息，
說了幾次了一天，你意識到你已經花了一個月的結束
或者幾十甚至上百美元，而他們的錢走開。
這變得如此糟糕，這是第一件事，是Android
市場或谷歌的地方，它是Android市場的時候，
它現在是谷歌遊戲的第一件事情，谷歌開始檢查。
當谷歌在他們的應用程序商店開始銷售Android應用程序
他們說他們不會去檢查什麼。
我們會拉一旦我們被告知，他們已經打破了我們的服務條款的應用程序，
但我們不打算以任何檢查。
嗯，大約一年前，它變得如此糟糕，這個溢價的SMS文本消息惡意軟件
這是第一件事，他們開始檢查。
如果一個應用程序可以發送短信
他們進一步手動審議該應用程序。
他們尋找的API調用這個，
現在自那時以來，谷歌已經展開，
但是這是他們的第一件事就是開始尋找。
>> 其他一些應用程序做了一些短信消息，
這Android Qicsomos的，我想它被稱為。
在移動這個CarrierIQ出來有這個當前事件
如間諜軟件把設備上的運營商，
所以人們想知道，這是脆弱的，如果他們的手機，
這是一個免費的應用程序測試。
嗯，當然，這是什麼應用程序是收費短訊發送短信，
所以通過測試，看看如果你感染了間諜軟件
您加載惡意軟件到您的設備。
我們看到同樣的事情發生在最後的超級碗。
勁爆足球比賽有一個假的版本
優質的SMS文本消息發送。
它實際上是試圖，太在設備上創建一個殭屍網絡。
在這裡，我有一些例子。
有趣的是，蘋果很聰明，
他們沒有在所有，允許應用程序發送短信。
任何應用程序可以做到這一點。
這是一個偉大的方式擺脫一整類漏洞，
但在Android上，你可以做到這一點，當然，你可以在BlackBerry做了。
有趣的是，所有你需要的是在BlackBerry Internet權限
發送SMS文本消息。
>> 其他的事情，真的，我們來看看
當我們正在尋找，看看是否有惡意，只是什麼樣的
未經授權的網絡活動，如在網絡活動
該應用被認為必須有它的功能，
並期待在這個其他網絡活動。
也許一個應用程序，工作，通過HTTP來獲取數據，
但如果它做的事情通過電子郵件或短信或藍牙或類似的東西
現在，應用程序可能是惡意的，所以這是另一回事，您可以檢查的。
這張幻燈片上，我有一些這方面的例子。
惡意軟件，我們看到另一個有趣的事情發生在2009年，
它發生在一個大的方式。
我不知道它是否出現過這樣的情況，所以從那時起，但它是一個應用程序
模擬其他應用程序。
有一組應用程序，它被冠以09Droid的攻擊，
有人認為有很多小區域，中型銀行
沒有網上銀行的應用，
所以他們做了什麼，他們建立了約50網上銀行的應用
他們所做的一切的用戶名和密碼
並重定向到該網站。
因此，他們把這些都在谷歌市場，
在Android市場，而當有人搜索，看看他們的銀行
有一個應用程序，他們會發現假的應用程序，
收集他們的憑據，然後重定向到他們的網站。
的方式，這實際上成為的應用程序分別上漲了幾個星期，
且有成千上萬下載。
>> 這揭發的方式是有人有問題
用的應用程序之一，他們稱他們的銀行，
他們叫銀行的客戶支持熱線說，
“我有一個問題，您的移動銀行應用程序。”
“你能幫幫我嗎？”
他們說，“我們沒有一個移動銀行應用程序。”
這開始了調查。
該銀行稱谷歌，那麼谷歌看了看說，
“哇，同一作者寫的50家銀行申請”，把他們全都下來。
但可以肯定，這可能再次發生。
不同的銀行在這裡有列表
這個騙局的一部分。
一個應用程序可以做的另一件事是提出另一個應用程序的UI。
雖然它的運行，它可以彈出Facebook的UI。
它說，你必須把你的用戶名和密碼才能繼續
或任何一個網站的用戶名和密碼的用戶界面
用戶使用，也許只是試圖欺騙用戶
到把他們的憑據英寸
這的確是一個直線平行的電子郵件釣魚攻擊
有人向您發送一封電子郵件
並給你一個網站基本上是一個假的UI
您可以訪問。
>> 其他的事情，我們期待在惡意代碼的系統修改。
你可以看一下所有的API調用需要root權限
正確執行。
更改設備的Web代理是一個應用程序
不應該是能夠做到的。
但是，如果應用程序的代碼在那裡做
你知道，它可能是一個惡意應用程序
或非常極有可能是一個惡意應用程序，
所以會發生什麼事是，應用程序將有一些特權升級方式。
這將有一些特權升級漏洞
在應用程序中，然後一次升級特權
它會做修改這些系統。
你可以找到惡意軟件，有特權升級
它甚至不知道如何的特權升級
漏洞的事​​情發生，這是一個不錯的，簡單的方法
尋找惡意軟件。
DroidDream的Andr​​oid惡意軟件很可能是最有名的一塊。
過不了幾天我認為這影響了約25萬用戶
之前被發現。
他們重新包裝50假的應用程序，
把它們放在Android應用程序商店，
基本上，它使用Android越獄的代碼，提升權限
然後安裝一個指揮和控制，並把所有的受害者
成一個殭屍網絡，但你可以發現這
如果你是掃描應用程序，只是在尋找
API調用，需要root權限才能正確執行。
>> 有一個例子，我在這裡已經改變代理，
這實際上是只可在Android。
你可以看到我給你很多的例子在Android
因為這是最活躍的惡意軟件生態系統
因為它真的很容易讓攻擊者獲取惡意代碼
進入Android市場。
這不是那麼容易的事，在蘋果App Store
因為蘋果需要開發自己的身份
並簽署代碼。
他們實際檢查你是誰，蘋果實際上是審議申請。
我們沒有看到真正的惡意軟件，設備越來越妥協了很多。
我會談談一些例子，這是真正的隱私得到妥協，
蘋果設備上到底發生了什麼。
尋找惡意代碼，危險的代碼，在設備的另一件事
是邏輯或定時炸彈，定時炸彈可能
更容易尋找比邏輯炸彈。
但隨著時間的推移炸彈，你可以做什麼的，你可以看看
代碼中的測試時間或絕對時間的地方尋找
之前發生在應用程序的某些功能。
這可以隱藏該活動從用戶，
所以它的發生在深夜。
DroidDream其所有活動之間當地時間上午11點和8
嘗試這樣做，而用戶可能無法使用他們的設備。
>> 這樣做的另一個原因是，如果人們使用應用程序行為分析，
在沙箱中運行的應用程序到應用程序的行為是什麼，
他們可以使用基於時間的邏輯活動
當應用程序是不是在沙箱中。
例如，像蘋果的應用程序商店
運行應用程序，但他們可能不運行的每個應用程序，比如說，30天
在審批之前，所以你可以把
沒關係，只說在你的應用程序的邏輯，做壞事
30天之後，已經或之後的應用程序的發布日期後30日內，
可以幫助人們檢查惡意代碼隱藏。
如果反病毒公司都運行在沙箱的東西
或自己的應用程序商店，這可以幫助
隱藏從該檢查。
現在，它的另一面，是很容易找到與靜態分析，
所以實際上檢查代碼，你可以看看所有的地方
應用測試的時間和檢查這樣。
在這裡，我這3個不同的平台上有一些例子
時間可以檢查應用程序製造商
所以您知道要尋找什麼，如果你檢查應用程序的靜態。
>> 我剛剛經歷了一大堆不同的惡意活動
在野生環境中，我們已經看到，但哪些是最流行的？
這同樣來自北卡羅萊納州立移動基因組計劃的研究
公佈了一些數據，基本上有4個區域
他們看到那裡有很多的活動。
37％的應用程序沒有特權升級，
所以他們在那裡有一些類型的越獄代碼
他們試圖提升自己的權限，讓他們可以
做API作為操作系統上運行的命令。
的應用程序有45％的溢價短信，
所以這是一個巨大的比例，試圖直接賺錢。
93％的人遠程控制，所以他們試圖建立一個殭屍網絡，移動殭屍網絡。
45％的收穫識別信息
像電話號碼的UUID，GPS定位，用戶帳戶，
這加起來超過100個，因為大多數惡意軟件嘗試這些事情做了幾個。
>> 我要切換到下半年，談談代碼漏洞。
這是下半年風險的活動。
這是基本上是開發商的決策失誤。
一個合法的開發商寫一個合法的應用程序
決策失誤或移動平台的風險一無所知。
他們只是不知道如何做一個安全的移動應用程序，
或有時開發商不關心把用戶風險。
有時，他們的業務模式的一部分可能是
收穫用戶的個人信息。
這是其他類別的排序，這就是為什麼這一些惡意
與合法開始流血，因為有不同的意見
用戶想要什麼和什麼之間的用戶認為風險
和什麼樣的應用程序開發人員認為有風險的。
當然，它不是在大多數情況下，應用程序開發人員的數據。
>> 最後，發生這種情況的另一種方式是開發者可能會鏈接
一個共享庫，有漏洞或這種危險行為
他們不知道。
第一類是敏感數據洩漏，
這是當應用程序收集的信息
如位置，通訊錄信息，所有者信息
和發送裝置關機。
而一旦關閉設備，我們不知道發生了什麼信息。
它可以存儲在不安全的應用程序開發人員。
我們已經看到了應用程序開發人員得到妥協，
他們存儲的數據被採取。
這在幾個月前發生在佛羅里達開發商
- 它是一個龐大的數字iPad的UUID和設備名稱
被洩露，因為有人，我覺得它是匿名的，
聲稱要做到這一點，闖進這個開發商的服務器
並偷走數以百萬計的iPad的UUID
和電腦名稱。
不是最危險的信息，
但如果這是存儲的用戶名和密碼
家庭住址？
的應用程序商店有很多這方面的信息。
風險是存在的。
>> 其他的事情可能發生的是，如果開發商不照顧
保護數據通道，這就是我要談的另一大漏洞，
數據被明文發送。
如果用戶是在公共Wi-Fi網絡
或者有人嗅探互聯網上某個地方
沿路徑的數據正被暴露。
一個非常著名的案例發生此信息洩漏與潘多拉
這是我們研究的東西在Veracode的。
我們聽說，有一個我覺得它是一個聯邦貿易委員會
調查與潘多拉。
我們說：“這是怎麼回事呢？讓我們開始挖掘進入潘多拉應用程序。”
我們確定的是潘多拉應用程序收集
你的性別和年齡，
而且還訪問了您的GPS位置，以及潘多拉應用程序
這樣做對他們說什麼正當理由。
他們玩潘多拉的音樂是音樂流應用程序
玩音樂，他們只在美國的許可，
所以他們不得不檢查遵守他們有他們的許可協議
為音樂，用戶是在美國。
他們也想遵守與家長諮詢
圍繞在音樂的成人語言，
，所以它是一個自願性的計劃，但他們想遵守
13兒童發揮明確的歌詞。
>> 他們收集這些數據的正當理由。
他們的應用程序的權限做到這一點。
用戶認為這是合法的。但是，什麼發生了什麼？
他們掛在3或4個不同的廣告庫。
現在一下子所有這些廣告庫
獲得此相同的信息的訪問。
廣告庫，如果你看一下廣告庫中的代碼
他們做了什麼，是每一個廣告庫說
“我的應用程序是否有權限來獲取GPS位置嗎？”
“哦，這不好吧，告訴我的GPS位置。”
每一個廣告庫這樣做，
如果應用程序不具備GPS功能的權限
它不會是能夠得到它，但如果這樣做，就會得到它。
這是商業模式的廣告庫
反對用戶的隱私。
有過研究，在那裡，會說，如果你知道的年齡
一個人，你知道自己的位置
他們晚上睡覺的地方，因為你有他們的GPS坐標
同時，他們也許正在睡覺，你知道那個人究竟是誰
因為你可以決定該家庭成員是那個人。
實際上這是識別廣告
你是誰，它看起來是合法的。
我只想我的流媒體音樂，這是唯一的方式得到它。
>> 好吧，我們暴露了這一點。
我們寫這在幾個博客文章，
它橫空出世，有人從滾石雜誌
閱讀我們的博客文章，寫自己的博客，它的滾石，
第二天潘多拉認為這是一個好主意
刪除廣告從他們的應用程序庫。
據我所知，他們是唯一的，他們應該受到表揚。
我覺得他們的應用程序，這樣做的唯一的免費增值型。
所有其他的免費增值應用也有同樣的行為，
所以，你要想想什麼樣的數據，你給
這些免費增值應用，因為它的一切都會給廣告客戶。
禁衛軍對於共享庫也做了一項研究說，
“讓我們看看哪些共享庫頂部的共享庫，”這是數據。
>> 他們分析了53,000個應用程序，
和數字1的共享庫的AdMob。
它實際上是在38％的應用在那裡，
所以您正在使用的應用程序的38％
您的個人信息可能收穫
並將其發送到廣告網絡。
阿帕奇和Android分別為8％和6％，
那麼這些其他的底部向下，谷歌廣告，亂舞，
手機市公司Millennial Media，
這些是所​​有廣告公司，然後，有趣的是，
掛在Facebook的庫4％
大概做認證通過Facebook
所以應用程序可以驗證了Facebook。
但是，這也意味著該公司的Facebook控制代碼
在4％的Andr​​oid手機應用程序運行在那裡，
他們有訪問該應用程序的所有數據的權限來獲得。
Facebook的實質上是嘗試出售廣告空間。
這是他們的商業模式。
>> 如果你看看這整個生態系統具有這些權限
和共享庫，你開始看到
在一個假定的合法的應用程序，你有一個很大的風險。
同樣類似的事情發生了潘多拉
與應用程序稱為路徑發生，
和路徑以為他們是有幫助的，友好的開發。
他們只是想給你一個很好的用戶體驗，
它橫空出世，不提示用戶的情況下，或告訴用戶什麼
這發生在iPhone和Android上，
潘多拉的應用程序是iPhone和Android
路徑應用抓住你的整個通訊錄
並上傳到路徑只是當你安裝並運行應用程序，
他們沒有告訴你這一點。
他們認為這是真的對你有幫助
能夠與大家分享您的地址簿中的所有的人
你使用的應用程序的路徑。
>> 嗯，很明顯的路徑認為這是非常適合他們公司。
沒有那麼大的用戶。
你認為它也許是一件事，如果一個十幾歲的
使用這個應用程序，他們的許多朋友都在那裡，
但如果它是一家公司的CEO，安裝路徑
然後突然整個地址簿的所有嗎？
你會得到很多潛在的有價值的聯繫人信息
很多人。
記者從紐約時報，你可能能夠得到的電話號碼
他們的地址簿中的前總統，
如此明顯的敏感信息得到了很多像這樣的東西轉移。
有這樣一個大瓣，路徑道歉。
他們改變他們的應用程序，它甚至影響了蘋果。
蘋果公司表示，“我們將迫使應用程序供應商，以提示用戶
如果他們要收集他們的整個通訊錄。“
>> 它看起來像這裡發生了什麼
當有一個大的侵犯隱私，它使記者
在那裡，我們看到了一個改變。
不過，當然，還有其他的東西在那裡。
LinkedIn的應用收成您的日曆條目，
但蘋果並沒有關於該用戶被提示。
日曆項可以在他們的敏感信息。
你要去哪裡劃清界線？
這的確是一種不斷變化的地方
那裡真的沒有很好的標準有
用戶理解他們的信息時，要在風險
當他們要知道它正在採取。
我們寫了一個應用程序在Veracode的叫一路平安，
基本上，它允許你指向的應用程序在您的iTunes目錄
看，收穫您的詳細地址簿中的所有應用程序。
你可以在這裡看到這個名單上，憤怒的小鳥，
AIM，AroundMe。
“憤怒的小鳥”為什麼需要你的地址簿？
我不知道，但它確實不知何故。
>> 這是很多，很多應用程序做的事情。
您可以檢查代碼。
有定義良好的API，用於iPhone，Android和黑莓
在地址簿中。
你真的可以輕鬆地檢查，這是我們做我們一路平安應用。
下一個類別，不安全的敏感數據存儲，
一些開發商拿東西像針或帳號
或密碼，並將其存儲在設備上的明確。
更糟的是，他們可能會存儲在手機上的一個區域
這是全局可訪問的，像SD卡。
你看這往往在Android，因為Android允許SD卡。
不IPhone裝置。
但是，我們甚至看到這種情況發生在花旗集團（Citigroup）應用程序。
他們的在線銀行應用程序存儲的帳戶號碼不安全，
只是在明確，所以如果你失去了你的設備，
基本上，你失去了你的銀行帳戶。
這就是為什麼我個人不辦銀行在我的iPhone。
我認為這是太冒險了，現在做這類活動。
>> Skype公司也做了同樣的事情。
Skype的，當然，帳戶餘額，用戶名和密碼
訪問該資產。
在清澈的，他們所有的信息存儲在移動設備上。
我這裡有一些例子，創建文件
沒有正確的權限或寫入光盤
不用任何加密的發生。
這一個區域，不安全的敏感數據傳輸，
我提到的這幾次，而且由於公共Wi-Fi
這是應用程序絕對需要做的事情，
這可能是我們所看到的去錯了最。
我想說，其實，我覺得我有實際的數據，
但接近一半的移動應用程序
搞砸做SSL。
他們只是不正確地使用API​​。
我的意思是，所有你所要做的就是按照說明進行操作，並使用API​​，
但他們做的事情不喜歡檢查是否有無效的證書在另一端，
不檢查，如果另一端試圖做一個協議降級攻擊。
>> 開發商，他們希望得到他們的複選框，對不對？
他們的要求是用這個來賣。他們已經用這種出售。
要求是不使用這種安全出售，
所以這是為什麼所有應用程序使用SSL來保護數據
因為它是被傳輸設備確實需要進行檢查
確保這是正確實施。
在這裡，我有一些例子，你可以看到一個應用程序
可能會使用HTTP而不是HTTPS。
在某些情況下，應用程序將回落到HTTP
如果使用HTTPS不工作。
我有另一個呼叫禁用證書檢查，他們已經在Android，
所以可能發生的man-in-the-middle攻擊。
一個無效的證書將被接受。
所有這些情況下，攻擊者將能夠得到
相同的Wi-Fi連接的用戶和訪問所有數據
在互聯網上被發送。
>> 最後，我這裡有最後一類是硬編碼的密碼和鑰匙。
事實上，我們看到很多開發者使用相同的編碼風格
他們時，他​​們建立Web服務器應用程序，
所以他們正在構建一個Java服務器應用程序，和他們硬編碼的關鍵。
那麼，當你建立一個服務器應用程序，是啊，
硬編碼的關鍵，是不是一個好主意。
這使得它很難改變。
但它不是那麼糟糕，因為在服務器端訪問到服務器端？
只有管​​理員。
但是，如果你把相同的代碼和你倒過來一個移動應用程序
現在大家誰擁有移動應用訪問該硬編碼的關鍵，
實際上，我們看到了很多次，我有一些統計數據
我們常常看到這樣的情況。
它實際上是在示例代碼，萬事達卡發布
如何使用他們的服務。
示例代碼表明你將如何只取密碼
在一個硬編碼的字符串，並把它在那裡，
我們知道如何開發者的喜愛，複製和粘貼代碼片段
當他們試圖做一些事情，所以你複製和粘貼的代碼片段
他們給的例子代碼，你有一個不安全的應用程序。
>> 在這裡，我們有一些例子。
第一個是我們看到了很多在他們硬編碼
數據被發送到一個URL。
有時候，我們看到的字符串密碼=密碼。
這是很容易察覺，或黑莓和Android的字符串密碼。
它實際上是很容易檢查，因為幾乎總是
開發商命名的變量密碼
一些變化的密碼。
我提到，我們做靜態分析Veracode的，
因此，我們已經分析了數百個Android和iOS應用程序。
我們已經建立了完整的模型，我們就可以對其進行掃描
對於不同的漏洞，尤其是我在談論的漏洞，
我這裡有一些數據。
68.5％的Andr​​oid應用程序中，我們看著
打破了加密代碼，
這對我們來說，我們可以不檢測，如果你做你自己的加密例程，
不，這是一個好主意，但其實這是使用發布的API
在該平台上，但它們以這樣的方式做
加密將是脆弱的，68.5。
這是人發送我們自己的應用程序實際上是因為
他們認為這是一個好主意，做安全測試。
這些已經有人可能會想牢固，
所以它可能更糟。
>> 我沒有談論控制換行注射。
這是我們檢查的東西，但它不是風險的問題。
信息洩漏，這是其中的敏感數據被發送關閉設備。
我們發現，在40％的申請。
時間和狀態，這些都是比賽條件類型的問題，通常是相當困難的利用，
所以我不談論這個，但我們看著它。
23％有SQL注入的問題。
很多人不知道，很多應用程序
在他們的後端使用一個小的SQL數據庫來存儲數據。
好吧，如果你的數據在網絡上抓住
SQL注入攻擊的字符串
有人可能會危及通過該設備，
所以我覺得有這樣的問題，我們發現約40％的Web應用程序，
這是一個巨大的防疫問題。
我們發現23％的時間在移動應用程序
這可能是因為許多Web應用程序使用SQL比移動。
>> 然後，我們仍然可以看到一些跨站點腳本，授權問題，
然後憑證管理，這就是你有你的硬編碼密碼。
在5％的應用中，我們看到這一點。
然後我們有一些iOS上的數據。
81％以上的有錯誤處理的問題。
這是更多的代碼質量問題，
但67％的加密問題，所以不太為Android不好。
也許API是稍微容易一些，例如代碼iOS上更好一點。
但仍然是一個非常高的比例。
我們有54％的信息洩漏，
約30％的緩衝區管理錯誤。
這就是地方有可能是內存損壞問題。
事實證明，這不是太大的問題，為剝削
在iOS上，因為所有的代碼都必須簽署，
所以很難攻擊者執行任意代碼在iOS。
代碼質量，目錄遍歷，但是當時的憑據管理為14.6％，
所以不如在Android。
我們有沒有正確處理密碼的人。
然後將數字錯誤和緩衝區溢出
那些更將是iOS上的代碼質量問題。
>> 這是對我的介紹。我不知道，如果我們的時間或不。
我不知道，如果有任何問題。
[男]一個快速的問題圍繞碎片和Android市場。
蘋果至少擁有修補。
他們做好得到它在那裡，而在Android空間較少。
你幾乎需要越獄你的手機保持當前
與當前版本的Andr​​oid。
是啊，這是一個巨大的問題，所以，如果你認為約
[男]為什麼不能重複呢？
>> 哦，對了，所以這個問題是關於碎片
在Android平台上的操作系統？
如何影響這些設備的風險度？
它實際上是一個巨大的問題，因為會發生什麼
早期的設備，當有人想出了該設備的越獄，
本質上是特權升級，直到該操作系統更新
任何惡意軟件就可以利用該漏洞完全妥協的設備，
我們看到在Android是為了得到一個新的操作系統
谷歌已經放出來的操作系統，然後在硬件製造商
來定制它，然後運營商來定制它，並將其交付。
這裡有3個基本的運動部件，
它的轉向，運營商不關心，
和硬件製造商不關心，和谷歌沒有催促他們足夠
做任何事，所以基本上有一半以上的設備
他們具有這些特權提升漏洞的操作系統，
所以如果你得到你的Andr​​oid設備上的惡意軟件，它更是一個問題。
>> 好的，非常感謝你。
[鼓掌]
[CS50.TV]