鄒學韜,江 舟
(1.武漢郵電科學研究院通信與信息系統(tǒng),湖北武漢 430074;2.武漢虹旭信息技術有限責任公司安全產品部,湖北武漢 430074)
傳統(tǒng)的PC上網模式已經逐漸無法滿足人們對互聯(lián)網的需求,越來越多的人開始使用智能手機隨時隨地訪問移動互聯(lián)網,帶來便捷的同時又帶來了很多的安全隱患。隨著應用的不斷豐富,移動終端作為“無處不在”的服務和個人信息的載體,更容易感染病毒或遭到入侵,其安全問題將會比PC更為復雜。
在傳統(tǒng)互聯(lián)網領域,入侵檢測技術已經發(fā)展的相當成熟了,而在移動互聯(lián)網領域的研究才剛剛起步。在國外,Iker Burguera,Urko Zurutuza等人提出了適用于安卓智能手機的基于行為的惡意軟件檢測系統(tǒng)。根據這一現狀,本文提出了應用于移動互聯(lián)網的入侵檢測系統(tǒng),該系統(tǒng)能對手機上各項行為進行監(jiān)測,一旦發(fā)現有入侵攻擊則立即告警提示,從而改善智能手機防御性低的情況,提高了手機的安全性能。
網秦在《2012年上半年全球手機安全報告》中稱,2012年上半年累計查殺手機惡意軟件17 676個,感染的手機用戶數高達1 283萬,比2011年同期增長了117%,其中有78%的手機惡意軟件都來自Android平臺[1]。
隨著移動終端越來越智能化,人們在用智能手機辦公、娛樂的同時也面臨了很多未知的危險。終端智能化帶來了很多新的安全問題:如操作系統(tǒng)/中間件漏洞、病毒木馬等惡意代碼、惡意吸費等流氓軟件、不良信息傳播、用戶隱私信息泄露等。這些問題都會給手機用戶帶來不少麻煩,影響用戶的體驗,泄露個人信息,甚至還會造成錢財損失。所以移動互聯(lián)網終端安全問題必須引起足夠的重視,用戶的利益才能夠得到保障。
應用于移動互聯(lián)網的入侵檢測系統(tǒng),主要由以下幾個模塊組成:數據采集模塊、數據分析模塊、入侵檢測模塊、數據庫。系統(tǒng)結構圖如圖1所示。
圖1 系統(tǒng)結構圖
數據采集模塊負責捕獲數據包,把用戶手機的上行下行數據都采集下來,之后發(fā)給后續(xù)的數據分析模塊處理。
數據包捕獲基于開源的libpcap,它可以按照指定的規(guī)則(如端口號、IP地址、協(xié)議類型等)對數據包進行過濾,只捕獲用戶需要類型的數據包[2]。
數據分析模塊接收數據采集模塊發(fā)過來的數據包,并按照TCP/IP的各個層次解析數據包,解析時根據不同協(xié)議調用不同的解析函數。
入侵檢測模塊完成入侵攻擊的檢測與告警功能。該模塊將數據分析模塊發(fā)過來的數據和特征庫中的規(guī)則集合進行比較和分析,判斷是否為入侵攻擊,如果是,則告警。
檢測的方法是以特征進行檢測,所以在此之前,必須根據現有的已知入侵攻擊行為,提煉出特征信息,把這些特征組成一個特征庫(也就是規(guī)則集),用這些規(guī)則去判斷是否發(fā)生了入侵。入侵規(guī)則集越豐富,能檢測出的入侵攻擊也就越多。
把用戶的數據和入侵檢測規(guī)則(如端口號、URL等特征字)進行模式匹配,如果匹配成功則說明滿足了規(guī)則,則可以認為發(fā)生了相應的入侵攻擊,與此同時告警,告訴用戶存在安全問題的應用程序,讓用戶及時采取措施。
數據庫使用SQLite,SQLite是用于iPhone、Android等手機系統(tǒng)中的一個輕量級的、嵌入式的、關系型數據庫。當檢測到有入侵攻擊時,數據庫就負責存儲這些信息,包括入侵攻擊截獲的時間、協(xié)議類型、源IP、目的IP、源端口、目的端口、數據內容等,方便手機用戶隨時查證。
協(xié)議分析是一項比較新的技術,由于網絡協(xié)議是具有規(guī)則性的,協(xié)議分析可以清楚地知道在數據包哪些位置可以獲取哪些內容,并理解這些內容的含義。協(xié)議分析的實質就是識別各個協(xié)議頭,及其頭部各個字段的含義[3]。
TCP/IP由4個層次組成:網絡接口層、網絡層、傳輸層、應用層。
媽媽給我買回了一架薩克斯,我剛剛打開盒子就被它的外貌吸引住了,閃閃發(fā)光的色澤,流線光滑的外表,精美的按鈕,他的笛頭就像小鴨子的嘴巴一樣扁扁的,再看他的喇叭就像豬八戒的耳朵一樣,肥肥大大!真有趣,這就是我的薩克斯,漂亮吧!
網絡接口層:幀=幀頭+IP數據包+幀尾(幀頭包括源MAC地址和目的MAC地址等)。
網絡層:IP數據包=IP頭部+TCP/UDP數據信息(IP頭包括源IP地址和目的IP地址等)。
傳輸層:TCP/UDP數據信息=TCP/UDP頭部+實際數據(TCP/UDP頭包括源端口號和目的端口號等)。
這樣一層層分離出頭部,分析頭部各個字段的含義,最后得到應用層的用戶數據。根據各協(xié)議的特點以及特征庫中設置的規(guī)則,通過模式匹配就可以準確地識別出是否為入侵攻擊。
下面以一個數據包為例進行分析,數據包如圖2所示。
圖2 數據包(截圖)
圖2中,1~6 byte為目的MAC地址:0x0021273ff642;7~12 byte為源MAC地址:0xc46ab7305db7;13~14 byte為類型字段0x0800,根據協(xié)議可以判斷這個包是IP包。IP包的第10 byte為傳輸層協(xié)議標識,即數據包的第24 byte 0x06,說明數據包是TCP協(xié)議數據包。TCP包的3~4 byte表示目的端口,是應用層協(xié)議標識,即數據包的37~38 byte 0x0050,則數據包的目的端口為80,說明是HTTP協(xié)議數據包。最后根據HTTP協(xié)議就可以知道URL是“GET/?q=xinwen123&callback=rs_1365471732”。之后就可以與規(guī)則庫里的規(guī)則進行匹配,判斷是否為入侵攻擊。
圖3 協(xié)議分析流程圖
協(xié)議分析的方法可以解決傳統(tǒng)模式匹配存在的一些問題,如計算量大,因為移動終端的CPU計算和存儲能力都是有限的,計算量過大會影響手機的性能。計算量減小可以提高匹配速率,并且由于協(xié)議有各自固有的格式,此方法可以降低誤報率,提高準確率。
入侵檢測流程如圖4所示。首先是系統(tǒng)初始化,將規(guī)則庫中的所有規(guī)則都讀入到內存中。接著采集數據,捕獲數據包,并對數據包進行層層協(xié)議分析,分析出協(xié)議各個字段的內容。把這些字段的值和內存中的規(guī)則進行匹配,一旦匹配成功,則表示存在入侵,同時進行告警。如果匹配失敗,則繼續(xù)匹配其余的規(guī)則直到所有規(guī)則都匹配完畢。如果直到最后都沒有匹配成功,則表明不是入侵攻擊,進而開始重新捕獲數據包[4]。
圖4 入侵檢測流程圖
檢測的過程就是一個模式匹配的過程,自定義規(guī)則格式為:名稱端口關鍵字響應。例如:惡意網址80 wap.a1ipay.com alert,這一規(guī)則表示,當用戶訪問 wap.a1ipay.com這個網址時,則進入了惡意網站,并發(fā)出告警,將命中這條規(guī)則的數據寫進數據庫保存。數據庫格式如表1所示。
表1 數據庫
用這種描述語言來定義入侵規(guī)則,一旦發(fā)現新的入侵攻擊時,就可以用這種方式寫入新的入侵規(guī)則,而不必改動程序。把這些入侵攻擊表示成入侵規(guī)則存放在規(guī)則庫里,如果數據和規(guī)則庫中的某種規(guī)則匹配上了,就可以判斷出發(fā)生了何種入侵攻擊。
本實驗在java虛擬機JDK1.6版本,Eclipse3.7集成開發(fā)平臺下安裝ADT插件,并搭建Android開發(fā)環(huán)境。實驗選取一臺PC,處理器Intel酷睿i3 3220,內存4 Gbyte。操作系統(tǒng)為Win7,并對JDK配置其相應的環(huán)境變量。Android模擬器配置如圖5所示。
圖5 Android模擬器配置圖(截圖)
開啟入侵檢測應用,通過Android模擬器訪問http://wap.a1ipay.com,這時入侵檢測應用就會顯示如圖6所示界面,提示“入侵檢測中心檢測到http://wap.a1ipay.com為惡意網址”,表明用戶訪問了一個可能有危險的惡意網址,并讓用戶做出選擇,是繼續(xù)訪問,還是取消訪問,實現了檢測并響應的功能。
圖6 檢測結果圖(截圖)
又選取20例惡意網址進行測試,結果如表2所示。
表2 測試結果
實驗結果說明,該入侵檢測系統(tǒng)方案可行,能較好地對入侵攻擊進行檢測,但仍需要不斷完善特征庫,降低誤報率、漏報率。
智能手機已經成為移動終端發(fā)展的主流,其中Android智能手機占的市場份額較大。隨著手機應用的不斷豐富,功能不斷強大,其伴隨的安全問題不容小覷。本文研究了應用于移動互聯(lián)網的入侵檢測系統(tǒng),可以檢測出手機是否遭受了入侵攻擊,及時響應告警,保障手機用戶的安全,有較好的實用性。該系統(tǒng)的準確性如何很大程度上取決于特征庫的規(guī)則是否豐富。所以今后還需要進一步的分析研究,使得入侵檢測特征庫更加豐富,判斷更加精準。
:
[1]北京網秦天下科技有限公司.2012年上半年全球手機安全報告[EB/OL].[2013-04-10].http://wenku.baidu.com/view/3e02eb3d580216fc700afd8e.html.
[2]劉斌,代素環(huán).基于Libpcap的數據包捕獲機制的實現[J].農業(yè)網絡信息,2008(9):62-63.
[3]徐宇杰.TCP/IP協(xié)議深入分析[M].北京:清華大學出版社,2009.
[4]曹元大.入侵檢測技術[M].北京:人民郵電出版社,2007.