国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

移動設(shè)備加密流量的用戶信息探測研究展望

2021-03-09 08:55:26張騰飛余順爭
通信學報 2021年2期
關(guān)鍵詞:網(wǎng)絡(luò)流量加密分組

張騰飛,余順爭

(中山大學計算機學院,廣東 廣州 510006)

1 引言

第45 次《中國互聯(lián)網(wǎng)絡(luò)發(fā)展狀況統(tǒng)計報告》[1]顯示,截至2020 年3 月我國手機網(wǎng)民規(guī)模達8.79 億,我國網(wǎng)民使用手機上網(wǎng)的比例高達99.3%。移動設(shè)備產(chǎn)生的巨大網(wǎng)絡(luò)流量對網(wǎng)絡(luò)管理、網(wǎng)絡(luò)服務(wù)質(zhì)量等都提出了新的要求。

移動設(shè)備中往往存儲了大量的用戶個人數(shù)據(jù)和通過各類App 產(chǎn)生的海量級數(shù)據(jù),這些數(shù)據(jù)大多涉及個人隱私,從而導致越來越多的攻擊者開始分析移動設(shè)備的網(wǎng)絡(luò)流量,并試圖從中挖掘有用的信息。因此,移動設(shè)備敏感數(shù)據(jù)的安全問題顯得尤其突出[2]。除了需要設(shè)計有效的數(shù)據(jù)、位置和身份隱私保護方案之外[3-5],如何將傳統(tǒng)的隱私保護方案與網(wǎng)絡(luò)流量分析相結(jié)合,使其在多樣化的服務(wù)環(huán)境中實現(xiàn)用戶隱私保護,是當前的一個重要研究方向。

當前,越來越多的移動應(yīng)用開始使用加密技術(shù)為數(shù)據(jù)傳輸提供安全保障,這給基于網(wǎng)絡(luò)流量分析的用戶信息探測帶來了挑戰(zhàn),主要表現(xiàn)在以下幾個方面:1)流量加密后負載特征和流量統(tǒng)計特征都發(fā)生了改變;2)之前非加密的流量分析方法很難應(yīng)用在加密的流量分析上,如深度包檢測(DPI,deep packet inspection)技術(shù)[6];3)加密流量常采用協(xié)議混淆進行偽裝[7],如隨機端口和各種復雜的加密算法。在不破解加密數(shù)據(jù)的情況下,攻擊者仍然可以窺探用戶的隱私數(shù)據(jù)[5,8-16]。目前,針對移動設(shè)備的加密流量分析有兩大方向:一是在傳統(tǒng)的網(wǎng)絡(luò)流量分析方法上進行改進;二是開發(fā)專門應(yīng)用在移動設(shè)備上的加密流量分析方法。

有研究者開始將網(wǎng)絡(luò)流量分析技術(shù)應(yīng)用在移動設(shè)備的安全和隱私分析上。文獻[17-18]綜述了當前移動設(shè)備的網(wǎng)絡(luò)流量分析的研究成果,但這些成果大多集中在手機應(yīng)用(下文簡稱App)分類、設(shè)備指紋、操作系統(tǒng)識別、用戶動作識別、服務(wù)(或業(yè)務(wù))分類(如語音、在線視頻直播、視頻觀看及下載)、網(wǎng)頁瀏覽、惡意應(yīng)用檢測等方面。本文側(cè)重于綜述如何在各類網(wǎng)絡(luò)節(jié)點的網(wǎng)絡(luò)流量中識別不同用戶及其應(yīng)用的使用習慣、操作行為、社會關(guān)系等用戶個人信息。這些信息對精細用戶畫像和網(wǎng)絡(luò)安全管理有很大幫助。其現(xiàn)實意義主要表現(xiàn)在以下幾個方面。

1)從加密通道下不同應(yīng)用和協(xié)議的流量中,發(fā)現(xiàn)隱藏的攻擊行為、惡意行為和非法行為。這對掌握網(wǎng)絡(luò)安全態(tài)勢、發(fā)現(xiàn)網(wǎng)絡(luò)異常和維護網(wǎng)絡(luò)安全管理都有重要意義。

2)特殊協(xié)議或私有協(xié)議在加密通道掩蓋下的網(wǎng)絡(luò)行為的識別和分析,對維護網(wǎng)絡(luò)安全管理和提高安全防御具有重要的支撐作用。

3)對惡意網(wǎng)絡(luò)流量和非法通信的識別和記錄有助于犯罪痕跡調(diào)查。

根據(jù)網(wǎng)絡(luò)流量識別的目的,研究者通常從協(xié)議、應(yīng)用、服務(wù)等角度對網(wǎng)絡(luò)流量進行深入分析和識別。根據(jù)移動設(shè)備流量加密識別的需求,可將識別類型分為App 識別,用戶行為識別,個人標識信息泄露檢測,使用研究與操作系統(tǒng)識別,社會關(guān)系以及輸入法語言、國籍、健康狀況等信息識別。

考慮到已有研究的現(xiàn)狀和急需解決的用戶數(shù)據(jù)安全與隱私問題,本文主要對當今用戶信息泄露探測和隱私保護領(lǐng)域密切相關(guān)的研究展開論述,包括個人標識信息、服務(wù)使用、用戶動作識別,其中服務(wù)使用和用戶動作都是用戶在App 上的操作行為,因此統(tǒng)稱為in-App 操作信息。

2 個人標識信息探測

移動設(shè)備上大量關(guān)于用戶的個人敏感信息(PII,personal identifiable information)通常分為以下4 種類型。

1)移動設(shè)備硬件相關(guān)信息,包括國際移動設(shè)備標志(IMEI,international mobile equipment identity)、Android 設(shè)備ID 與介質(zhì)訪問控制(MAC,medium access control)地址、國際移動用戶標志(IMSI,international mobile subscriber identity)和SIM 序列號。

2)憑據(jù)信息,包括用戶名、密碼。

3)人口統(tǒng)計信息,包括姓名、性別、出生日期、居住地址、電話號碼和電子郵件地址等。

4)地理位置信息,包括GPS 定位和郵政編碼等。

當前對PII 探測的方法分為靜態(tài)分析、動態(tài)分析、靜態(tài)分析與動態(tài)分析結(jié)合,以及網(wǎng)絡(luò)流量分析。但靜態(tài)分析需要人工分析,耗時耗力,不便于大規(guī)模檢測;動態(tài)分析受程序保護機制影響,不能正確識別污點走向。因此,如何從網(wǎng)絡(luò)流量分析角度獲取這類信息成為一個值得關(guān)注的研究點。已有研究顯示[19],移動設(shè)備上安裝的App 更容易產(chǎn)生被識別的流量特征,例如,平均數(shù)據(jù)分組長度、數(shù)據(jù)分組長度的分布以及平均數(shù)據(jù)分組到達時間間隔,其比使用瀏覽器訪問相同的服務(wù)更容易泄露隱私數(shù)據(jù)[9,20]。然而,在網(wǎng)絡(luò)中被動監(jiān)聽流量受加密影響,只能獲取數(shù)據(jù)分組頭部信息,缺乏語義信息。因此,通過對移動設(shè)備上各類App 的網(wǎng)絡(luò)流量進行主動測量分析,可以判定是否存在用戶敏感信息泄露以及信息泄露的程度。為了阻止對隱私泄露提供幫助,常用方法是把用戶個人信息進行替換處理或加密混淆。

