劉純麗,丁祥偉
移動社交通信類應用的漏洞問題研究
劉純麗1,2,丁祥偉2
(1.池州學院文學與傳媒學院,安徽池州247000;2.安徽永祥地產評估咨詢有限公司,安徽池州247000)
智能移動終端以其豐富的功能應用,為人們日常處理個人信息提供了便捷,尤其是其社交通信類應用相對于傳統的短信息服務及計算機終端應用具有較高的性價比廣泛被接受。同時基于移動終端的社交通信類應用為了增加用戶黏度,滿足用戶網絡世界與現實世界交融的通信需求,均提供了“添加手機聯系人”功能,文中提出了該功能能夠實現大規模收集目標用戶個人信息資料;建立了對上述漏洞的原型系統,并搭建了實驗平臺進行了包含大規模數據的實驗,同時基于兩款社交通信類應用的整合分析,以及對數據的一致性和真實性分析,并提出了可行的漏洞防御方案。
移動社交通信類應用;智能移動終端網絡;隱私泄漏;手機聯系人;安全防御
DOI:10.13420/j.cnki.jczu.2015.06.014
近年來,隨著智能移動終端的普及,基于移動互聯網和手機終端的各類應用迅速發展。而其中,基于移動終端的即時通信社交應用程序(移動社交通信類應用,下同),利用移動終端本身的蜂窩移動通信網絡或互聯網的無線通信網絡實現數據的發送與接收。與傳統的計算機終端即時通信相比,能更好體現即時通信的碎片化時間特點,實現移動即時通信常態[1]。用戶在使用移動社交通信類應用時,為了與真實世界的好友實現準確快速的通信,在注冊的賬號信息中,會提供諸如姓名、性別、年齡、職業、地址等真實的個人信息資料。此外,同一用戶在使用各種網絡應用時,會相互綁定相關資料(譬如手機號碼等),這意味著同一用戶的信息資料將會在多個服務器之間形成關聯,這將增加用戶個人信息資料被他人竊取的風險[2]。
為了能夠更好的將社交通信類應用與移動終端更緊密的結合,很多移動社交通信類應用都實現了手機通訊錄匹配添加好友的功能。
2.1手機通訊錄匹配功能
移動社交通信類應用為了使應用直接融入到手機中,方便用戶找尋好友,提高用戶對新應用的依賴度,將手機通訊錄匹配功能設為其標配。
使用手機通訊錄功能需要兩個步驟:第一,將應用賬號與手機號碼綁定;第二,用戶允許應用程序上傳手機通訊錄或者手機通訊錄的特征信息。至此,手機通訊錄就被應用程序上傳到應用程序服務器端,應用程序賬號就可以使用手機通訊錄功能瀏覽或者添加好友。該功能的使用是在假設用戶與其手機通訊錄的聯系人之間存在真實世界的社交關系,向用戶推薦手機通訊錄聯系人賬號信息不會造成安全風險。本文通過分析發現手機通訊錄匹配添加好友功能在帶來方便的同時,也帶來了用戶隱私泄漏的潛在隱患。
2.2惡意使用手機通訊錄匹配功能描述
用戶a的手機通訊錄表示成聯系人的集合Ca,其中每個聯系人都包含一個二元組的數據(name,pn),name和pn分別表示該聯系人的姓名和手機號碼。應用服務器數據庫中存儲了用戶的所有信息,表示為{id,pn,profile},其中ID表示用戶的賬號,pn表示與該賬號綁定的手機號碼,profile表示用戶的個人資料。用戶a在激活通訊錄匹配功能之后,形成了用戶賬號和用戶手機號碼的綁定。第一步,攻擊者b偽造一個通訊錄Cb,由于手機號碼組成具有一定的規律,偽造的通訊錄手機號碼可以是攻擊者感興趣的號碼、也可以是隨機號碼或者特殊號碼,且姓名與手機號碼可以無關。第二步,攻擊者將通訊錄Cb與自己注冊的賬號綁定,這樣該通訊錄就上傳到應用程序服務器,之后服務器返回與通訊錄中手機號碼綁定的賬號信息和資料。
2.3隱私泄漏威脅分析
帳號是用戶在網絡世界的通行證,具有唯一性的特性。本文探討的利用移動社交通信類應用的手機通訊錄匹配功能獲取用戶帳戶資料具有以下的潛在威脅:(1)攻擊者通過以上方法可以獲取用戶帳號的相關個人資料和手機號碼。收集到的大量活躍手機號碼,結合個人資料,可以較為全面的分析用戶相關信息,進行定向廣告投放,增加了廣告的投放收益。(2)攻擊者通過本文提到的方法從不同應用程序獲得同一用戶的多份資料,并進行整合,攻擊者可以全面掌握該用戶的資料,為進一步進行網絡詐騙提供可能。
本節首先介紹移動社交通信類應用獲得用戶資料的方法步驟,然后基于此方法步驟介紹實現的具體細節。
3.1資料獲得整合分析
利用移動社交通信類應用的手機通訊錄匹配功能獲得手機通訊錄號碼相關信息的流程圖如圖1所示。在實現了使用手機通訊錄匹配功能之后,對返回的資料進行深入的整合分析,形成完整的用戶信息資料數據庫。

