国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

Linux平臺下Rootkit木馬分析與檢測

2017-05-09 03:22:13陳遠(yuǎn)鵬李永忠
電子設(shè)計工程 2017年1期
關(guān)鍵詞:木馬內(nèi)核視圖

陳遠(yuǎn)鵬,李永忠

(江蘇科技大學(xué) 江蘇 鎮(zhèn)江212003)

Linux平臺下Rootkit木馬分析與檢測

陳遠(yuǎn)鵬,李永忠

(江蘇科技大學(xué) 江蘇 鎮(zhèn)江212003)

Rootkit作為當(dāng)前危害最大的木馬程序,它能夠運行在內(nèi)核層,從中破壞系統(tǒng)的內(nèi)核結(jié)構(gòu),比傳統(tǒng)木馬程序的隱蔽性更強。針對Rootkit隱藏技術(shù)和檢測技術(shù)面臨的問題,采用了一種新的檢測方法,它能夠檢測隱藏在虛擬機中的內(nèi)核級Rootkit。通過實驗驗證,結(jié)果表明該技術(shù)能夠有效監(jiān)測內(nèi)核級Rootkit木馬。

Linux;Rootkit;木馬分析;內(nèi)核模塊

隨著計算機應(yīng)用技術(shù)的不斷發(fā)展,信息網(wǎng)絡(luò)安全正逐漸引起人們的重視?,F(xiàn)今,各種不同的后臺程序被黑客開發(fā)出來,它們正嚴(yán)重威脅著網(wǎng)絡(luò)安全[1]。2013年,紐約時代報刊稱世界近一半的互聯(lián)網(wǎng)用戶都遭受過網(wǎng)絡(luò)入侵,據(jù)統(tǒng)計,中國因網(wǎng)絡(luò)入侵造成370億美元的損失[2]。另據(jù)IBM-X-Force安全研究小組針對2013年典型攻擊情況的分析調(diào)查顯示,近三分之二的網(wǎng)絡(luò)攻擊為未知原因的攻擊[3]。Rootkit木馬作為最著名的后門程序,使得黑客能夠通過不同的方式獲得root權(quán)限,最終實現(xiàn)對目標(biāo)主機的長期控制。

目前,對于Rootkit檢測方面已經(jīng)有一些在虛擬機中開發(fā)惡意木馬檢測與監(jiān)控技術(shù)的研究工作。這些工作主要是檢測虛擬機的隱藏進程和一些重要的文件,卻未對Rootkit本身進行檢測[4]。針對目前存在的這一類問題,文中提出了一種內(nèi)核級Rootkit檢測技術(shù),并在虛擬化平臺中實現(xiàn)了一個原型系統(tǒng),經(jīng)過實驗驗證,該方法能夠有效檢測內(nèi)核級的Rootkit木馬。

1 Linux體系結(jié)構(gòu)

Linux操作系統(tǒng)由4個重要部分組成:內(nèi)核、shell、文件系統(tǒng)和應(yīng)用程序,它們一起形成了基本的操作系統(tǒng)結(jié)構(gòu)[5]。

內(nèi)核層屬于Linux系統(tǒng)的核心部分,它負(fù)責(zé)管理系統(tǒng)的進程、內(nèi)存、設(shè)備驅(qū)動程序、文件和網(wǎng)絡(luò)系統(tǒng),決定著系統(tǒng)的性能和穩(wěn)定性[6]。Shell層是系統(tǒng)的用戶界面,提供了用戶與內(nèi)核進行交互操作的一種接口[7]。文件系統(tǒng)是文件存放在磁盤等存儲設(shè)備上的組織方法[8]。應(yīng)用層主要是一些重要的應(yīng)用程序包,其中包括文本編輯器VIM(Vi IMproved)、編程語言、辦公軟件、網(wǎng)絡(luò)工具等[9]。

2 Rootkit木馬檢測器的設(shè)計

目前Rootkit的檢測方法主要分為文件完整性檢測與隱藏性檢測,但這兩種方法都有一定的缺陷。文件檢測方法只能檢測到應(yīng)用程序中的Rootkit,卻無法檢測內(nèi)核級Rootkit;隱藏性檢測只注重于系統(tǒng)內(nèi)核Rootkit檢測,對上層應(yīng)用程序Rootkit不采取任何措施。結(jié)合這兩種檢測技術(shù)的優(yōu)點,文中提出一種在內(nèi)核級與用戶級上保護系統(tǒng)和用戶數(shù)據(jù)的安全檢測技術(shù),并在內(nèi)核虛擬機KVM (Kernel Virtual Machine)平臺中實現(xiàn)了原型系統(tǒng)。

2.1 設(shè)計原理