2.1 基于虛擬專用網(wǎng)(VPN,virtual private network)的模式匹配分析方法

基于VPN的網(wǎng)絡(luò)監(jiān)控工具使用tun接口來捕獲移動設(shè)備上的網(wǎng)絡(luò)流量,然后根據(jù)模式匹配方法從網(wǎng)絡(luò)流量中探測用戶敏感信息。該方法需要在手機上安裝定制的VPN 客戶端進行流量采集,而不需要定制操作系統(tǒng)和獲取系統(tǒng)根權(quán)限,因此有利于大規(guī)模部署?;赩PN 的模式匹配分析方法流程如圖1 所示。其核心方法是利用Android 的VPN 接口開發(fā)一款基于中間人(MIMT,man-in-the-middle)原理和傳輸層安全(TLS,transport layer security)協(xié)議代理技術(shù)的App,以實現(xiàn)監(jiān)聽移動設(shè)備上App 的網(wǎng)絡(luò)流量,然后利用字符串匹配或正則匹配進行PII 探測。

圖1 基于VPN 的模式匹配分析方法流程

1)基于字符串匹配的分析方法

文獻[21]利用基于中間人原理的VPN客戶端和遠程VPN 代理,將流量傳輸?shù)竭h程VPN 服務(wù)器進行分析。在進行PII 泄露檢測前,需要先根據(jù)設(shè)備信息、網(wǎng)絡(luò)信息、操作系統(tǒng)指紋和歷史地址位置等信息構(gòu)建一張用戶敏感信息表,然后利用字符串匹配算法Aho-Corasick 掃描每條網(wǎng)絡(luò)流,以判斷是否存在用戶敏感信息泄露。與其原理相似,文獻[22]將遠程服務(wù)端的功能剔除,僅用客戶端分析PII泄露。文獻[23]在PrivacyGuard[24]的基礎(chǔ)上設(shè)計了一種高效的近似字符串匹配算法Boyer-Moore,能夠?qū)σ苿釉O(shè)備上所有App 的網(wǎng)絡(luò)流量進行掃描,實現(xiàn)對敏感和包含PII 的數(shù)據(jù)分組中目標字符串的精確匹配,顯著提高了PII 搜索效率。當發(fā)現(xiàn)PII 時,可以向用戶提供允許或阻止數(shù)據(jù)分組的選擇,但該方法只能對以字符串編碼的PII 泄露進行檢測,而對其他類型的信息表示方法無效。

文獻[25]在流量監(jiān)管系統(tǒng)AntMonitor[21]基礎(chǔ)上改善了流量路由機制,移除了VPN 服務(wù)器,實現(xiàn)了對流量細粒度的、大規(guī)模的無源收集,所需的資源更少,處理性能接近實時,對用戶透明,幾乎不影響用戶正常的使用體驗,其性能優(yōu)于Haystack[22]和PrivacyGuard[24]。文獻[26]自定義加密流量上下文信息(如PII 類型、目標域、應(yīng)用類別/功能、背景/前景、使用加密和純文本),利用改進的Antmonitor[25]進行PII 泄露檢測,不僅能夠揭示PII 泄露程度和模式,還可以發(fā)現(xiàn)一些未知的PII 類型。

文獻[27]首先將結(jié)構(gòu)化的HTTP 請求頭的鍵值對構(gòu)建成哈希簽名,用來表示請求內(nèi)容,并將其傳送到遠程服務(wù)器端,與文獻[28]相比,該方法沒有顯示任何實際的用戶數(shù)據(jù),減輕了隱私和安全的風險;然后,使用一種 crowd-based(或稱為crowd-sourced)方法,匿名合并來自同一設(shè)備的不同用戶的簽名,根據(jù)“僅來自特定設(shè)備的數(shù)據(jù)流中反復出現(xiàn)的鍵值可能是PII,而許多設(shè)備都出現(xiàn)的鍵值則不是PII”這一原理,以自適應(yīng)和可伸縮的方式檢測PII。這種方法既不需要標記網(wǎng)絡(luò)流,也不需要任何用戶交互。

2)基于正則匹配的分析方法

文獻[24]通過自定義的PII 檢測類插件(如Location Dection、Phone State Dection、Contact Dection)來檢測移動用戶的PII 泄露情況。其中,Location Dection 插件為每個位置服務(wù)提供者登記一個Location Listener(Android 的一個概念,提供位置信息),來判定位置信息的泄露;Phone State Dection插件通過使用相應(yīng)的Android應(yīng)用程序接口(API,application programming interface)調(diào)用獲取設(shè)備硬件相關(guān)信息,然后在網(wǎng)絡(luò)流中查找這些值;Contact Dection 插件使用正則匹配來檢測人口統(tǒng)計信息的泄露情況。當App 自身在傳輸前對敏感信息進行加密時,會使PII 檢測失敗。當前,該方法只對以RSA(Rivest,Shamir,Adleman)方式交換TLS的證書有效。

通常基于正則匹配的分析方法有以下幾點限制。

①當移動設(shè)備阻止App 寫入受信任的根存儲時,會無法安裝自定義的TLS 證書,如果App 使用證書鎖定,也會影響TLS 代理,導致無法攔截加密流量。

② 在給定的時間內(nèi),Android 系統(tǒng)只允許一個App 使用VPN 接口,因此,如果另一個App 正在使用該接口,系統(tǒng)將無法運行。

③已有的方法不能處理網(wǎng)絡(luò)層加密的流量,例如,對網(wǎng)絡(luò)層分組通過IPSec 加密處理。

④ 穩(wěn)健性較差。當目標字符串有微小改動時,字符串匹配方法的匹配準確率會發(fā)生波動。

⑤ 受限于App 的UNIX 文件描述符,在運行時為每個流打開一個新的套接字的VPN 應(yīng)用程序進程,因此,需要謹慎地處理套接字資源,否則會造成資源枯竭,系統(tǒng)卡死。

⑥ 只能對基礎(chǔ)編碼和標準哈希算法模糊化的字符串進行PII 泄露的探測,而無法應(yīng)對自定義App加密方法、非標準化編碼等模糊策略處理過的PII。

2.2 基于VPN 的機器學習分析方法

