智能手機(jī)的惡意代碼防范研究
在通信技術(shù)高速發(fā)展的今天, 智能手機(jī)變得越來越普及, 人們在享受智能手機(jī)強(qiáng)大功能的同時, 也受到來自手機(jī)惡意代碼的侵?jǐn)_。為有效遏制手機(jī)惡意代碼的快速發(fā)展勢頭,相應(yīng)的分析防御方法已相繼提出, 各種手機(jī)殺毒軟件也隨之應(yīng)運(yùn)而生。目前主流的手機(jī)惡意代碼防御方法主要參照計(jì)算機(jī)惡意代碼的分析防御技術(shù), 包括傳統(tǒng)的惡意代碼防御技術(shù)( 如基于惡意代碼特征匹配的掃描技術(shù)和啟發(fā)式經(jīng)驗(yàn)規(guī)則等) 及行為阻斷技術(shù); 主流手機(jī)殺毒產(chǎn)品基本能做到有效地實(shí)時掃描及監(jiān)控、病毒處理和查殺、病毒庫及軟件更新, 其配套的通信基礎(chǔ)設(shè)施也在逐步完善當(dāng)中。
各種殺毒工具都是基于惡意代碼的特征碼實(shí)現(xiàn), 在惡意代碼出現(xiàn)到特征碼被提取出的這段時間足以讓惡意代碼實(shí)現(xiàn)破壞力, 而殺毒工具對此卻無能為力。盡管手機(jī)網(wǎng)絡(luò)可以借鑒互聯(lián)網(wǎng)的防范技術(shù), 但由于智能手機(jī)和計(jì)算機(jī)軟硬件上的本質(zhì)差別,如何有效防范智能手機(jī)的惡意代碼正越來越受到人們的關(guān)注。對此, 本文研究開發(fā)了智能手機(jī)惡意代碼防范系統(tǒng), 以實(shí)現(xiàn)在手機(jī)終端、網(wǎng)關(guān)、服務(wù)器及PC產(chǎn)品等層面上對智能手機(jī)惡意代碼的立體防范。
1 智能手機(jī)惡意代碼防范模型
針對智能手機(jī)的惡意代碼問題, 本文提出了智能手機(jī)惡意代碼防范模型, 并詳細(xì)介紹了該模型各個層次的功能, 為智能手機(jī)惡意代碼防范提供理論依據(jù)。
圖1 是本文提出的智能手機(jī)惡意代碼防范模型, 該模型以當(dāng)前的計(jì)算機(jī)病毒防范為參考, 從5 個層次規(guī)劃智能手機(jī)惡意代碼防范模型, 其目標(biāo)是為實(shí)際的智能手機(jī)惡意代碼防范系統(tǒng)提供理論指導(dǎo)。
圖1 智能手機(jī)惡意代碼防范模型
按對智能手機(jī)的防范能力,可以把整個模型劃分為惡意代碼檢測層、備份恢復(fù)層、實(shí)時監(jiān)控層、漏洞管理層、數(shù)字免疫層等5 個層次。此外,為了支持模型5 個層次的運(yùn)行,模型中還包括核心數(shù)據(jù)模塊。核心數(shù)據(jù)模塊包含5 個層次所要求的數(shù)據(jù)( 例如, 惡意代碼特征庫、防范策略、免疫信息等)以及獲得這些數(shù)據(jù)需要的支持模塊( 例如, 惡意代碼分析等) 。
接下來,以5 個層次為序分別簡要描述模型的內(nèi)容。
1.1 惡意代碼檢測層
惡意代碼檢測層主要指惡意代碼檢測引擎, 它由兩個部分組成: 特征代碼庫和掃描算法。組織合理的特征代碼庫和高效的掃描算法是惡意代碼掃描引擎的兩個核心部分。其具體將研究特征代碼庫的組織方法, 使特征代碼庫盡量節(jié)省空間; 提高掃描算法的執(zhí)行效率, 降低掃描算法的空間復(fù)雜度, 以適應(yīng)智能手機(jī)設(shè)備的特定硬件需求。
1.2 備份恢復(fù)層
在智能手機(jī)安全領(lǐng)域, 由于存在與計(jì)算機(jī)的重要區(qū)別, 因此, 可以用恢復(fù)技術(shù)來恢復(fù)被感染對象的功能。這些區(qū)別主要表現(xiàn)在: 計(jì)算機(jī)不僅運(yùn)行應(yīng)用程序, 而且還是程序員編制程序的工具, 因此, 時時刻刻都有新的應(yīng)用程序出現(xiàn)在計(jì)算機(jī)中。而智能手機(jī)則完全不同, 用戶不會在智能手機(jī)上編制新的應(yīng)用程序。即使下載安裝了其他應(yīng)用, 也是非常有限( 可枚舉) 的集合。因此, 備份恢復(fù)層功能是把智能手機(jī)領(lǐng)域用到的應(yīng)用都備份到一個公共平臺上, 當(dāng)發(fā)現(xiàn)用戶的手機(jī)中有部分對象遭到破壞時, 采用從公共平臺恢復(fù)的手段來恢復(fù)被感染對象。
1.3 實(shí)時監(jiān)控層
實(shí)時監(jiān)控層的功能是監(jiān)控手機(jī)的數(shù)據(jù)出入口,起到安全預(yù)防的功能。在實(shí)際環(huán)境中, Internet 訪問、短消息服務(wù)、Email 服務(wù)、信息共享( 藍(lán)牙、紅外、PC、USB、存儲卡) 、WAP、GPRS??CDMA??GSM 是病毒入侵智能手機(jī)的途徑。實(shí)時監(jiān)控工具預(yù)防惡意代碼通過這些途徑入侵智能手機(jī)。部署在手機(jī)上的實(shí)時監(jiān)控工具將監(jiān)控進(jìn)出互聯(lián)網(wǎng)絡(luò)、信息服務(wù)、藍(lán)牙、紅外線等接口的數(shù)據(jù), 實(shí)現(xiàn)預(yù)防惡意代碼入侵, 防止用戶信息被竊取的功能。
1.4 漏洞管理層
智能手機(jī)系統(tǒng)漏洞管理層主要有兩層含義。在客戶端, 表現(xiàn)為一個工具軟件, 用于探測已知的漏洞或脆弱性, 提醒用戶安全事項(xiàng)。另一個層次的含義是設(shè)計(jì)一個公共的協(xié)議, 讓眾多的手機(jī)廠商、手機(jī)軟件開發(fā)商遵循。廠商可以通過該協(xié)議發(fā)布漏洞補(bǔ)丁, 便于用戶下載安裝。
1.5 數(shù)字免疫層
就傳統(tǒng)的計(jì)算機(jī)系統(tǒng)安全而言, 現(xiàn)有的防范計(jì)算機(jī)病毒的技術(shù)都是權(quán)宜之計(jì)。盡管這些防范技術(shù)都取得了非常好的效果, 但在新病毒不斷出現(xiàn)的情況下, 沒有一勞永逸的基礎(chǔ)架構(gòu)可以解決計(jì)算機(jī)病毒防范問題。
本文將在數(shù)字免疫層研究在智能手機(jī)領(lǐng)域解決惡意代碼的問題, 并采用“免疫”技術(shù)來實(shí)現(xiàn)智能手機(jī)領(lǐng)域的長遠(yuǎn)防范方法。數(shù)字免疫基礎(chǔ)設(shè)施包含多層意思: 首先, 它不是局限于某個軟件、某個系統(tǒng)的狹隘免疫思想( 該方法已被證明為不可行) , 而是著眼于所有智能手機(jī)及其相關(guān)服務(wù)領(lǐng)域的宏觀免疫思想; 其次, 與其說它是一個系統(tǒng), 還不如說它是一個基礎(chǔ)設(shè)施, 這就預(yù)示著其建設(shè)過程將非常艱巨; 最后, 免疫的對象不是某個程序, 而是一個系統(tǒng)( 智能手機(jī)) , 這也更加貼近生物領(lǐng)域的免疫概念。
除了5 個層次之外, 核心數(shù)據(jù)模塊包含5 個層次所要求的數(shù)據(jù)( 例如, 惡意代碼特征庫、防范策略、免疫數(shù)字等) 以及獲得這些數(shù)據(jù)需要的支持模塊( 例如, 惡意代碼分析等) 。
惡意代碼樣本采集和分析技術(shù)是防范技術(shù)的前提。與計(jì)算機(jī)病毒防范類似, 如果要成功防范移動終端惡意代碼, 就必須獲得其樣本, 分析惡意代碼樣本的運(yùn)行機(jī)制, 從中得到防范方法。這部分的關(guān)鍵技術(shù)點(diǎn)在于: 惡意代碼樣本采集及特征碼提取技術(shù)。
2 智能手機(jī)惡意代碼防范系統(tǒng)
以智能手機(jī)惡意代碼防范模型為指導(dǎo), 本文研究開發(fā)了一個智能手機(jī)惡意代碼防范系統(tǒng)。該系統(tǒng)嚴(yán)格按照防范模型進(jìn)行構(gòu)建, 系統(tǒng)各個層次采取的具體方案詳細(xì)描述如下。
2.1 惡意代碼檢測層實(shí)現(xiàn)方案
惡意代碼檢測是防范已經(jīng)入侵到智能手機(jī)內(nèi)部的惡意代碼的有效方法。與計(jì)算機(jī)病毒檢測技術(shù)類似, 如果要成功檢測出已經(jīng)入侵到智能手機(jī)里的惡意代碼, 就必須開發(fā)一個惡意代碼檢測引擎, 該引擎主要由兩個部分構(gòu)成, 它們是惡意代碼特征庫和掃描算法。
?。?1) 惡意代碼特征庫: 惡意代碼的有效檢測取決于相關(guān)特征碼數(shù)據(jù)庫的采集與及時更新。惡意代碼通常包括引導(dǎo)、傳染和表現(xiàn)3 大功能模塊,特征碼是從惡意代碼源代碼中不同位置提取的一系列字節(jié), 檢測層通過不同的提取方法和提取工具采集智能手機(jī)中最新流行的特征碼, 并及時更新特征庫。
?。?2) 掃描算法: 掃描算法的時間空間復(fù)雜度是惡意代碼掃描引擎關(guān)注點(diǎn)。對于動態(tài)串的掃描算法有兩個思路: 單模式匹配算法和多模式匹配算法。單模式匹配的經(jīng)典算法有KMP(Knuth??Morris??Pratt ) , QS(Quick Search) , BM( Boyer??Moore) 等算法, 其中, BM算法被廣泛應(yīng)用于現(xiàn)有商業(yè)殺毒軟件中。經(jīng)典的多模式匹配算法是AV.Aho 提出的基于有限自動機(jī)的DFSA( DeterminiSTic Finite StateAutomata) 算法, 該算法在匹配前對模式串集合進(jìn)行預(yù)處理, 轉(zhuǎn)換成樹型有限自動機(jī), 然后只需對待匹配動態(tài)串進(jìn)行一次掃描即可找出所有的模式串, 其時間復(fù)雜度為O( n) 。
評論