根據(jù)Linux系統(tǒng)的類型,Rootkit木馬有不同的方法來對內(nèi)核進行修改,最簡易的方法就是利用可加載內(nèi)核模塊LKM[10](Linux Kernel Module)的功能。因此大多數(shù)的內(nèi)核Rootkit通過利用LKM動態(tài)地更新內(nèi)核來提供新功能,加入新的模塊擴展內(nèi)核,同時對內(nèi)核和其他使用內(nèi)核的所有程序擁有了完全訪問權(quán)限[11]。例如,sys_read()系統(tǒng)調(diào)用函數(shù)劫持前與劫持后的函數(shù)執(zhí)行鏈如圖1所示。

從圖1可以看出,在LKM模塊開始初始化函數(shù)時,新的自定義函數(shù)指針hacked_read()將會存入原有系統(tǒng)調(diào)用所對應(yīng)的表項,進行系統(tǒng)調(diào)用劫持,此時,hacked_read()將會代替sys_read(),并將新的結(jié)果返回給用戶態(tài)[12]。

2.2 系統(tǒng)設(shè)計

為了實現(xiàn)對虛擬機中的內(nèi)核級Rootkit檢測,Rootkit檢測器需要從不同層面獲取虛擬機用戶態(tài)視圖、內(nèi)核態(tài)視圖和VMM[13]層視圖進行交叉對比。視圖的獲取依賴于不同的安全模塊,檢測系統(tǒng)總體結(jié)構(gòu)圖如圖2所示[14]。

圖1 系統(tǒng)調(diào)用表劫持前與劫持后的函數(shù)執(zhí)行鏈

圖2 Rootkit木馬檢測系統(tǒng)總體結(jié)構(gòu)圖

圖2中,模塊檢測器的作用是監(jiān)控虛擬機內(nèi)核模塊加載與卸載的動作;內(nèi)核視圖重構(gòu)器負(fù)責(zé)建立與維護真實模塊鏈表;內(nèi)核視圖重構(gòu)器根據(jù)虛擬機語義信息重構(gòu)虛擬機內(nèi)核視圖;調(diào)用器在KVM層發(fā)起自下而上的功能調(diào)用,與用戶態(tài)視圖獲取器相互協(xié)作;用戶態(tài)視圖獲取器根據(jù)lsmod產(chǎn)生用戶態(tài)視圖[15]。Rootkit檢測器通過獲取用戶態(tài)視圖和內(nèi)核態(tài)視圖信息后,進行文件檢測和LKM模塊檢測,其結(jié)構(gòu)圖如圖3所示。

圖3 Rootkit檢測器結(jié)構(gòu)圖

文件檢測模塊通過監(jiān)視文件MD5值、常被攻擊的文件、文件權(quán)限、隱藏文件等來判斷Linux系統(tǒng)是否被入侵。LKM模塊檢測模塊通過將系統(tǒng)LKM模塊與Rootkit木馬特征庫進行對比,進行判斷是否存在可疑內(nèi)核模塊。

3 Linux平臺Rootkit檢測器的實現(xiàn)

3.1 文件檢測

文件檢測首先對Binary文件進行MD5校驗測試,檢測任何文件是否改動;檢測Rootkit經(jīng)常攻擊的二進制和系統(tǒng)工具文件;檢測大多常用程序的文件權(quán)限屬性;檢測Rootkit隱藏性文件。文件檢測模塊通過執(zhí)行do_system_check()函數(shù),來檢測系統(tǒng)的入口函數(shù),部分核心代碼如下:

do_system_check () 函 數(shù) 依 次 調(diào) 用do_system_commands_checks (),do_Rootkit_checks(),do_local_host_checks()這些子函數(shù)來檢查系統(tǒng),流程圖如圖4所示。

圖4 文件檢測流程圖

3.2LKM模塊檢測

LKM模塊檢測主要對指定的模塊進行測試,do_system_check_initialisation()函數(shù)將獲取的當(dāng)前系統(tǒng)LKM模塊與Rootkit特征庫中可疑LKM模塊比較,若發(fā)現(xiàn)可疑內(nèi)核模塊,最后在結(jié)果輸出顯示,并在日志中進行記錄,部分代碼如下:

4 實驗與結(jié)果分析

Rootkit木馬檢測系統(tǒng)實現(xiàn)如圖5所示。

圖5 Rootkit木馬檢測系統(tǒng)

功能測試項:1)文件檢測:md5校驗檢測;檢測易被攻擊文件;文件權(quán)限檢測;隱藏性文件檢測。2)LKM模塊檢測。

為了測試系統(tǒng)的功能,選取了當(dāng)前幾個流行的內(nèi)核級 Rootkit作為測試對象:SHV5,DDRK,SUTERUSU。這里以SHV5為例說明檢測結(jié)果,執(zhí)行過程如圖6和圖7所示。

圖6 文件檢測

圖7 LKM檢測

程序執(zhí)行到最后,可以發(fā)現(xiàn)測試用例SHV5,如圖8所示。

圖8 Rootkit檢測結(jié)果

5 結(jié)束語