出于保護用戶隱私的考慮,一些App 使用字符串模糊和編碼策略對PII 進行保護,這使基于VPN的模式匹配分析方法的探測效果大打折扣。因此,基于VPN 的機器學習分析方法逐漸被應(yīng)用到PII 探測中,其流程如圖2 所示,通常分為離線訓練模型和在線處理模型兩部分。離線時,使用標記的流量訓練分類器,輸出PII 預測模型;在線時,使用模型對流量進行PII 泄露檢測,將可疑的PII 以U(Iuser interface)顯示給用戶,讓用戶判定PII 預測是否準確,是否阻止這些信息泄露,然后將用戶反饋結(jié)果添加到訓練集中,再次訓練分類器、更新模型。這類方法除了基于VPN 和TLS 代理技術(shù)攔截流量的共性問題外,還有以下幾點特性。第一,除文獻[28]外,其他方法只在移動設(shè)備端處理數(shù)據(jù),不需要任何遠程VPN 服務(wù)器。第二,對已知類型PII 進行模式匹配,對未知類型PII 使用分類算法,能夠檢測動態(tài)變化的PII 泄露信息和不在先驗知識列表中的PII 類型。

1)基于監(jiān)督學習算法

文獻[28]利用該團隊之前研發(fā)的跨平臺網(wǎng)絡(luò)流量收集與分析系統(tǒng)meddle[29],通過VPN 將所有移動設(shè)備的流量重定向到代理服務(wù)器;然后在遠程服務(wù)器中,即使在沒有任何PII 的先驗知識情況下,通過用戶對疑似PII 反饋策略和機器學習方法構(gòu)建分類器來推測未知類型的PII 泄露。該方法不能檢測經(jīng)過混淆方法處理后的PII 泄露,需要將數(shù)據(jù)傳輸?shù)竭h程服務(wù)器進行訓練,有一定的安全隱患,且違反用戶隱私數(shù)據(jù)本地保護策略。文獻[30-31]的方法與其最相近,對未知類型PII 識別時,利用多標簽分類算法(二值相關(guān)和決策數(shù)),實現(xiàn)在線實時檢測PII 泄露情況和類型。由于是對網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)分組內(nèi)容進行檢測,因此可以為用戶提供透明度并實時控制其個人信息。該系統(tǒng)是首個實現(xiàn)分布式PII 檢測的方法。

圖2 基于VPN 的機器學習分析方法流程

文獻[32]從網(wǎng)絡(luò)流量直接推斷用戶PII,其原理是利用以下2 個觀察:①開發(fā)人員命名約定會經(jīng)常提示數(shù)據(jù)收集的目的,例如URL 路徑;②外部知識、App 元數(shù)據(jù)和關(guān)于域名的信息可以用來推斷不同請求行為的流量。將每個請求體解析為鍵值對,并結(jié)合使用監(jiān)督學習和bootstrapping 自然語言處理(NLP,natural language processing)方法推斷每個鍵值對的數(shù)據(jù)類型和數(shù)據(jù)收集目的,根據(jù)數(shù)據(jù)收集與服務(wù)功能匹配情況判定PII 泄露程度。文獻[33]利用C5.0 決策樹算法和基于眾包的技術(shù)構(gòu)建分類器,用于檢測網(wǎng)絡(luò)流量中任何形式的PII 泄露,并使用泛化技術(shù)來降低隱私敏感性。此外,通過使用API hook 技術(shù),能夠動態(tài)定制每個App 的數(shù)據(jù),對提供給App 的信息進行細粒度控制,可以在運行需要時修改訪問權(quán)限。

2)關(guān)聯(lián)挖掘方法

關(guān)聯(lián)挖掘方法示例如圖3 所示。為了挖掘簡單字符串搜索和規(guī)則匹配無法顯示的隱藏信息,如圖3(b)中黑色字體加粗部分的鍵值對bssid=28%3AC2%3ADD%3A4D%3AFC%3AA9 是一個MAC 地址,而不是Basic Server Set ID,文獻[20]提出了基于請求數(shù)據(jù)分組頭部先定義鍵集合,通過大量App 流量提取鍵值對,如圖3(a)和圖3(b)中黑色加粗字體所示;然后,分別構(gòu)建鍵集合關(guān)聯(lián)的值集合,同理構(gòu)建值對應(yīng)的鍵集合;最后,進行迭代匹配的關(guān)聯(lián)挖掘。該方法假設(shè)在會話中單個終端上的個人標識符、設(shè)備標識符和位置信息等PII 不會被改變。利用鍵與值之間的關(guān)聯(lián),發(fā)現(xiàn)更多不同鍵之間的間接關(guān)聯(lián),如圖3(c)所示,鍵“l(fā)atitude”最終匹配一對鍵值“cityid=24”,從而擴大隱私泄露檢測的覆蓋范圍。

圖3 關(guān)聯(lián)挖掘方法

雖然這類方式可以檢測出一些未知PII,但與2.1 節(jié)基于正則匹配的分析方法一樣存在6 種主要限制。

針對基于VPN 的PII 探測方法,表1 對客戶端與服務(wù)器配置需求、未知類型、實時性、探測能力以及穩(wěn)健性等指標進行了對比描述。其中,未知類型指對未知類型PII 的探測能力,目前只有基于VPN 的機器學習分析方法能夠探測出一些未知類型的PII;實時性指該方法是否能夠?qū)崟r或接近實時在線進行PII 探測;探測能力指能夠探測PII 類型的種類以及數(shù)量;穩(wěn)健性指對使用未知混淆策略模糊化的字符串進行PII 探測的能力。

2.3 基于差分分析的方法

基于black-box 差分分析的方法步驟如下:首先,建立一個App 網(wǎng)絡(luò)行為的基線;然后,修改移動設(shè)備的ID 和位置等PII,收集在相同實驗環(huán)境下的多次執(zhí)行的網(wǎng)絡(luò)流量和上下文信息;最后,觀察網(wǎng)絡(luò)流量中的偏差(差分分析和風險分析)來檢測PII 泄露[34]。該方法的流程如圖4 所示?;诓罘址治龅姆椒ǖ闹饕魬?zhàn)之一是消除App 不同執(zhí)行之間的所有不確定性來源,這樣才能可靠地將輸出的變化屬性歸結(jié)為輸入的變化,并確認是否存在PII 泄露。文獻[35]觀察發(fā)現(xiàn)網(wǎng)絡(luò)行為中的非確定性可以被解釋和消除,使通過差分黑盒分析進行隱私泄露檢測成為現(xiàn)實,并基于此原理開發(fā)了一款開源的移動設(shè)備PII泄露檢測工具Agrigento,它能夠適應(yīng)編碼、格式化、加密等混淆技術(shù),或在隱私信息泄露前對其執(zhí)行的其他類型的轉(zhuǎn)換。與上述幾種方法一樣,該方法也不適用于通過IPSec 加密的網(wǎng)絡(luò)流量,不能對所有的PII泄露進行檢測,因為使用Monkey 方式采集數(shù)據(jù),不能覆蓋所有真實的用戶輸入操作。

表1 基于VPN 的PII 探測方法對比

圖4 基于差分分析的方法流程

2.4 基于靜態(tài)數(shù)據(jù)污染的分析方法

文獻[36]提出了一種將網(wǎng)絡(luò)流量轉(zhuǎn)換成服務(wù)(S,service)、鍵(K,key)、值(V,value)的三維數(shù)據(jù)集,然后使用靜態(tài)污染提取算法進行PII 探測的方法。定義服務(wù)使用如式(1)所示,其包含的值如式(2)所示,二者組成domain-value 數(shù)據(jù)表。

