多倫多大學(xué):UC瀏覽器收集并發(fā)送用戶隱私數(shù)據(jù)分析報(bào)告
0×01 問題概要
UC瀏覽器是中國和印度地區(qū)最為流行的web瀏覽器,也是全球第四大移動(dòng)瀏覽器,僅次于chrome、Android瀏覽器和Safari瀏覽器,目前擁有超過5億的用戶群。加拿大多倫多大學(xué)公民實(shí)驗(yàn)室一直在調(diào)查研究這款亞洲地區(qū)較為流行的通信工具,通過調(diào)查比較中文版UC瀏覽器和英文版UC瀏覽器,發(fā)現(xiàn)中文版UC瀏覽器會(huì)收集并發(fā)送用戶的隱私數(shù)據(jù),而英文版則不會(huì)。
個(gè)人驗(yàn)證信息和查詢請(qǐng)求在傳輸過程中沒有被加密:
1.用戶數(shù)據(jù)(IMSI、IMEI、Android ID、WiFi MAC地址)未經(jīng)加密被發(fā)送到阿里巴巴分析工具Umeng上;
2.用戶的位置數(shù)據(jù)(經(jīng)度/緯度、街道名稱)未經(jīng)加密被阿里巴巴地圖工具AMAP發(fā)送出去;
3.用戶的查詢請(qǐng)求未經(jīng)加密被發(fā)送到Shenma(中文版)、yahoo、谷歌(英文版)等搜索引擎上;
即使清理了應(yīng)用程序上的緩存,用戶的隱私信息還是會(huì)保留在緩存里,第三方還是可以訪問用戶的數(shù)據(jù)。
加拿大公民實(shí)驗(yàn)室的研究人員于2015年4月15將這一發(fā)現(xiàn)報(bào)告給了阿里巴巴和UCWeb,并說明了將會(huì)在4月29日或者之后公開這一發(fā)現(xiàn)。阿里巴巴于4月19日給予了回復(fù),稱公司安全工程師正在調(diào)查研究這一問題。研究人員于23日又向他們重申了要在29日之后公開問題詳情,但是阿里巴巴和UC均未給予任何回復(fù)。
研究人員在19日又測試了一下10.4.1-576版本的UC瀏覽器(中文版,從UC官網(wǎng)上下載的),沒有發(fā)現(xiàn)瀏覽器會(huì)向AMAP發(fā)送未經(jīng)加密的數(shù)據(jù),但仍然會(huì)向Umeng組件傳輸未經(jīng)加密的數(shù)據(jù),而且查詢搜索數(shù)據(jù)也仍然未加密。建議使用UC瀏覽器中文版的用戶應(yīng)盡快更新到10.4.1-576及其更高的版本。
0×02 UC瀏覽器簡介
UC瀏覽器是UCWeb Inc.開發(fā)的明***移動(dòng)瀏覽器,目前覆蓋了Android、iOS、windows phone、windows mobile等主流操作系統(tǒng)。UC公司成立于2004年,后被阿里巴巴合并,聯(lián)合開發(fā)出了一款Shenma搜索引擎。
作為全球第四大瀏覽器,UC瀏覽器每天的活躍用戶達(dá)1億人次。UC瀏覽器主頁上會(huì)默認(rèn)顯示一些常用的搜索引擎、社交媒體網(wǎng)站、天氣信息、新聞和購物信息等。擁有***的U3內(nèi)核和云端架構(gòu),支持HTML5應(yīng)用,支持語音搜索。#p#
0×03 方法和技術(shù)分析
通過分析某些中文版UC瀏覽器和英文版UC瀏覽器(均為安卓版)的構(gòu)架、移動(dòng)網(wǎng)絡(luò)數(shù)據(jù)和WiFi流量、數(shù)據(jù)的保留和刪除功能,研究人員發(fā)現(xiàn)了一些較為嚴(yán)重的安全問題。下圖中形象的展示了中文版UC瀏覽器存在的安全問題:
測試裝置
為了檢測UC瀏覽器的安全和隱私功能,我們測試了一些中文版本和英文版本的瀏覽器。因?yàn)槲覀儗?duì)瀏覽器傳輸個(gè)人身份信息時(shí)是否加密十分的感興趣,所以就監(jiān)控了瀏覽器向內(nèi)部服務(wù)器傳輸?shù)臄?shù)據(jù)。
我們了測試安卓模擬器和安卓手機(jī),并用抓包工具WireShark抓取了所有發(fā)送出去的和收到的流量。隨后用反編譯工具APKtool反編譯了從瀏覽器上下載的APK文件,然后分析了和用戶數(shù)據(jù)傳輸功能相關(guān)的代碼。
版本分析
被分析的UC瀏覽器均為安卓系統(tǒng)的瀏覽器,但是從不同的應(yīng)用商店下載的:中文版的UC瀏覽器是2015年3月從小米應(yīng)用商店下載的,英文版是2015年5月直接從官網(wǎng)上下載的。除了語言不同外,中文版默認(rèn)的神馬搜索引擎,而英文版默認(rèn)的是雅虎(印度)和谷歌搜索引擎;中文版主頁上顯示的是百度、新浪微博、優(yōu)酷等,而英文版主頁上顯示的是Google、Facebook、twitter等。
在安裝瀏覽器時(shí),應(yīng)用程序會(huì)給予一個(gè)隱私保護(hù)聲明。在聲明中值得注意的是,瀏覽器會(huì)要求訪問和收集用戶的設(shè)備信息、日志信息、位置信息。收集信息并不可怕,但是中文版的UC瀏覽器收集了這些信息之后并不能安全的傳輸。#p#
3.1 10.2.1-161版本的中文版UC瀏覽器
中文版本UC瀏覽器測試結(jié)果如下表:
而英文版的瀏覽器不會(huì)發(fā)送設(shè)備相關(guān)識(shí)別碼和WiFi的MAC地址。
1.僅在移動(dòng)網(wǎng)絡(luò)下測試中文版UC瀏覽器
在打開瀏覽器的前270秒內(nèi),它會(huì)通過HTTP與以下主機(jī)進(jìn)行通信:
發(fā)送到AMAP的數(shù)據(jù)很容易解密
正如上圖中顯示的,大部分通信都是發(fā)生在應(yīng)用程序和 apilocate.amap.com之間。進(jìn)一步分析這些通信會(huì)發(fā)現(xiàn),在應(yīng)用程序和apilocate.amap.com之間存在一個(gè)很明顯的數(shù)據(jù)交換:
鑒于對(duì)二者之間傳輸?shù)臄?shù)據(jù)很感興趣,于是我們使用一個(gè)免費(fèi)工具pyhttpextract破譯了編碼數(shù)據(jù)塊,然后就發(fā)現(xiàn)了如下的交換數(shù)據(jù):
編碼的數(shù)據(jù)是以‘’的結(jié)構(gòu)發(fā)送的,并且數(shù)據(jù)很大,所以我們懷疑里面會(huì)包含用戶的數(shù)據(jù)。為了要證明里面是否包含了用戶數(shù)據(jù),我們首先要先解密這一數(shù)據(jù)塊。這時(shí)就又用到了解密工具apktool。破譯之后,我們?cè)赾om/aps分類相關(guān)的目錄中找到了‘sreq’字符串。因?yàn)閏om/aps/*目錄序列化了‘’,所以我們下一步就是要看看哪一個(gè).smali文件(安卓系統(tǒng)使用的代碼格式)被譯成了.java文件名:
我們?cè)贏es.java文件中搜尋被加密的應(yīng)用程序組件,而這一文件使用的是對(duì)稱AES/CBC加密方式(使用的是硬編碼密鑰‘autonavi_amaploc’)。加密過程如下圖:
使用硬編碼對(duì)稱加密方式意味著所有知道密鑰的人都可以解密中文版UC瀏覽器的流量,而且密鑰的持有者還可以解密所有之前的數(shù)據(jù)。
我們使用的是標(biāo)準(zhǔn)的AES解密工具來解密‘’數(shù)據(jù)的,為的就是演示要想解密之前的數(shù)據(jù)也是可以的。格式化數(shù)據(jù)為可讀模式:
發(fā)送到apilocate.amap.com數(shù)據(jù)中含有很多設(shè)備及其相關(guān)的標(biāo)識(shí)符。設(shè)備標(biāo)識(shí)符:IMSI、IMEI、和中文版UC瀏覽器相關(guān)的用戶數(shù)據(jù);移動(dòng)網(wǎng)絡(luò)塔信息:移動(dòng)國家代碼(MCC)、移動(dòng)網(wǎng)絡(luò)代碼(MNC)、位置區(qū)域代碼(LAC),移動(dòng)網(wǎng)絡(luò)塔ID和信號(hào)強(qiáng)度。通過這些信息完全可以識(shí)別出設(shè)備、設(shè)備使用者和設(shè)備的位置。
發(fā)送位置信息之后,應(yīng)用程序會(huì)收到一個(gè)未加密的回復(fù),包括用戶的經(jīng)度/緯度(如下圖中的‘cenx’ 和 ‘ceny’字段)和所在街道的名稱。如下圖:
比如我們通過上述信息成功的定位到了我們實(shí)驗(yàn)室所在的位置:
通過上述的分析我們?cè)絹碓较嘈臕MAP就是中文版UC瀏覽器的一個(gè)組件。#p#
向Umeng傳輸未加密的數(shù)據(jù)
正如圖5中顯示的那樣,中文版UC瀏覽器會(huì)定期的和utop.umengcloud.com、upoll.umengcloud.com 聯(lián)系。發(fā)送的信息如下:
上述信息中包含了一些個(gè)人標(biāo)識(shí)符,如IMEI、IMSI、設(shè)備Android ID(’c6’)和構(gòu)架序列號(hào)(’c5’)。
2.在WiFi網(wǎng)絡(luò)下測試UC瀏覽器
向AMAP發(fā)送的數(shù)據(jù)很容易被解密
連接上WiFi,開啟應(yīng)用程序,使其空閑270秒,瀏覽器同樣會(huì)發(fā)送易解密的數(shù)據(jù)。然而,應(yīng)用程序除了會(huì)發(fā)送附近WiFi訪問節(jié)點(diǎn)的數(shù)據(jù)外,還會(huì)發(fā)送它們的MAC地址。
向Umeng發(fā)送未加密的數(shù)據(jù)
當(dāng)連接到WiFi網(wǎng)絡(luò)時(shí),用戶的個(gè)人數(shù)據(jù)就被以未加密的方式發(fā)送給了Umeng。當(dāng)然除了IMEI、IMSI外,還會(huì)發(fā)送設(shè)備的WiFi MAC地址。
將上圖中的代碼轉(zhuǎn)換成可讀模式:
測試中文版UC瀏覽器的搜索功能
中文版的UC瀏覽器使用的是神馬搜索引擎,輸入的搜索查詢?cè)~是不會(huì)被加密的:
刪除瀏覽器的數(shù)據(jù)
UC瀏覽器是有刪除隱私信息選項(xiàng)的,用戶可以刪除瀏覽器上的cookies和歷史記錄。但是,即便用戶刪除了自己的隱私數(shù)據(jù),應(yīng)用程序的DNS查找記錄仍然存在,也就是說沒有從真正的意義上刪除數(shù)據(jù)。
3.2英文版UC瀏覽器(10.4.1.565)
被測試的瀏覽器版本為10.4.1.565,是直接從官網(wǎng)上下載的。和中文版的瀏覽器測試過程一樣,先是空閑測試(移動(dòng)網(wǎng)絡(luò)和WiFi網(wǎng)絡(luò))、搜索、數(shù)據(jù)存儲(chǔ)??臻e測試階段沒有發(fā)現(xiàn)任何問題,設(shè)備不會(huì)傳輸任何的信息。
搜索
英文版的搜索方式有兩種:一種是點(diǎn)擊右上方的“搜索”按鈕;第二種是在左上方的地址欄中直接輸入查詢語句。
通過研究發(fā)現(xiàn)英文版的UC瀏覽器也會(huì)向yahoo發(fā)送未加密的數(shù)據(jù):
另外,在查詢欄的左邊會(huì)出現(xiàn)綠色標(biāo)識(shí)符
這一綠色的標(biāo)識(shí)符可能就會(huì)使用戶放心,因?yàn)槌霈F(xiàn)綠色的標(biāo)識(shí)符就說明用戶的查詢被加密了,其實(shí)不然。
接下來我們?cè)诘刂窓谥休斎肓艘粋€(gè)查詢語句,而這一搜索未經(jīng)加密就被發(fā)送到了Google:
英文版的UC瀏覽器并不會(huì)存儲(chǔ)DNS查詢數(shù)據(jù),也就說如果用戶自己刪除了上網(wǎng)記錄,那瀏覽器上就不會(huì)再有任何的用戶信息了。
0×04 總結(jié)
經(jīng)過我們的研究發(fā)現(xiàn),這兩個(gè)版本的瀏覽器均會(huì)將用戶信息泄露給第三方,但是就安全和隱私方面考慮,中文版的UC瀏覽器更為嚴(yán)重。雖然在中國和印度政府有權(quán)利獲得通信公司、移動(dòng)網(wǎng)絡(luò)廠商、網(wǎng)吧的流量數(shù)據(jù),但是UC瀏覽器的這一問題很可能會(huì)被一些人非法利用。
阿里***回應(yīng):UC瀏覽器新版本已修復(fù)數(shù)據(jù)傳輸風(fēng)險(xiǎn)
5月22日消息,據(jù)國外媒體報(bào)道阿里巴巴旗下UC瀏覽器存在信息傳輸加密安全風(fēng)險(xiǎn)。阿里巴巴對(duì)此回應(yīng)稱對(duì)安全問題高度重視,UC瀏覽器已在***時(shí)間提高信息安全加密級(jí)別,不再存在報(bào)道中提及的風(fēng)險(xiǎn)。目前應(yīng)用商店上的UC瀏覽器***版本,相關(guān)信息已經(jīng)改為安全級(jí)別更高的HTTPS加密方式傳輸。事實(shí)上,該媒體援引加拿大公民實(shí)驗(yàn)室報(bào)告中提到的信息傳輸加密風(fēng)險(xiǎn),在國內(nèi)并非個(gè)案,目前國內(nèi)大部分互聯(lián)網(wǎng)公司均在信息傳輸加密上存在問題。