圖1 流程圖
整合涉及到同一用戶同一開發商開發的的多個不同應用的帳戶資料進行的。分析是考慮到目標用戶注冊的個人信息的非真實性而進行的目標用戶資料的一致性和真實性進行分析。
3.1.1數據整合當前對于很多大型應用開發商來說,為了獲得更多客戶,通常旗下會有多款應用,同時與其它應用開發商合作運營,允許這些應用共用同一賬號登錄。對用戶來說更加方便對各個應用賬號的管理,提升網絡使用范圍。例如,騰訊公司不僅允許用戶使用QQ登錄其旗下的另一款應用微信賬戶,同時與其它開發商合作建立應用市場聯盟,允許使用QQ賬號登錄合作伙伴的應用。這就意味著應用市場聯盟的各應用之間共享用戶的賬戶信息資料,針對共享賬號登錄的各應用返回的數據進行整合,可以獲得更加準確且全面的個人信息資料。
3.1.2數據分析目前應用開發商為了滿足用戶對于移動社交通信類應用的不同社交需求,支持多種添加好友的渠道。為了促進用戶與好友之間的通信交流,使用手機通訊錄匹配功能或其它現有應用的好友聯系人方式添加好友,用戶會傾向于使用真實的數據信息希望個人信息資料能夠被朋友看到;滿足用戶通過相近地理位置發掘新朋友,通過相關技術進行地理位置定位添加好友,用戶處于防范意識則不填或錯填相關資料?;谝陨锨闆r,在分析不同應用的數據資料時,需要對用戶數據信息進行一致性和真實性分析。
一致性分析是指對于同一用戶的不同應用的共有字段進行判斷,如果內容完全匹配或者部分匹配,則認定用戶該字段數據一致或相似。那么就可以判定該用戶資料信息具有一定的真實性。當然如果用戶在各應用平臺均采用虛擬的信息,則無法判定信息的真實性。
3.2實驗設計與實現
本文利用移動社交通信類應用的漏洞實現了大規模竊取用戶信息資料的原型系統,該系統由手機通信錄偽造模塊、數據信息提取模塊和數據信息分析模塊三部分組成。手機通信錄偽造模塊完成自動產生大量標準格式通訊錄的手機號碼的任務,考慮到手機的處理能力,通訊錄的規模是實驗成功與否的前提。數據信息提取模塊實現從移動終端將社交通信類應用返回的一系列賬戶資料數據提取出來,是實驗的核心,需要考慮到移動終端系統的權限機制等保護機制。最后一個模塊是數據信息分析模塊,實現對獲得的數據信息分析處理的功能,具體內容會在第4節闡述。
本文的原型系統將基于最為流行的移動終端系統Android系統實現。同時Android系統的開源性[3],也為本文的實驗系統的實現提供了很好的環境。
Android系統的權限機制是用戶數據信息提取實驗面臨的最大挑戰,該機制拒絕應用程序數據從外部直接訪問。為了解決這個問題,本文通過動態監控應用程序訪問接口(Android API)提取目標應用的用戶數據信息。圖2顯示了實驗原型設計,數據信息模塊位于Android系統框架層。通過修改Android系統相關代碼,如settext()函數實現屏幕顯示數據的調用,sentevent DB命令使用戶數據信息能夠自動保存。