其中,n為SK(service key)的個數(shù),m為SK 值的個數(shù)。靜態(tài)污染提取算法將典型的PII 標識為污染值類型作為輸入值,使用信息流圖自動且準確地跟蹤PII 類型及其位置。信息流圖利用domain-value數(shù)據(jù)通過2 個步驟的污染過程繪制而成,分別是域間感染(intra-domain infection)和域間路由(intra-domain routing)。域間感染方法基于以下原理:如果一個SK 中的任何值是PII,那么這個SK中的所有值都是PII,從而在每個SK 中選擇相似的PII。2 個SK 之間由2 個或多個共享值連接的關(guān)系稱為域間路由,基于這些關(guān)系構(gòu)建相鄰矩陣,SK 組成節(jié)點集合N={SK1,SK2,…,SKn},節(jié)點關(guān)系集合為

利用上述數(shù)據(jù)構(gòu)造信息流圖IFG=(N,E),如圖5所示。該方法不需要在客戶端部署任何其他應(yīng)用程序就可以自動從大規(guī)模網(wǎng)絡(luò)流量中提取PII,也不需要任何手動工作就能對 ISP(Internet service provider)級網(wǎng)絡(luò)流量進行反饋。

圖5 信息流圖

3 in-App 操作信息探測

in-App 操作信息探測包括服務(wù)使用識別和用戶動作識別。通過服務(wù)使用識別可以探測到用戶在社交類App 上發(fā)送的服務(wù)類型,例如在微信聊天界面發(fā)送圖片、文字、語音電話等內(nèi)容。但這種方法探測到的用戶信息類型有限,往往用于輔助網(wǎng)絡(luò)性能優(yōu)化和用戶使用習慣分析。用戶動作識別則可以從加密流量中識別用戶在某一特定App 上進行了何種具體操作。與服務(wù)使用類型探測相比,這類信息探測更加細粒度。與個人標識信息探測方法的主動探測不同,in-App 操作完全被動地基于流量側(cè)通道信息,其探測流程與網(wǎng)絡(luò)流量分析流程幾乎一樣。網(wǎng)絡(luò)流量分析流程如圖6 所示,通常包含4 個步驟:數(shù)據(jù)采集、數(shù)據(jù)預處理、數(shù)據(jù)分析、結(jié)果評估。特征選擇是數(shù)據(jù)預處理中最核心的部分,數(shù)據(jù)分析則是各種用戶信息探測模型的構(gòu)建方法與理論。

圖6 網(wǎng)絡(luò)流量分析流程

3.1 數(shù)據(jù)采集

從層次化協(xié)議角度來看,可以從鏈路層、網(wǎng)絡(luò)層及應(yīng)用層采集數(shù)據(jù),根據(jù)不同研究目的采取相應(yīng)的數(shù)據(jù)采集方法,大致分為Wi-Fi 接入點(AP,access point)、真實移動設(shè)備、Wi-Fi 監(jiān)聽、模擬器。通常采集數(shù)據(jù)時需要記錄的信息有每個操作的起始時間、操作類型、App 名稱。

1)Wi-Fi 接入點

移動設(shè)備鏈接Wi-Fi 接入點,Wi-Fi 接入點再鏈接已經(jīng)接入互聯(lián)網(wǎng)的計算機,然后在計算機上使用流量采集軟件進行數(shù)據(jù)采集。在進行大規(guī)模網(wǎng)絡(luò)環(huán)境下的用戶信息探測前,需要先過濾非移動設(shè)備的網(wǎng)絡(luò)流量。通常使用與加密無關(guān)的數(shù)據(jù)鏈路層和網(wǎng)絡(luò)層信息,以及MAC 地址的組織唯一識別符(OUI,organization unique identifier)等信息作為流量過濾規(guī)則[37]。

2)真實移動設(shè)備

最直接的數(shù)據(jù)采集方式是在移動設(shè)備上安裝輕量級的流量記錄程序,這種方式在對特定的單個或多個移動設(shè)備進行數(shù)據(jù)采集時非常高效。但安裝這類數(shù)據(jù)記錄App 需要特定的權(quán)限。

3)Wi-Fi 監(jiān)聽

最簡單的數(shù)據(jù)采集方法是將網(wǎng)卡設(shè)置成監(jiān)聽模式,被動監(jiān)聽附件的Wi-Fi 信號[38]或使用專業(yè)的Wi-Fi 信號監(jiān)聽器。這種方法有以下特性:①多AP 網(wǎng)絡(luò)環(huán)境的數(shù)據(jù)采集涉及采集工具的多點部署、同步,以及從不同資源訪問的時間問題。因此,直接在網(wǎng)關(guān)進行流量采集更準確和高效;② Wi-Fi 接入點存在高密集型的網(wǎng)絡(luò)活動情景,在監(jiān)聽時對數(shù)據(jù)存儲設(shè)備有一定的要求。

4)模擬器

移動設(shè)備模擬器在運行時通過宿主機進行網(wǎng)絡(luò)連接,因此可以將該宿主機作為網(wǎng)絡(luò)流量的采集點。該類方式可以快速初始化多種手機品牌和操作系統(tǒng)版本的虛擬機,在PC 端通過中間平臺可以實現(xiàn)對其程序化控制,克服了直接在移動設(shè)備上采集數(shù)據(jù)時缺乏工具和資源受限這一困難。這使大規(guī)模App 的網(wǎng)絡(luò)流量分析非常高效快捷。

3.2 特征選擇

在對加密流量進行分析前,根據(jù)信息探測的方法對輸入數(shù)據(jù)進行格式轉(zhuǎn)換、特征提取以及特征選擇,本文將這些操作統(tǒng)稱為特征選擇。數(shù)據(jù)分組層面可直接使用的基本特征有數(shù)據(jù)分組大小、數(shù)據(jù)分組到達時間間隔、傳輸方向。

1)數(shù)據(jù)分組序列

數(shù)據(jù)分組序列是按照數(shù)據(jù)分組產(chǎn)生的時間順序組成的一組時間序列。每條時間序列本身沒有固定的長度,但需要將其進行格式轉(zhuǎn)換以適應(yīng)特定的向量格式。文獻[39]在特征提取階段,根據(jù)IP 和TCP頭部中可利用的信息分離出目標App 的網(wǎng)絡(luò)流,將這些網(wǎng)絡(luò)流與其他流用全局最小距離區(qū)分開,然后將網(wǎng)絡(luò)流轉(zhuǎn)換成時間序列,進而計算這些序列到最近代表點距離、產(chǎn)生這些序列動作的權(quán)重、序列的持續(xù)時間、序列內(nèi)的數(shù)據(jù)分組數(shù)量和大小以及數(shù)據(jù)分組到達時間間隔,然后將上述特征值轉(zhuǎn)換成特征向量。

2)統(tǒng)計特征

