卞勇



摘 要: 為了解決android系統(tǒng)的安全問題,提出采用客戶端加云端服務器合作的方案,客戶端主要負責輕量級檢測、數(shù)據(jù)上傳、檢測結果的反饋[1];云端服務器主要負責樣本學習、IP地址和時間戳提取、異常IP地址的定位、結果的評定和驗證,這樣一部分惡意軟件在客戶端就被快速地檢測出來,另一部分復雜的處理過程安排在云端服務器上,減輕了客戶端數(shù)據(jù)處理的壓力,提高了方案實施的穩(wěn)定性和效率[2]。
關鍵詞: 云端服務器;輕量級;樣本學習;驗證
中圖分類號: TP309 文獻標識碼: A 文章編號: 2095-8153(2017)05-0103-03
目前Android 已然成為市場占有量最大的移動智能設備平臺,據(jù)業(yè)界人士估計,今年Android在全球智能手機市場上的份額由去年的85%增長至90%。同時也成為了移動惡意應用最大的溫床,Android 惡意軟件成為當今主流安全威脅之一。2016年全年,360互聯(lián)網(wǎng)安全中心累計截獲Android平臺新增惡意程序樣本1 403.3萬個,平均每天新增3.8萬惡意程序樣本。2016年全年,從手機用戶感染惡意程序情況看,360互聯(lián)網(wǎng)安全中心累計監(jiān)測到Android用戶感染惡意程序2.53億,平均每天惡意程序感染量約為70萬人次[3],可見android系統(tǒng)存在很大的安全隱患。
目前主流的惡意軟件檢測技術主要有靜態(tài)檢測和動態(tài)檢測技術以及混合檢測,靜態(tài)檢測技術主要通過匹配病毒庫信息,檢測速度快,準確率高,但是無法識別變異病毒和新型病毒;動態(tài)檢測技術可以識別變異病毒和新型病毒,但是檢測技術復雜,而且準確率低;混合檢測技術就是將靜態(tài)檢測技術和動態(tài)檢測技術融合起來,實現(xiàn)起來相當困難。鑒于以上情況,本文提出一種基于網(wǎng)絡行為的對目標IP地址進行檢測為核心的惡意軟件檢測技術,本方法將檢測的主要模塊安排在云端服務器,這樣減輕了客戶端的壓力,提高了檢測速度,重點是該方法是基于目標軟件行為的檢測方法[4],可以準確識別新型惡意軟件和變異的惡意軟件。
1 檢測方案框架概述
本方案提出的android平臺惡意軟件檢測方案是客戶端加云端服務器端的模式,客戶端安裝一款基于android平臺的輕量級檢測軟件,云端服務器負責較復雜的惡意軟件檢測過程,客戶端主要負責輕量級的靜態(tài)掃描和數(shù)據(jù)的上傳,檢測結果的反饋,客戶端靜態(tài)掃描時可以識別的惡意軟件,檢測軟件會直接將檢測結果反饋給用戶,如果遇到不能確定的目標軟件,客戶端就會提取該軟件的名稱、版本、運行的時間以及該軟件通信時的DNS響應數(shù)據(jù)包[5],并將這些信息上傳到云端服務器,云端服務器有豐富的硬件和軟件資源以及龐大的樣本數(shù)據(jù)庫,將對上傳的數(shù)據(jù)作進一步的檢測,如果發(fā)現(xiàn)異常,云端服務器將直接將數(shù)據(jù)傳到客戶端,客戶端將結果反饋給用戶,并存入自己的惡意軟件病毒庫。系統(tǒng)框架如圖1所示。
2 客戶端方案設計
2.1 客戶端方案設計
客戶端檢測系統(tǒng)的設計就是將基于android系統(tǒng)的檢測軟件安裝在客戶端。首先,客戶端會定期向云端服務器發(fā)送大量正常的應用程序樣本配合云端服務器正常樣本的學習[6];其次,利用客戶端的惡意軟件病毒庫對目標軟件進行靜態(tài)的掃描,發(fā)現(xiàn)異常直接將結果反饋給用戶,一些常見的惡意病毒會很快檢測出結果,節(jié)約了時間,提高了效率,如果遇到無法識別的目標軟件,系統(tǒng)將提取該軟件信息以及通信時的DNS響應數(shù)據(jù)包,將這些信息打包上傳至云端服務器進一步檢測;最后,對云端服務器反饋回來的結果除了反饋給用戶外,客戶端自己也會將其存儲到自己的病毒庫,以備下次用于惡意軟件的輕量級檢測。
2.2 DNS數(shù)據(jù)包的收集過程
當客戶端對目標軟件無法檢測的時候,客戶端就會將目標軟件的信息包括軟件的名稱、版本號、已運行的時間以及該軟件在通信時的DNS響應數(shù)據(jù)包一并上傳至云端服務器,DNS數(shù)據(jù)包的信息收集工作主要借助于Wireshark軟件來實現(xiàn),具體就是將數(shù)據(jù)包在傳輸過程中的目標IP地址和時間戳截獲,并且將目標軟件運行態(tài)的相關信息一起發(fā)送至云端服務器。
3 云端服務器方案設計
3.1 云安全技術簡述
云安全(Cloud Security)技術是網(wǎng)絡時代信息安全的最新體現(xiàn),包含了未知病毒行為判斷的新興技術和概念,通過網(wǎng)絡上的大量客戶端對網(wǎng)絡中軟件行為的異常監(jiān)測,獲取網(wǎng)上惡意程序的最新信息,上傳到云端服務器進行自動分析和處理,并將結果反饋給每一個客戶端,云端服務器也會根據(jù)客戶端定期上傳的正常軟件的信息更新自己的樣本學習數(shù)據(jù)庫[7]。
3.2 云端服務器檢測流程
整個檢測方案的核心就是云端服務器檢測部分,主要功能就是正常軟件樣本的學習、IP地址和時間戳獲取、確定異常IP和目標軟件的關系、異常IP的定位及比對驗證,最終得出檢測結果。整個流程如圖3。
3.3 云端服務器檢測具體步驟
正常軟件樣本的學習就是客戶端會定期上傳一些正常軟件,并且記錄這些軟件通信時涉及的IP地址,這樣就形成了一個個軟件對IP地址的一對多的集合[8],存儲到云端服務器的正常IP地址的集合中,正常軟件的學習過程需要大量的應用程序以及他們對應正常IP的樣本,云端服務器的硬件優(yōu)勢完全可以滿足方案的設計。
云端服務器接收到客戶端上傳的DNS數(shù)據(jù)包后,利用Wireshark軟件提取DNS數(shù)據(jù)包的目標IP和對應時間戳[9],并將其統(tǒng)一存儲,以便和樣本庫中的正常IP地址作比較。如果比較后正常,則退出檢測,反之將異常IP存儲。
出現(xiàn)異常IP后,首先要對其定位,及通過之前一并提取的時間戳,查看哪些軟件在這一時間段運行,查出異常IP涉及的軟件,如果同一時間出現(xiàn)多個軟件運行,則根據(jù)軟件運行時間的總體的分布來確定檢測結果,當然這樣的檢測要反復的驗證,只有當異常IP出現(xiàn)在同一款軟件運行多次才會最終確認該軟件為惡意軟件,這樣有效的提高了惡意軟件檢測的準確性[10]。endprint
4 結束語
筆者設計的基于云端服務器的惡意軟件檢測方案,是在借鑒前人檢測方案優(yōu)點的基礎上設計出來的,優(yōu)勢有:(1)將檢測的主要模塊安排在云端服務器,減輕了客戶端檢測的壓力,提高了整個系統(tǒng)的穩(wěn)定性;(2)在檢測時事先在客戶端進行輕量級的檢測,隨著整個方案運行的深入,云端模塊會源源不斷將惡意軟件樣本傳到客戶端,客戶端惡意軟件樣本資源也會越來越豐富,很多常見的惡意軟件在客戶端就可以輕松檢測出來,加快了整個方案的檢測速度。不足之處在于:在進行異常IP軟件定位時,出現(xiàn)同一時間多個軟件,目前是通過總體分布規(guī)律來判斷的,這樣過程比較復雜,準確性也不高,這是筆者以后需要提高和研究的重點方向。
[參考文獻]
[1]張玉清,王 凱,楊 歡. Android 安全綜述[J]. 計算機研究與發(fā)展,2015,51(7):1385-1396.
[2]李 挺,董 航,袁春陽. 基于Dalvik指令的Android 惡意代碼特征描述及驗證[J]. 計算機研究與發(fā)展,2015,51(7):1458-1466.
[3]楊 歡,張玉清,胡予濮. 基于權限頻繁模式挖掘算法的Android 惡意應用檢測方法[J].通信學報,2013,34(1):106-115.
[4]張 銳,楊吉云. 基于權限相關性的Android 惡意軟件檢測[J]. 計算機應用,2014,34(5):1322-1325.
[5]呂曉慶. Android軟件動態(tài)行為監(jiān)測系統(tǒng)的設計和實現(xiàn)[D]. 北京: 北京郵電大學,2013.
[6]彭國軍,李晶雯,孫潤康,等.Android惡意軟件檢測研究與進展[J].武漢大學學報(理學版),2015,61(1):21-33.
[7]張葉慧,彭新光,蔡志標. 基于類別以及權限的Android 惡意程序檢測[J]. 計算機應用研究,2014, 35(5):1568-1571.
[8]周裕娟,張紅梅,張向利,等. 基于Android 權限信息的惡意軟件檢測[J].計算機應用研究,2015, 32(10):3036-3040.
[9]文偉平,梅 瑞,寧 戈,等.Android惡意軟件檢測技術分析和應用研究[J].通信學報,2014,8:78-94.
[10]侯勤勝,曹天杰,秀 清.基于網(wǎng)絡行為的Android惡意軟件檢測方案[J].安徽大學學報(自然科學版),2015(9):32-36.
Android Malware Detection Scheme based on Cloud Server
BIAN Yong
(Department of Information Electronics,Jiangsu Institute of Tourism and Hospitality,Yangzhou 225000,China)
Abstract: In order to solve the security problem of android system,it is proposed to adopt the client-side cloud server cooperation scheme,in which the client is mainly responsible for lightweight detection,data uploading,test results feedback,and cloud server is mainly responsible for sample learning,IP address and timestamp Extraction,abnormal IP address location,result assessment and verification,so that some of the malicious software in the client can be quickly detected to save some time,and another part of the complex processing is arranged in the cloud server,which can reduce the client data processing pressure,and improve the stability and efficiency of program implementation.
Key words: cloud server;lightweight;sample study;validationendprint