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