根據(jù)數(shù)據(jù)分組到達時間間隔、傳輸方向?qū)?shù)據(jù)分組序列進行分組(burst 或data block),然后選取主要特征(如數(shù)據(jù)分組大小、數(shù)據(jù)分組達到時間間隔、字節(jié)速率、上下行字節(jié)數(shù)之比等)的統(tǒng)計特征。例如,直方圖通過將數(shù)據(jù)的分布情況用固定數(shù)量的箱子來表示,其中每個箱子對應(yīng)一系列的值,表示這些值在這個范圍發(fā)生的次數(shù)。通過運行統(tǒng)計測試(例如t-test)可以評估數(shù)值的分布情況,從而選出具有代表性的特征。

3)會話特征

通過學習不同的已知網(wǎng)絡(luò)流量的協(xié)議會話流或數(shù)據(jù)分組的某些特征統(tǒng)計分布特性,形成分類器來識別網(wǎng)絡(luò)流量,從會話層提取相關(guān)特征。但其實時性較差,需要先獲取完整的會話數(shù)據(jù)流,然后統(tǒng)計數(shù)據(jù)分組個數(shù)、會話載荷平均長度等特征。這類方法選取的數(shù)據(jù)分組特征不受流量加密的影響。此外,移動設(shè)備的活動周期和通信機制一般都有預設(shè)的執(zhí)行流程,會呈現(xiàn)一定的規(guī)律。因此,可以結(jié)合App 的通信框架特征和外鏈特征構(gòu)建有效特征,實現(xiàn)所需要的用戶信息探測。該類方法只針對SSL(secure socket layer)/TLS 模型識別有效,對IPSec加密無效。

4)混合方法

有研究者使用深度學習方法進行網(wǎng)絡(luò)流量的分析。這類方法需要先對網(wǎng)絡(luò)流量進行時間序列提取,然后才能輸入深度學習算法中訓練。文獻[40]使用多層感知機(MLP,muti-layer perception)加一個隱藏層的方法,使用有效載荷的前N個字節(jié)、原始數(shù)據(jù)分組前N個字節(jié)、建立網(wǎng)絡(luò)連接時的前20 個數(shù)據(jù)分組的6 類數(shù)據(jù)(源端口、目的端口、傳輸層載荷字節(jié)數(shù)、TCP 滑動窗口大小、數(shù)據(jù)分組到達時間間隔、數(shù)據(jù)分組傳輸方向)作為深度學習的輸入數(shù)據(jù)。

3.3 模型與方法

本節(jié)從服務(wù)使用識別和用戶動作識別兩方面對in-App 操作信息的研究進展進行闡述。

3.3.1 服務(wù)使用識別

由于移動設(shè)備操作系統(tǒng)自身的設(shè)計邏輯,用戶在同一時刻只能操作一個App。用戶操作觸發(fā)的網(wǎng)絡(luò)流量傳輸往往需要一定時間,因此采集到的網(wǎng)絡(luò)流量會存在單一服務(wù)使用和混和服務(wù)使用2 種類型。這類研究存在以下幾點特性。

1)通常依賴于使用加密流量中包含的統(tǒng)計特征來識別用戶的身份或行為。然而,用戶移動設(shè)備使用模式的多樣性使信息探測變得復雜。

2)只對少數(shù)幾款App 中研究者認為用戶隱私敏感的服務(wù)使用進行識別,包含發(fā)送圖片、語音、視頻電話、語音電話、定位信息等社交類App 的聊天功能界面。

3)利用專家知識對具體的App 定制特征提取方法是這類研究的核心部分。結(jié)合機器學習算法進行服務(wù)使用類型識別,但是這部分通常不是該領(lǐng)域的研究重點。

服務(wù)使用識別主要有以下幾種方法。

1)統(tǒng)計特征與機器學習組合

文獻[19]首先將在一定觀察時間內(nèi)(100 s)的流量通過有重疊的滑動窗口切分成片段(frame),然后對frame 的到達時間、大小以及方向提取了20種統(tǒng)計特征,最后用機器學習算法來識別服務(wù)使用類別。該方法僅通過收集和分析少量的無線流量,就可以確定附近的每個移動設(shè)備用戶是否使用了目標App 以及進行了何種操作,得到隨機森林算法最好的識別效果。這類方法中,不同研究工作的區(qū)別主要體現(xiàn)在特征選擇方面。文獻[41]首先在原始流量中提取了30 種數(shù)據(jù)分組長度和時間的統(tǒng)計特征,利用MIMD 準則選出6 種最具代表性可迭代的流量特征,這樣可以降低緩存要求并提高處理速度;然后利用連續(xù)時間窗口將進站流量切分成流量片段,采用rCKC(recursive time continuity constrained k-means clustering)算法將來自同一服務(wù)使用類型的流量片段聚類在一起。文獻[42]從行為結(jié)構(gòu)、流量特征和時間依賴關(guān)系3 個方面對流量進行建模,實現(xiàn)服務(wù)使用類型的分類。該方法首先用分層的方式將流量分割到會話中,而會話中又包含許多對話,這些對話大多是單一服務(wù)使用類型,對于混合服務(wù)使用類型的對話,則利用隱馬爾可夫模型(HMM,hidden Markov model)檢測并分解為單一服務(wù)使用類型的子對話;然后,提取數(shù)據(jù)分組長度和時延的序列特征,訓練多個服務(wù)使用分類器。

2)統(tǒng)計特征與哈希查表

文獻[43]針對微信在關(guān)閉時不能接收傳統(tǒng)網(wǎng)絡(luò)流量的情況,通過識別和分析iOS 推送通知服務(wù)APN(access point name)流量,識別消息類型。首先,基于會話對流量進行集群,并將其劃分為多個數(shù)據(jù)流塊(brust);然后,提取每個數(shù)據(jù)流塊的統(tǒng)計特征,并將這些特征發(fā)送到分類器中,從背景流量中提取APN 流量;最后,使用基于哈希的查找表方法分析來自APN 流量的消息類型。這種方法能夠推斷的服務(wù)使用類型有限。

3)自定義數(shù)據(jù)分組交互語言

文獻[44]提出了一種基于regex-inspired 語法的交互模式語言來描述App 接收和發(fā)送數(shù)據(jù)分組長度序列的方法,實現(xiàn)對信息、語言和視頻3 種服務(wù)使用類型的規(guī)則構(gòu)建,當一條包含已經(jīng)定義的數(shù)據(jù)分組長度序列的網(wǎng)絡(luò)流量到達識別模塊時,根據(jù)規(guī)則匹配即可判定服務(wù)使用類別。該方法僅在3 款主流的社交類App 上驗證了其識別性能。表2 是該方法的示例,每條規(guī)則由表示數(shù)據(jù)分組長度序列的item 序列組成,itemi=x[-y][{a,b}],其中,[{a,b}]表示長度為x的數(shù)據(jù)分組重復出現(xiàn)的次數(shù)范圍,[-y]表示其取值范圍。例如當一條網(wǎng)絡(luò)流量的數(shù)據(jù)分組長度序列是由長度為3 B 和52 B 重復組成時,則判定其為聊天信息。

表2 自定義數(shù)據(jù)分組交互語言示例

4)多標簽多視圖方法

