摘 要:隨著智能手機變得越來越復雜,功能越來越強大,給用戶提供更多方便的同時也給用戶帶來了很多安全隱患。本文首先分析了Android智能手機所面臨的安全問題,之后提出Android平臺手機上的入侵檢測系統,能及時有效的檢測到入侵攻擊,減輕惡意木馬對用戶造成的危害,大大改善用戶體驗。
關鍵詞:Android 安全問題 入侵檢測系統
中圖分類號:TP39文獻標識碼:A文章編號:1672-3791(2012)06(c)-0030-02
隨著3G通信網絡的普及,智能手機市場份額大幅提升,其中Android智能手機占市場份額最大,獲得52.5%的市場占有率[1]。由于Android智能手機用戶數龐大、開源性強,用戶可自行安裝軟件、游戲等第三方服務商提供的程序,很多病毒攻擊者把矛頭指向了它,制造了大量Android木馬,這嚴重影響了Android智能手機用戶的日常使用。如何有效的預防智能手機平臺上的入侵攻擊已經成為亟待解決的問題。Iker Burguera、Urko Zurutuza等人提出了Behavior-Based Malware Detection System for Android[2],Amir Houmansadr、Saman A.Zonouz和Robin Berthier提出了一個基于云端服務器的Android智能手機入侵檢測及響應系統[3]。Android智能手機平臺的入侵檢測系統能及時有效的檢測到入侵攻擊,為用戶提供一個安全的使用環境。
1 Android智能手機存在的安全隱患
2011年,Android木馬呈現爆發式增長,新增Android木馬樣本4722個,被感染人數超過498萬人次[1]。雖然Android平臺的開源、開放、免費等特性為google帶來了大量的市場占有率,但是這也給消費者帶來了不少安全隱患,成為新的移動互聯網安全檢測主戰場[1]。Android智能手機存在如下幾點安全問題。
(1)惡意扣費。據360安全中心調查,78%的Android平臺手機木馬旨在悄悄吞噬用戶的手機話費。“白卡吸費磨”、“Android吸費王”等都是使Android用戶聞之色變的惡意扣費軟件。這些惡意扣費軟件安裝后會私自發送短信定制費用高昂的SP服務,并自動屏蔽以10086開頭的全部短信,在用戶不知不覺的情況下偷偷消耗用戶話費。
(2)竊取用戶隱私。除惡意扣費外,Android平臺木馬的另一主要危害是竊取用戶隱私。比如震驚全球的“CIQ事件”、DDL“隱私大盜”木馬、“索馬里海盜”木馬及“X臥底”系列木馬等。它們瞄準了手機通訊錄、照片、短信、設備信息等用戶隱私,將用戶的個人信息出賣給其他不合法商家,從中牟取暴利。
(3)垃圾短信。在用戶舉報的各類垃圾短信中,主要是打折促銷、發票假證、地產中介、移民留學、金融理財等廣告服務類短信,另外就是冒充親友欺詐、中獎釣魚詐騙、虛假慈善捐款等惡意欺詐類短信。
(4)系統破壞。有些病毒,如“Root破壞王”,可以自動獲取手機Root權限,然后隨意修改添加文件,刪除系統應用,私自下載惡意軟件,而且這一切都是隱蔽進行的。
2 Android智能手機入侵檢測系統設計
傳統計算機上的入侵檢測系統定義為:一種通過收集和分析各種系統行為、安全日志、審計數據或網絡數據包,檢查系統中是否有未經授權的進入和有不良企圖的活動等入侵攻擊,并及時予以響應,阻止可能的入侵行為,降低甚至避免入侵危害的積極進程或設備。在當下,智能手機與個人計算機越來越靠近,智能手機已經基本具備了個人計算機所具有的功能,因此Android智能手機平臺上的入侵檢測系統與傳統計算機上的入侵檢測系統模型相似。如圖1所示,Android智能手機入侵檢測系統主要包括以下幾部分:數據采集模塊、數據分析引擎模塊、控制臺模塊、數據管理模塊,各部分功能如以下幾點。
(1)數據采集模塊。
數據采集模塊主要負責采集數據,采集的數據包括任何可能包含入侵行為線索的系統數據。比如說網絡數據包、用戶行為日志和系統調用記錄等。其將這些數據收集起來,然后發送到數據分析模塊進行處理[4]。
由于Android平臺手機上的安全問題大部分是通過網絡引發的(比如通過用戶點擊鏈接而偷偷定制SP服務、惡意軟件私自發送短信定制SP服務、竊取用戶隱私上傳到特定服務器等),所以在此處我們只采集進出手機的所有網絡數據包。此模塊主要基于開源的libpcap包。
(2)數據分析引擎。
收集到的所有數據被送到數據分析引擎,分析引擎一般通過三種技術手段進行分析:模式匹配、統計分析和完整性分析[5]。
在本系統設計初期,我們根據Android平臺手機上惡意軟件攻擊行為的特征羅列出一定數量的規則組成規則集,然后在此規則集的基礎上建立分析引擎的核心——有限自動機。考慮到這樣一來入侵檢測范圍很大程度受到已有知識的局限,無法檢測出未知的攻擊手段[6],在系統設計后期,我們會通過機器學習的方法來動態建立自動機,這樣就能動態的檢測到所有的入侵攻擊。
分析引擎將發送過來的數據與自動機進行匹配,即與規則集中的各種規則進行比較與分析,以判斷是否有入侵事件發生。如果數據與自動機匹配成功,就意味著檢測到一個入侵攻擊,此時分析引擎會給控制臺發送一個檢測到入侵攻擊的消息,同時把此網絡數據包發送給數據管理模塊。
(3)控制臺模塊。
控制臺模塊按照警告產生預先定義的響應采取相應的措施,可以是重新配置網絡防火墻、終止進程、切斷連接、改變文件屬性,也可以只是簡單的警告[5]。當發現入侵攻擊時,本系統會向用戶產生一個警告,告知用戶是哪個應用程序隱含安全隱患,用戶可根據這個警告采取相應的措施。
(4)數據管理模塊。
一個好的入侵檢測系統不僅僅應當為管理員提供實時、豐富的警報信息,還應詳細地記錄現場數據,以便于日后需要取證時重建某些網絡事件[5]。
當檢測到入侵攻擊時,本系統會把相應的數據存儲到指定數據庫,以供用戶日后查證。數據庫采用Android平臺內置的sqlite3輕量級數據庫實現。由于Android系統存儲空間有限,當數據量到達一定大小時,可以轉儲到pc機上或者定時清理。
3 結語
計算機上的入侵檢測系統研究一直都是網絡安全領域的研究熱點,并且也有了一定的研究成果。隨著智能手機安全問題日趨嚴重,智能手機上的入侵檢測系統也將成為全球性的課題。Android智能手機入侵檢測系統能及時有效的檢測到入侵攻擊,保障用戶的安全使用。
參考文獻
[1]360安全中心2011年中國手機安全狀況報告.
[2]Iker Burguera,Urko Zurutuza,Simin Nadjm-Tehrani.Crowdroid:Behavior-Based Malware Detection System for Android[J].18th ACM Conference on Computer and Communications Security.
[3]Amir Houmansadr,Saman A.Zonouz,Robin Berthier.A Cloud-based Intrusion Detection and Response System for Mobile Phones[J].2011 IEEE/IFIP 41st International Conference on Dependable System and Networks.
[4]唐正軍,李建華.入侵檢測技術[M].北京:清華大學出版社,2004.
[5]王廣勝.談構建計算機入侵檢測系統[J].湖北生態工程職業技術學院學報,2006,4(3):48~49.
[6]連一峰,戴英俠,胡艷,等.分布式入侵檢測模型研究[J].計算機研究與發展,2003,40(8):1195~1202.