王立中
摘要:本文針對(duì)現(xiàn)有的手機(jī)殺毒軟件和防火墻更新滯后的問題,提出了利用神經(jīng)網(wǎng)絡(luò)
關(guān)鍵字:智能手機(jī);安全;神經(jīng)網(wǎng)絡(luò);病毒病毒識(shí)別模型在智能手機(jī)監(jiān)測中的優(yōu)越性以及可行性。
0 引言
現(xiàn)階段,互聯(lián)網(wǎng)已成為當(dāng)今社會(huì)不可或缺的一部分,智能手機(jī)的數(shù)量也是與日俱增,與此同時(shí)不斷發(fā)展的是手機(jī)病毒,手機(jī)病毒已成為現(xiàn)代病毒發(fā)展的趨勢。
所謂手機(jī)病毒,其實(shí)是一種破壞手機(jī)系統(tǒng)的程序,且其傳播手段極為廣泛,可通過短信、彩信、郵件、網(wǎng)站或者下載文件、藍(lán)牙等傳播,手機(jī)一旦被病毒感染就會(huì)根據(jù)所感染病毒程序的要求對(duì)手機(jī)實(shí)施破壞,其表現(xiàn)方式不盡相同,可以使關(guān)機(jī)、死機(jī)、刪除手機(jī)資料、自動(dòng)通話、發(fā)郵件等,有的病毒還能夠破壞手機(jī)SIM卡和芯片等手機(jī)硬件設(shè)備。
怎樣才能避免手機(jī)遭受病毒的破壞?其主要措施還是殺毒軟件和防火墻:
①定期對(duì)殺毒軟件的病毒庫進(jìn)行更新升級(jí),盡可能的保證其擁有當(dāng)時(shí)已出現(xiàn)的病毒程序的破解,若病毒庫中不存在某個(gè)病毒的特征,則殺毒軟件就不能對(duì)該病毒進(jìn)行查殺。此外,現(xiàn)在的手機(jī)殺毒軟件病毒庫采用的是特征代碼法,病毒的細(xì)微的變化都需要病毒庫對(duì)其進(jìn)行辨別,然而智能手機(jī)的存儲(chǔ)空間和運(yùn)算能力都是有限的,所以這種防殺毒的方法對(duì)智能手機(jī)而言,并不是完美的。
②而智能手機(jī)的防火墻主要的作用是攔截騷擾電話等,而并不是對(duì)手機(jī)病毒進(jìn)行監(jiān)控,面對(duì)現(xiàn)存的多樣易變的病毒,防火墻更是顯得微不足道。
究竟該選擇何種方式來保護(hù)手機(jī),這也是本文研究的重點(diǎn)—神經(jīng)網(wǎng)絡(luò)。
1 神經(jīng)網(wǎng)絡(luò)
神經(jīng)網(wǎng)絡(luò)是依據(jù)生物神經(jīng)的機(jī)制和原理,對(duì)信息進(jìn)行處理的一種模型。它能夠模擬動(dòng)物大腦的某些機(jī)制機(jī)理,實(shí)現(xiàn)一些特定的功能。人工神經(jīng)網(wǎng)絡(luò)具有很大的優(yōu)越性:
①具有自學(xué)功能。比如說,當(dāng)對(duì)一幅圖像進(jìn)行識(shí)別時(shí),將各種不同的圖像樣本及其對(duì)應(yīng)的結(jié)果輸入人工神經(jīng)網(wǎng)絡(luò),它就能夠自己學(xué)習(xí)識(shí)別相同類型的圖像。
②具有聯(lián)想存儲(chǔ)功能。人工神經(jīng)網(wǎng)絡(luò)中的反饋網(wǎng)絡(luò)具備了聯(lián)想存儲(chǔ)的功能。
③具有高速尋找優(yōu)化解的功能。
2 神經(jīng)網(wǎng)絡(luò)安全監(jiān)控系統(tǒng)
神經(jīng)網(wǎng)絡(luò)安全監(jiān)控系統(tǒng)就是監(jiān)控手機(jī)應(yīng)用程序,使手機(jī)的正常業(yè)務(wù)能夠順利進(jìn)行,而對(duì)那些異常業(yè)務(wù)則進(jìn)行阻止。所謂正常的業(yè)務(wù)就是那些手機(jī)用戶已知的、按照用戶的意愿運(yùn)行的、并且其運(yùn)行并不破壞用戶手機(jī)中的資源和產(chǎn)生額外費(fèi)用的已經(jīng)授權(quán)的程序。
通過神經(jīng)網(wǎng)絡(luò)監(jiān)控手機(jī)的而應(yīng)用程序的流程圖如圖1所示:
圖1 神經(jīng)網(wǎng)絡(luò)安全監(jiān)控流程圖圖2 單層感知器神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
神經(jīng)網(wǎng)絡(luò)智能手機(jī)安全監(jiān)控的第一步是獲取所運(yùn)行程序的特征,然后借助于神經(jīng)網(wǎng)絡(luò)的識(shí)別功能,對(duì)所提取的應(yīng)用程序的行為特征進(jìn)行識(shí)別,如果識(shí)別結(jié)果為病毒手機(jī)會(huì)向用戶發(fā)出提示信息,若不為病毒則程序?qū)⒗^續(xù)運(yùn)行。
3.1 程序行為特征的獲取
這里舉個(gè)例子說明。例如OwnSkin.A病毒,該病毒以手機(jī)主題的形式誘導(dǎo)手機(jī)用戶進(jìn)行下載安裝,一旦該病毒被安裝進(jìn)了手機(jī),它就會(huì)在用戶不知情的情況下自動(dòng)連接網(wǎng)絡(luò),自動(dòng)想外界批量發(fā)送短信,對(duì)手機(jī)收到的短信的信息內(nèi)容進(jìn)行刪除等等。從對(duì)病毒的描述詳細(xì)程度方面來說,病毒具有很多種特征,本文以3個(gè)為例,進(jìn)行說明,這3個(gè)特征分別是有無按鍵、是否自啟動(dòng)、是否特殊號(hào)碼,程序行為特征獲取的方法如下:
①針對(duì)手機(jī)自啟動(dòng)的行為特征:每種手機(jī)的系統(tǒng),都有其正常的程序啟動(dòng)方式,例如Windows Mobile通過“啟動(dòng)”設(shè)置,Symbian的系統(tǒng)式通過“Recognizer”來設(shè)置程序的啟動(dòng),Linux系統(tǒng)是將啟動(dòng)語句加入/ect/init.d/rcs,或者/usr/etc/rc.local中,在程序啟動(dòng)的時(shí)候?qū)@些個(gè)位置進(jìn)行監(jiān)控,就可以很容易的判別其是否為自啟動(dòng)。
②針對(duì)按鍵這個(gè)行為特征:塞班的系統(tǒng)對(duì)是否有按鍵這個(gè)行為特征的監(jiān)控是粗略的監(jiān)控,以短信為例,手機(jī)短信的使用一般是先按功能鍵啟動(dòng)功能圖標(biāo),然后選取短信的圖標(biāo),接著是對(duì)短信內(nèi)容的編輯,即一系列的數(shù)字鍵,監(jiān)控可得到一個(gè)相應(yīng)的按鍵序列,這樣就可以通過是否有按鍵這個(gè)行為特征來監(jiān)測手機(jī)程序的啟動(dòng)是否正常。
③針對(duì)“被叫號(hào)碼”和“文件信息”的特征: 對(duì)于被叫號(hào)碼主要執(zhí)行的是,查看所要撥出去的電話號(hào)碼是否是設(shè)置在黑名單里的電話,對(duì)于文件信息則是查看信息中所添加的附件是否是安裝文件,如果是手機(jī)用戶之間的正常傳輸行為,則必定有按鍵行為特征,這樣也就會(huì)避免手機(jī)中的病毒程序隱蔽性的自啟動(dòng)來傳輸文件。
3.2 神經(jīng)網(wǎng)絡(luò)建模
仍舊以上述3個(gè)行為特征為例,將其三個(gè)特征分別用“0”或者“1”來表示,若無按鍵、自啟動(dòng)、特殊號(hào)碼,其特征值都取“1”,反之則取“0”,這三個(gè)特征值一共組合成了8中可能出現(xiàn)的情況,將其標(biāo)記為矩陣如下:
(1)
借助于神經(jīng)網(wǎng)絡(luò)的識(shí)別功能,本文以單層單神經(jīng)元的神經(jīng)網(wǎng)絡(luò)為例進(jìn)行說明,采用以下的參數(shù)對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行設(shè)計(jì):
該網(wǎng)絡(luò)包含有一個(gè)輸入向量,包汗三個(gè)元素,并且每個(gè)元素取0—1之間的值。
神經(jīng)網(wǎng)絡(luò)中的神經(jīng)元通過hardlim函數(shù)為傳輸手段,根據(jù)這個(gè)函數(shù)設(shè)計(jì)出如圖2所示的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),:
(2)
該結(jié)構(gòu)輸出結(jié)果為二值向量“0”或者“1”,其中“0”表示不是病毒特征,“1”則表示是行為特征。
在智能手機(jī)的實(shí)際應(yīng)用中,傳輸函數(shù)和網(wǎng)絡(luò)結(jié)構(gòu)、層數(shù)極易神經(jīng)元等的類型多種多樣,可根據(jù)病毒的實(shí)際情況進(jìn)行選擇和應(yīng)用,在此筆者只是舉個(gè)例子來論述神經(jīng)網(wǎng)絡(luò)是如何識(shí)別網(wǎng)絡(luò)的。當(dāng)網(wǎng)絡(luò)建好之后,就需要通過適當(dāng)?shù)姆椒▽?duì)病毒樣本進(jìn)行訓(xùn)練得出誤差。
仍以上述例子為例進(jìn)行訓(xùn)練:
輸入向量為:p= ;目標(biāo)向量選為:t= ,在MATLAB7.1的環(huán)境中對(duì)病毒進(jìn)行訓(xùn)練,根據(jù)所的結(jié)果得出訓(xùn)練的誤差性能曲線,如圖3所示:
圖3 訓(xùn)練誤差性能曲線
經(jīng)過訓(xùn)練并獲取矩陣權(quán)重,至此,神經(jīng)網(wǎng)絡(luò)的建?;就瓿桑淠P蜑?/p>
a=hardlim(P1*2+P2*2+P3*1-3)
在手機(jī)中所執(zhí)行的應(yīng)用程序,計(jì)算程序的行為特征向量與病毒的行為特征向量(111)之間的歐式距離,當(dāng)所得之?dāng)?shù)比程序的特征行為向量和正常行為特征向量之間的歐式距離大時(shí),系統(tǒng)將將此程序判定為病毒。
運(yùn)用神經(jīng)網(wǎng)絡(luò)系統(tǒng)對(duì)手機(jī)進(jìn)行監(jiān)測不需要像殺毒軟件一樣需要定期更新,這對(duì)手機(jī)的安全具有更好的防護(hù)作用。
3結(jié)語
隨著現(xiàn)代社會(huì)智能手機(jī)數(shù)量的增多和日常化,網(wǎng)絡(luò)黑客技術(shù)也在不斷的發(fā)展和完善,因此智能手機(jī)安全問題已然不能忽視或者小視。本文針對(duì)這個(gè)問題,以及殺毒軟件和防火墻的不足之處,論述了神經(jīng)網(wǎng)絡(luò)病毒識(shí)別模型在智能手機(jī)監(jiān)測中的優(yōu)越性以及可行性。
參考文獻(xiàn)
[1]劉一靜,孫瑩,藺洋. 基于手機(jī)病毒攻擊方式的研究[J]信息安全與通信保密, 2007, (12) .
[2]李錦. 手機(jī)病毒特點(diǎn)及防范對(duì)策[J]通信技術(shù), 2009, (02) .
[3]楊建強(qiáng),吳釗,李學(xué)鋒. 增強(qiáng)智能手機(jī)安全的動(dòng)態(tài)惡意軟件分析系統(tǒng)[J]. 計(jì)算機(jī)工程與設(shè)計(jì), 2010, (13) .
[4]智能手機(jī)安全防護(hù)框架淺析[J]. 信息安全與通信保密, 2010, (10).
[5] 桂佳平,周雍愷,沈俊,蔡繼文,劉功申. 基于智能手機(jī)惡意代碼防范模型的研究[J]. 計(jì)算機(jī)技術(shù)與發(fā)展, 2010, (01) .
注:文章內(nèi)所有公式及圖表請(qǐng)以PDF形式查看。