之前的研究大多將流量切分成單一應(yīng)用序列,然后利用機器學習算法將其分成不同的服務(wù)使用類型。這會造成屬于同一服務(wù)使用類型的流量切分不準確的問題。對流量進行多標簽多視圖標注可以解決這一問題。多視圖學習利用不同視角之間的一致性來探索數(shù)據(jù)的不同視圖,以增強模型學習,達到更好的學習效果。多標簽方案指每個示例都與多個類標簽相關(guān)聯(lián),其結(jié)合了單一用途分類和混合用途分類,通過混合用途離群值的檢測和處理,可以減少后續(xù)分類的步驟。

文獻[45-46]通過增強的流量分割方法來減少混合使用的流量子序列;然后,利用流量子序列的數(shù)據(jù)分組長度視圖和數(shù)據(jù)分組到達時間間隔視圖的分類一致性,提高分類精度,如圖7 所示。此外,該方法還將單一使用子序列的分類問題和混合使用子序列的分類問題結(jié)合成一個統(tǒng)一的多標簽邏輯分類問題,有助于輸出每種服務(wù)使用類型的概率,在噪聲環(huán)境下更加穩(wěn)健。當序列分割方法不能清晰準確地分割序列時,會對該方法造成影響,從而產(chǎn)生混合多種用戶動作或狀態(tài)的子序列,進而影響服務(wù)使用類別的判定。

圖7 多標簽多視圖方法

3.3.2 用戶動作識別

基于不同App 用戶交互設(shè)計模式的不同,特定的用戶動作通常會產(chǎn)生區(qū)別性的網(wǎng)絡(luò)流量軌跡模式。因此,這些模式可以用于從匿名網(wǎng)絡(luò)中進行特定App 用戶動作識別。根據(jù)一段時間內(nèi)用戶動作模式的差異,可以從網(wǎng)絡(luò)數(shù)據(jù)中標記屬于特定用戶的特定流量,也可以進行用戶習慣分析。文獻[13,42,47-52]的研究大都是針對隱私敏感性的即時通信類App(如iMessage、KakaoTalk、WhatsApp)、社交類App(如Facebook、Twitter)、郵件客戶端類App(如Gmail、Yahoo Mail)進行用戶動作識別,且大都針對某一款App 的特定動作。

傳輸層的流量經(jīng)過加密后,負載特征和流統(tǒng)計特征都發(fā)生了改變,因而不具備簡單且易提取的特征字段。傳統(tǒng)非加密流量識別方法包括基于深度分組檢測、基于深度流檢測、基于端口以及負載檢測等方法,但都不適用于加密流量。加密和端口混淆等技術(shù)的使用,為加密網(wǎng)絡(luò)協(xié)議和加密網(wǎng)絡(luò)應(yīng)用的細顆粒度識別和準確實時識別帶來了挑戰(zhàn)[53]。研究者使用機器學習算法來應(yīng)對這些問題,在網(wǎng)絡(luò)流量分析領(lǐng)域,這類算法通常需要基于DTW(dynamic time warping)和Jaccard 算法進行相似度計算,將相似網(wǎng)絡(luò)流量聚類在一起,為后續(xù)的特征提取以及監(jiān)督學習算法的使用建立有效標記的數(shù)據(jù)集。

用戶動作識別主要有以下幾種方法。

1)字典模式

根據(jù)不同特征在不同網(wǎng)絡(luò)行為下的變化程度這一重要特性,字典模式將具有穩(wěn)定性和確定性的特征構(gòu)建成基于哈希的查找表,并標記其對應(yīng)的用戶動作類別標簽。當一個新的數(shù)據(jù)分組到達時,查詢字典以檢索用戶動作所屬的類別標簽,如果返回一個標簽,數(shù)據(jù)分組被給予那個標簽;如果返回2個或多個標簽,則選擇訓練期間最常與該特征關(guān)聯(lián)的用戶動作類別標簽。文獻[13]對iOS 即時信息服務(wù)進行研究,揭示了目標用戶和服務(wù)器之間交換數(shù)據(jù)分組大小的規(guī)律,發(fā)現(xiàn)了每個用戶行為都有2 種不同的數(shù)據(jù)分組大?。合⒈话l(fā)送到服務(wù)器時的數(shù)據(jù)分組大小、從服務(wù)器接收消息時的數(shù)據(jù)分組大小。該方法只對以下5 種用戶操作類型進行推斷:開始打字、停止打字、發(fā)送文本、發(fā)送附件、閱讀收信。此外,還可以推斷用戶使用的6 種語言和交換信息的長度。該方法基于2 個必要的假設(shè):①對于用戶動作識別,假設(shè)已經(jīng)正確地推斷出目標移動設(shè)備正在運行的操作系統(tǒng)類型;②對于語言和消息長度推斷,假設(shè)已經(jīng)正確識別了發(fā)送消息時的用戶動作。

2)統(tǒng)計特征與機器學習組合方法

統(tǒng)計特征與機器學習組合方法首先從數(shù)據(jù)分組序列中提取統(tǒng)計特征,然后利用機器學習算法識別用戶操作類型。文獻[54]基于此原理,針對微信提取雙向流量中數(shù)據(jù)分組的總長度和總數(shù)量、數(shù)據(jù)分組長度序列的7 種統(tǒng)計特征以及數(shù)據(jù)分組長度分布特征,測試了5 種常用的機器學習分類算法對細粒度的用戶動作識別效果,發(fā)現(xiàn)只有隨機森林算法取得了準確率和召回率均超過92%的較好結(jié)果。文獻[55]僅使用7 種與數(shù)據(jù)分組到達時間間隔密切相關(guān)的統(tǒng)計特征,就實現(xiàn)了從一小部分流量中識別出細粒度的用戶動作。對于Facebook 上一篇文章的評論,該方法可以判斷這個評論是長文字、短文字、貼紙還是圖片。該方法只在3 款App 上驗證了效果,且測試時沒有考慮流量噪聲的影響。

文獻[56]首先基于時間閾值1.25 s 將流量劃分為幾個描述不同操作的突發(fā)事件,然后從每個突發(fā)事件中提取相關(guān)的紅包交易和資金轉(zhuǎn)賬特征:①數(shù)據(jù)分組長度的一階和二階統(tǒng)計特征;②數(shù)據(jù)分組長度在特定范圍內(nèi)的數(shù)據(jù)分組總數(shù);③TCP 握手數(shù)量;④TCP 會話的出入流統(tǒng)計(總的有效載荷和數(shù)據(jù)分組數(shù)量),用來區(qū)分不同的突發(fā)事件。該方法可以準確識別紅包交易和資金轉(zhuǎn)賬的行為,并準確預測紅包交易和資金轉(zhuǎn)賬的數(shù)量。文獻[57]用突發(fā)事件的流統(tǒng)計特征代替TCP 握手數(shù)量,增加了對App 的識別和用戶動作細分識別。文獻[58]基于上述2 種方式在特征選擇時進行明顯簡化,只選擇了出站、進站、雙向數(shù)據(jù)分組長度的統(tǒng)計特征,用于識別“比特幣錢包”類App 上用戶共性動作,例如,啟動App、接收和發(fā)送比特幣。