圖2 實驗設計圖
本節闡述依托移動社交通信類應用微信的手機通信錄和QQ通信錄匹配功能進行實驗過程,并獲得相應賬戶數據信息進行結果分析。在實驗過程中,實驗數據會觸及到用戶隱私,因此在開展試驗工作前需要考慮如何更加有效的保護獲取的用戶數據。在此前開展的研究中,很多研究人員都遇到了同樣的問題[4-5]。對于實驗過程中獲取的真實數據,在此做出申明:第一,不向任何與此實驗無關的個人或機構提供實驗獲取的用戶數據;第二,作者不會對獲取的用戶數據進行進一步的攻擊。
4.1微信應用數據分析
本應用是針對移動社交通信類應用微信的手機通訊錄匹配功能進行的數據分析。實驗環境設置如下:Ubnutu13.10系統,微信應用(Android版本5.0)運行在Android模擬器版本4.4。
根據實驗的步驟安排,第一步是偽造備用手機通訊錄,偽造的備用通訊錄包含用戶姓名和手機號碼,手機號碼采用中國大陸地區的國際區號+86與11位數字組成本實驗偽造的手機號碼模塊號碼段為:+861385660至+861385669。
配置3.2節闡述的原型系統,并在模擬器上注冊一個微信賬號。首先將微信賬號綁定用于測試的手機號碼,并使用手機通訊錄匹配功能,接著導入偽造的手機通訊錄文件。接著按照2.2節所述的手機通訊錄匹配功能描述,在應用中會獲得一系列與偽造的手機號碼綁定微信賬號及相應的賬戶數據信息。通過數據信息提取模塊記錄這些數據信息,形成初步的用戶數據資料,包括手機號碼和微信賬戶。其中微信賬戶信息包括用戶名、地區、個性簽名、社交資料(與微信賬號綁定的手機號碼)。

表1 微信返回用戶賬戶的數量分布
本實驗共偽造了50000個手機號碼,微信的添加手機聯系人匹配成功9265個微信賬戶信息資料,實驗的微信用戶率達到18.53%,與23.56%的中國相關調查機構的數據基本一致。在返回的數據資料中,用戶名是必填的,因此完整率為100%;由于是通過手機號碼查詢的微信用戶,因此首先該微信用戶綁定了手機號碼,社交資料的完整率也是100%。而所在地區和個性簽名屬于選填資料,完整率如表2所示。

表2 選填資料字段完整率
4.2多應用數據整合分析
多應用整合分析是針對同一公司旗下的多款應用進行數據整合分析,以此方式獲得更加全面的用戶帳戶信息資料[6]。騰訊作為目前國內社交通信類應用的最大開發商,旗下的QQ和微信也是使用面最大的兩款應用。

圖3 數據整合流程圖
接下來通過具體的實例闡述數據整合分析的原理步驟,考慮到個人隱私,將使用星號代表隱藏部分數字或文本數據。第一步,選取數據庫中的一條記錄,手機號碼“138******08”,微信ID“q57*****25”。微信ID后面使用沒有任何關聯的9位數字,考慮到微信與QQ的相關性,推測后9為數字可能是QQ號碼。為了進一步驗證,通過QQ軟件的查找功能,輸入這9位數字,成功找到一位用戶,“查看用戶資料”面板顯示了該用戶性別、姓名、出生日期、照片等相關資料。最后,在QQ軟件的找回密碼服務面板,顯示的密保手機部分的號碼數字(出于安全考慮,只顯示部分部分數字,其余部分用星號代替)與綁定的手機號碼一致,進一步確定該用戶真實存在。這樣,完成了一次完整的用戶數據信息資料的整合,獲得了該用戶的全面個人資料數據。具體流程圖如圖3所示。
綜上可見,利用應用的通訊錄匹配功能的漏洞,利用綁定的手機號碼獲得了微信賬號,通過多應用的數據整合,獲取了目標用戶的全面詳細的個人資料。同時在這個過程中需要一定的人工分析,提高數據整合的效率。
4.3一致性和真實性分析
對于微信和QQ兩個應用中,會返回部分相同字段信息,如用戶昵稱、所在地、個性簽名(個人說明)、用戶姓名,而對于同一用戶,這些字段信息可能一致也可能存在矛盾。根據3.1.2的方法將對這些數據進行一致性和真實性分析。