針對當(dāng)前基于虛擬機監(jiān)視器的內(nèi)核級Rootkit檢測技術(shù)存在的不足,文中提出了一種檢測技術(shù),檢測隱藏在虛擬機中的內(nèi)核級Rootkit。實驗結(jié)果表明,系統(tǒng)的檢測效果良好,解決了以往檢測方式中檢測結(jié)果信息不足等問題,為后續(xù)研究中對Rootkit的處理提供了支持。但是,這種檢測技術(shù)太過依賴宿主機操作系統(tǒng)和虛擬機監(jiān)視器,如何在虛擬化環(huán)境中提高宿主機和虛擬機監(jiān)視器的安全,還需要在以后的工作中進一步研究。

[1]陳華亭,吳邦欲.基于LKM的Rootkit技術(shù)[J].計算機工程與科學(xué),2004(2):88-90,96.

[2]Symantec Corporation.2013 Nortonreport[EB/OL]. [2014-12-10].http://www.yle.fi/tvuutiset/uutiset/ upics/liitetiedostot/norton_raportti.pdf.

[3]IBM Corporation.IBM X-Force 2013 annual trends and riskreport[EB/OL].[2014-12-10].http://www-03.ibm.com/security/xforce/.

[4]符蓉.Linux內(nèi)核級Rootkit檢測方法的研究與應(yīng)用[D].長沙:湖南大學(xué),2009.

[5]唐偉杰.微內(nèi)核進程間通信的優(yōu)化與實現(xiàn)[D].杭州:浙江工業(yè)大學(xué),2009.

[6]陳寶君.基于ARM9的嵌入式系統(tǒng)設(shè)計及EPA設(shè)備實現(xiàn)[D].大連:大連理工大學(xué),2006.

[7]許力.基于ARM9家庭心電監(jiān)護系統(tǒng)的設(shè)計和實現(xiàn)[D].武漢:武漢理工大學(xué),2008.

[8]李潔瓊,馮丹.一種基于網(wǎng)絡(luò)磁盤陣列的高性能海量存儲系統(tǒng) [J].小型微型計算機系統(tǒng),2006(12):2326-2330.

[9]陳斌.Linux應(yīng)用程序調(diào)試技術(shù)的研究[J].開封教育學(xué)院學(xué)報,2014(2):289,292.

[10]梁升榮.Windows Rootkit檢測機制的研究與實現(xiàn)[D].成都:電子科技大學(xué),2009.

[11]羅糧,周熙.Rootkit在Linux下的工作原理及其檢測[J].計算機安全,2007(3):19-21.

[12]李善平,陳文智.邊干邊學(xué):Linux內(nèi)核指導(dǎo)[M].杭州:浙江大學(xué)出版社,2002:133-16.

[13]施江勇,王會梅,鮮明,等.硬件虛擬化rootkit檢測方法研究綜述[J].計算機應(yīng)用研究,2014(1):1-5,12.

[14]Tomlinson A.Introduction to the TPM[M]//Smart Cards, Tokens,Security and Applications.New York:Spring US,2008:155-172.

[15]張磊,陳興蜀,任益,等.一種基于VMM的內(nèi)核級Rootkit檢測技術(shù)[J].信息網(wǎng)絡(luò)安全,2015(4):56-61.

Analysis and detect of Kernel-level Rootkit in Linux platform

CHEN Yuan-peng,LI Yong-zhong
(Jiangsu University of Science and Technology,Zhenjiang 212003,China)

Rootkit,as the current most dangerous Trojans,it can run at the kernel level,interference system kernel,allowing attackers to achieve the goal,it is more powerful than the traditional hidden Trojan.As for its imperceptibility,a new detecting method is proposed in this article,can find kenellevel Rootkit in a virtual machine.And the method has been test that can detect kernel-level Rootkit efficiently.

Linux;Rootkit;trojan analysis;kernel module

TN301

:A

:1674-6236(2017)01-0039-04

2015-12-23稿件編號:201512230

陳遠(yuǎn)鵬(1989—),男,江蘇南京人,碩士。研究方向:通信技術(shù)及應(yīng)用工程。

猜你喜歡
木馬內(nèi)核視圖
萬物皆可IP的時代,我們當(dāng)夯實的IP內(nèi)核是什么?
小木馬
騎木馬
強化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
小木馬
基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計
Linux內(nèi)核mmap保護機制研究
旋轉(zhuǎn)木馬
5.3 視圖與投影
視圖
星子县| 太保市| 太仓市| 塔河县| 东光县| 中江县| 昌乐县| 榆社县| 醴陵市| 康平县| 沙雅县| 阿鲁科尔沁旗| 闸北区| 肇庆市| 思南县| 贡山| 英超| 读书| 岳普湖县| 伊金霍洛旗| 泰顺县| 林西县| 苏尼特左旗| 和龙市| 大石桥市| 沙田区| 衡东县| 余姚市| 莎车县| 南阳市| 台安县| 南雄市| 尉犁县| 湖北省| 久治县| 芜湖县| 九江县| 南昌市| 即墨市| 扬中市| 萝北县|