文獻[59]首先通過SNI(server name indication)從原始流量中提取出每個App 的流量,然后根據(jù)文獻[60]的方法從每條流中提取22種關(guān)于數(shù)據(jù)分組長度和時間的統(tǒng)計特征,最后用機器學習算法識別用戶動作。在此基礎(chǔ)上,對每個用戶的App 使用習慣提取特征(如App 的類型、使用時間、使用頻率、在App 上操作最多的用戶動作),構(gòu)建分類器以識別用戶的年齡、性別和職業(yè)類型。但該文獻沒有講述其用戶動作流的分割方法。

3)基于凝聚層次聚類和隨機森林算法

基于凝聚層次聚類和隨機森林算法根據(jù)時間超時機制[10]將數(shù)據(jù)分組切分流量,變成數(shù)據(jù)分組序列,然后選取數(shù)據(jù)分組長度為作特征,用凝聚分層聚類算法將相近序列聚集在一起并選出類中心代表某一用戶動作類型,再用隨機森林算法推斷新的數(shù)據(jù)分組序列中的用戶動作類型。文獻[12]利用該方法識別Facebook、Twitter 和Gmail 三款主流App的少數(shù)幾種用戶隱私敏感的用戶動作類型。文獻[48]擴展了另外5 款App 的用戶動作識別。文獻[47]基于此方法對一款即時聊天應(yīng)用程序Kakao Talk 的11 種具體的用戶行為(加入聊天室、發(fā)送信息、添加朋友等)進行識別。該方法只對SSL/TLS 加密后的數(shù)據(jù)處理有效,不適于IPSec 加密。

各類機器學習算法在用戶信息探測中實際應(yīng)用時,大多數(shù)情況下都需要結(jié)合多種算法才能完成相關(guān)網(wǎng)絡(luò)流量識別和分析的任務(wù)。文獻[48]結(jié)合監(jiān)督學習和無監(jiān)督學習識別用戶在幾款主流App 上的用戶動作指紋,首先將流進行分層聚類,然后將每個用戶動作和每段流都分配到最近的類中,最后用隨機森林算法訓練分類器。

4)流量行為模型

文獻[49]基于用戶在操作App 時產(chǎn)生的流量行為(如傳輸速度、數(shù)據(jù)分組交換、數(shù)據(jù)移動)都是App 開發(fā)者設(shè)置的這一認知,僅利用一段中間流量,首先將數(shù)據(jù)流切分成觀察時間為5 ms 的片段,提取發(fā)送和接收數(shù)據(jù)分組的平均到達時間間隔、分組計數(shù)比例、數(shù)據(jù)大小占比這6 種特征和20 種數(shù)據(jù)分組大小在10 種區(qū)間內(nèi)的數(shù)量;然后使用增量式k-means 聚類算法找出最具有區(qū)分性的行為模型;最后通過多分類SVM將行為模型對應(yīng)到用戶動作。該方法能夠僅基于檢查IP 標頭的細微流量差異,就可對用戶執(zhí)行了何種動作進行推斷。但該方法依賴于服務(wù)器名稱解析,并要求網(wǎng)絡(luò)工作流量與流量簽名具有類似的時間順序。由于傳輸連接的挑戰(zhàn),這種情況很難實現(xiàn)。

5)深度學習

雖然傳統(tǒng)的機器學習算法可以解決很多因流量加密而造成的問題,但仍然有一些不足。例如,耗時多,手工提取特征代價大,特征頻繁更新。深度學習可以自動提取特征,近期引起很多研究者的重視,研究者開始嘗試用深度學習的方式分析移動設(shè)備中加密流量的各類信息。文獻[61]采用基于滑動窗口的方法將加密的流量流劃分為一系列對應(yīng)于單一App 用戶動作的流量片段,然后用歸一化的時間?空間流量矩陣和流量譜向量表示各段流量,在歸一化表示的基礎(chǔ)上,開發(fā)了一種深度神經(jīng)網(wǎng)絡(luò)(DNN,deep neural network)分類算法,用于識別用戶在不同App 上進行的關(guān)鍵動作。文獻[62]對數(shù)據(jù)分組負載首先利用卷積神經(jīng)網(wǎng)絡(luò)(CNN,convolutional neural network)提取空間依賴特征,然后用LSTM 提取時間依賴特征,再提取IP 頭部信息和流統(tǒng)計特征,并一起輸入DNN 模型中。該方法只對較粗粒度的用戶操作進行識別。

6)遷移學習

之前的大多數(shù)研究中,機器學習算法都是在相同設(shè)備和相同版本的App 采集的數(shù)據(jù)集上進行訓練和測試。文獻[63]研究發(fā)現(xiàn)在未知設(shè)備和操作系統(tǒng)版本上測試已經(jīng)訓練好的模型,其識別的準確率均出現(xiàn)超過21%的降低。因此,需要對每種不同移動設(shè)備和App 版本的組合情況進行訓練,但這非常不切實際。由于App 版本、移動操作系統(tǒng)和設(shè)備模型(下文統(tǒng)稱為配置)多種多樣,以前的方法并不適用于實際場景中的配置,文獻[64]將不同的配置作為遷移學習的案例,并采用協(xié)同訓練的方法來支持遷移學習過程,利用了來自源配置的加密流量的少量標記實例,以便構(gòu)造一個分類器,擴展了這些方法的能力,以泛化不同的配置,能夠識別完全未標記的不同目標配置中的用戶操作。

7)基于最大熵原理

文獻[65]針對Instagram 使用請求、響應(yīng)長度及其各自第一個TLS 片段長度這4 種特征來過濾特征穩(wěn)定的JSON(JavaScript object notation)格式數(shù)據(jù);然后基于最大熵原理,提出了一種劃分這些穩(wěn)定特征分布范圍的方法,并將特征空間映射到支持向量空間中,采用支持向量機算法進行用戶動作識別。

3.4 評價體系

通常網(wǎng)絡(luò)流量分析流程的最后一個階段是結(jié)果評估,依照標準評估此前所采用的分析方法是否理想,常用的評價標準包括真正(TP,true positive)、假正(FP,false positive)、真負(TN,true negative)、假負(FN,false negative)、精確率(PR,precision rate)、召回率(RR,recall rate)及F1 值等。TP 表示將真正屬于某類別的對象正確識定為該類別。FP 表示將不屬于某類別的對象判定為該類別。TN 表示將不屬于某類別的對象判定為非該類別。FN 表示將屬于某類別的對象判定為非該類別。PR 表示正確判定為某一類別對象的占比,它能夠反映識別的準確性。

RR 表示屬于某一類別對象被正確判斷的占比,它能夠反映判斷的全面性。

F1 值是綜合準確率和召回率的評價指標,F(xiàn)1值越高表示識別性能越好。

4 未來研究方向和挑戰(zhàn)

4.1 未知應(yīng)用