圖4 用戶姓名真實性比較
首先針對用戶昵稱和所在地去進行一致性和真實性分析,結果發現,在微信和QQ兩款應用中的這一項內容一致性達到61.56%。由此可見使用該應用的用戶絕大部分已經將網絡世界和現實世界的交流是交織在一起的,用戶昵稱反應的應該是現實生活的昵稱,所在地區也具有一定的真實性。其次針對微信的個性簽名與QQ的個人說明,有34.05%的用戶在這兩個應用中描述的相近或相同,那么在一定程度上,可以反映出該用戶的一定個人信息,也可能為進一步攻擊提供依據。最后,針對用戶姓名,結果發現微信的用戶昵稱與QQ的用戶姓名有28.73%的用戶是相近的(相同字符數占到較短用戶姓名的50%以上)。針對用戶姓名的真實性分析通過匹配中華人民共和國的戶籍管理辦法中關于姓名結構完成的。在匹配過程中如果第一個字符屬于中文姓名的常用“姓”,則認定該用戶姓名具有一定的真實性,結果發現超過一半的人在至少在一個應用中使用了真實姓名。
對于獲取的數據進行一致性與真實性分析是對數據信息整合中最為關鍵的一部,對于獲取的真實數據具有較高的利用價值,如垃圾短信的推送、網絡欺詐和攻擊等。
移動社交通信類應用的手機通訊錄匹配功能的原理是用戶將手機通訊錄通過網絡上傳并保存在服務器端,然后服務器程序通過比對,將與通訊錄中手機號碼綁定的應用賬號及相關資料返回給用戶。在這個功能應用中,需要四個前提條件:(1)手機用戶的號碼具有唯一性;(2)應用服務器端保存并匹配手機號碼與應用賬號的對應關系;(3)應用服務器端返回與手機號碼對應的應用的相關信息;(4)應用服務器端允許批處理手機通訊錄匹配的功能實現,從而為規模化獲取信息提供可能。在以上條件中,(1)是實現移動通信所必須滿足的條件,(2)是實現手機通訊錄匹配功能必須滿足的條件,這兩個條件我們沒有辦法限制,否則就無法使用手機通訊錄添加好友;(3)即使不能實現,攻擊者也可以實施小規模的攻擊,通過增加攻擊頻率獲取數據信息。綜上所述,我們只能針對條件(3)提出可行的防御方案,具體如下:(1)增加用戶對于信息可見性的設置選項,以保證用戶對于個人信息的公開程度的設定;(2)對于手機通訊錄推薦好友時,考慮到手機號碼的隱私性,只推薦滿足用戶和目標用戶雙方的手機通訊錄都存儲對方號碼條件的用戶,可以通過服務器匹配兩個應用賬戶提交的手機通訊錄中的移動通信號碼實現,這樣也可以有效保障用戶的賬戶信息的安全性。
本文通過以微信為例,對移動終端中使用的社交應用的添加手機聯系人功能進行了原型分析和實驗,揭示了其存在的安全漏洞隱患,該隱患為攻擊者提供了大量的個人資料信息提供了可能。針對目前用戶的多個應用共用同一賬戶的情況,本文通過整合數據獲取了用戶更加詳細的資料,并對獲取的用戶信息資料進行了真實性和一致性分析。實驗結果顯示,用戶在移動社交通信類應用中傾向于填寫真實數據,以此擴充真實世界的交往。最后,在分析的基礎上提出了可行的防御策略。對于移動社交通信類應用的手機通訊錄添加聯系人功能提出了限制返回的資料的建議,避免大批量的自動攻擊。
[1]中國通信學會.移動社交[EB/OL].[2013-12-25].http://baike. baidu.com/view/4180234.
[2]王璐,孟小峰.位置大數據隱私保護研究綜述[J].軟件學報,2014(4):693-698.
[3]王戴鈺.基于Android平臺移動社交網絡的設計與實現[D].大連:大連海事大學,2014.
[4]Balduzzi M,Platzer C,Holz T,et al.Abusing social networks for automated user profiling[C]//Proceedings of the Recent Advances in Intrusion Detection.Ottawa,Canada,2010:422-441.
[5]Jakobsson M,Johnson N,Finn P.Why and how to perform fraud experiments[J].IEEE Security and Privacy,2008,6(2):66-68.
[6]程瑤,應凌云,焦四輩,等.移動社交應用的用戶隱私泄漏問題研究[J].計算機學報,2014(1):87-99.
[責任編輯:桂傳友]
TP311
A
1674-1102(2015)06-0041-04
2015-07-26
劉純麗(1983-),女,安徽石臺人,池州學院文學與傳媒學院講師,安徽永祥地產評估咨詢有限公司工程師,研究方向為移動安全及隱私問題。