未知應(yīng)用指未知且流量識別器未經(jīng)過訓練的應(yīng)用程序。在某些情況下,未知應(yīng)用程序流量將占用大量的網(wǎng)絡(luò)帶寬。利用現(xiàn)有的技術(shù),將能夠識別的流量標記之后,如何將未標記過的流量進行同類聚合、預處理、打標簽、訓練,將未識別流量標記為某未知流量以供后續(xù)的標記和管理,也是從移動設(shè)備加密流量中探測用戶信息時需要注意和克服的一個問題。此外,當前的研究大多只是在較少量的手機操作系統(tǒng)版本和手機型號上安裝了幾款主流App 作為數(shù)據(jù)采集的平臺,以這樣的數(shù)據(jù)集訓練的用戶信息探測器的泛化性和穩(wěn)健性往往不足,使其在不同場景下對新流量的分析能力降低。另外,App 版本的升級變化也會使用戶信息探測的效果大打折扣。如果能及時自動更新用戶信息探測器,則可以有效避免人為參與探測器的調(diào)試和更新。但目前還未發(fā)現(xiàn)有涉及該領(lǐng)域的相關(guān)研究。除了可以在正規(guī)應(yīng)用市場下載App 外,還有許多惡意App 通過瀏覽器廣告誘導用戶下載安裝,這類App 對用戶隱私探測和竊取更嚴重,因此也需要加強對這類App 的用戶信息泄露的防護。

4.2 對抗反檢測

1)代理技術(shù)

當前一些應(yīng)用為了提高數(shù)據(jù)傳輸效率,采用數(shù)據(jù)壓縮代理技術(shù)來減少數(shù)據(jù)規(guī)模,但這對從流量分析角度獲取用戶信息設(shè)置了障礙。通常這類數(shù)據(jù)壓縮會使流量的統(tǒng)計特征發(fā)生較大的改變,使基于流統(tǒng)計特征的方法性能降低。為了克服各種類型的代理技術(shù)對用戶信息探測的阻礙,可以考慮采用分層、多階段的處理方式。

2)流量偽裝

流量偽裝指將一種流量特征偽裝成另一種流量特征,以此抵抗基于流量統(tǒng)計特征的流量分析。一些惡意應(yīng)用常使用流量偽裝方法進行網(wǎng)絡(luò)攻擊和隱蔽通信。為了應(yīng)對加密流量中的異常與攻擊,急需研究更加有效的流量偽裝識別技術(shù)等其他的對抗反檢測方法,如多路復用流技術(shù)。

3)匿名通信

匿名通信指采取一定的措施隱蔽通信流中的通信關(guān)系,使竊聽者難以獲取或推斷通信雙方的關(guān)系及內(nèi)容。匿名通信的目的就是隱蔽通信雙方的身份或通信關(guān)系,保護網(wǎng)絡(luò)用戶的個人通信隱私。但這類技術(shù)具有很強的兩面性,網(wǎng)絡(luò)攻擊者也會利用這些對抗反檢測技術(shù)進行一些惡意的網(wǎng)絡(luò)行為。

從層次化網(wǎng)絡(luò)協(xié)議的角度來看,當前從流量分析角度對用戶隱私泄露探測方面的研究是從網(wǎng)絡(luò)層和傳輸層獲取網(wǎng)絡(luò)流量信息,但低層網(wǎng)絡(luò)流量更適用于加密流量的分析。這方面的研究還相當缺乏,是未來可以關(guān)注的方向。

4.3 應(yīng)對新協(xié)議

目前,不斷有新型網(wǎng)絡(luò)協(xié)議投入使用,例如QUIC、SPDY、HTTP/2.0 等新協(xié)議,以及新版本的加密協(xié)議TLS 1.3。此外,越來越多的App 開發(fā)者使用私有協(xié)議,且這些協(xié)議的語法和語義并不規(guī)范。因此,之前基于舊版本協(xié)議的特征選擇和模型建立方法可能不完全適用,需要進行周期性更新和改進,如何使其自適應(yīng)地應(yīng)用于新協(xié)議成為急需解決的重大問題,尤其很多用戶信息探測方法基于已知協(xié)議的知識背景,無法識別未知協(xié)議流量給網(wǎng)絡(luò)帶來的安全問題,安全隱患巨大。

此外,考慮到移動設(shè)備與物聯(lián)網(wǎng)(IoT,Internet of things)設(shè)備一樣具有移動性和相近或完全相同的協(xié)議棧,因此可以嘗試將移動設(shè)備網(wǎng)絡(luò)流量分析的相關(guān)技術(shù)遷移到IoT 設(shè)備的相關(guān)研究上。

4.4 負載均衡

之前的研究通過主要域名或IP 地址來提取in-App 操作的流量,例如利用WHOIS 協(xié)議進行域過濾,然而這類啟發(fā)式方法簡單粗糙且容易出錯。隨著越來越多App 的服務(wù)端部署在云服務(wù)器上,其采用的負載均衡策略使之不能將服務(wù)端IP 地址與服務(wù)進行映射綁定。當前絕大多數(shù)in-App 識別方法在對目標服務(wù)采集數(shù)據(jù)時刻意延長操作時間以獲取足夠的數(shù)據(jù)流量,方便提取有效特征。但這存在一個嚴重問題,即基于非用戶正常操作邏輯的模式構(gòu)建,難以直接應(yīng)用在實際網(wǎng)絡(luò)環(huán)境中。

5 結(jié)束語

對移動設(shè)備的加密流量分析是當前的研究熱點,其中關(guān)于用戶信息的探測也是其中重要的一個方面。本文結(jié)合近幾年的相關(guān)研究成果,首先,歸納了關(guān)于加密流量分析與用戶信息密切相關(guān)的研究目標。其次,闡述了用戶信息探測的研究體系,其中包含數(shù)據(jù)采集、特征選擇、模型與方法,以及評價體系,并對每個部分的研究狀況進行了闡述和評論。最后,歸納現(xiàn)有基于移動設(shè)備加密流量用戶信息探測的不足和難點,展望其研究趨勢和未來的研究方向。

猜你喜歡
網(wǎng)絡(luò)流量加密分組
基于多元高斯分布的網(wǎng)絡(luò)流量異常識別方法
基于神經(jīng)網(wǎng)絡(luò)的P2P流量識別方法
一種基于熵的混沌加密小波變換水印算法
分組搭配
怎么分組
AVB網(wǎng)絡(luò)流量整形幀模型端到端延遲計算
分組
認證加密的研究進展
基于ECC加密的電子商務(wù)系統(tǒng)
基于格的公鑰加密與證書基加密
萍乡市| 广昌县| 于田县| 伊宁市| 揭东县| 七台河市| 酒泉市| 韶山市| 朝阳区| 边坝县| 玉环县| 大关县| 阜平县| 定陶县| 酉阳| 汶上县| 仙桃市| 湖北省| 同仁县| 宽甸| 玛沁县| 石柱| 甘肃省| 双桥区| 独山县| 中山市| 三明市| 时尚| 会泽县| 郴州市| 林甸县| 华坪县| 嘉善县| 汉阴县| 文登市| 迁西县| 新蔡县| 阳春市| 岑溪市| 甘洛县| 儋州市|