• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于直接內(nèi)核對(duì)象操作的進(jìn)程偽裝保護(hù)方法

      2013-09-17 07:00:02藍(lán)智靈宋宇波
      關(guān)鍵詞:內(nèi)核進(jìn)程程序

      藍(lán)智靈 宋宇波 唐 磊

      (東南大學(xué)信息安全研究中心,南京 210096)

      基于直接內(nèi)核對(duì)象操作的進(jìn)程偽裝保護(hù)方法

      藍(lán)智靈 宋宇波 唐 磊

      (東南大學(xué)信息安全研究中心,南京 210096)

      針對(duì)目前基于隱藏的進(jìn)程保護(hù)方法容易被Rootkit檢測(cè)工具檢測(cè)出而失效的情況,提出了一種基于直接內(nèi)核對(duì)象操作(DKOM)的進(jìn)程偽裝保護(hù)方法.該方法將進(jìn)程隱藏方法中較為常用的DKOM技術(shù)與傳統(tǒng)的偽裝技術(shù)相結(jié)合,通過(guò)直接修改操作系統(tǒng)內(nèi)核空間中存儲(chǔ)進(jìn)程相關(guān)信息的數(shù)據(jù)結(jié)構(gòu),使進(jìn)程在任務(wù)管理器中顯示為一些系統(tǒng)進(jìn)程,以此達(dá)到保護(hù)進(jìn)程的目的.進(jìn)程信息的修改涉及內(nèi)核的操作,由Windows驅(qū)動(dòng)實(shí)現(xiàn),該驅(qū)動(dòng)兼容Windows 2000以上多個(gè)版本的操作系統(tǒng),具有廣泛適用性.實(shí)驗(yàn)結(jié)果顯示,經(jīng)過(guò)該方法修改后,進(jìn)程查看工具查看到的進(jìn)程信息與正常的系統(tǒng)進(jìn)程沒(méi)有差別.偽裝效果較好,用戶(hù)無(wú)法發(fā)覺(jué),Rootkit檢測(cè)工具也不會(huì)提示異常.驗(yàn)證了基于DKOM的進(jìn)程偽裝保護(hù)方法的有效性.

      直接內(nèi)核對(duì)象操作;進(jìn)程偽裝;進(jìn)程保護(hù)

      進(jìn)程保護(hù)技術(shù)在信息安全領(lǐng)域中有著廣泛的應(yīng)用.一方面惡意軟件使用進(jìn)程保護(hù)技術(shù)來(lái)保護(hù)自身無(wú)法被用戶(hù)察覺(jué),另一方面系統(tǒng)安全防護(hù)軟件也使用進(jìn)程保護(hù)技術(shù)來(lái)保護(hù)自身不被惡意軟件破壞.

      進(jìn)程保護(hù)是指一般情況下,用戶(hù)不能通過(guò)非正常手段強(qiáng)制關(guān)閉特定進(jìn)程,不能通過(guò)Windows進(jìn)程管理器或一般的進(jìn)程來(lái)結(jié)束特定進(jìn)程[1].根據(jù)所要達(dá)到目標(biāo)的不同,進(jìn)程保護(hù)可分為保護(hù)進(jìn)程不被非法操作關(guān)閉和保護(hù)進(jìn)程不被發(fā)現(xiàn)2類(lèi).保護(hù)進(jìn)程不被非法操作關(guān)閉的方法主要有[1-2]:Hook-API技術(shù)、DLL注入技術(shù)、遠(yuǎn)程線程代碼注入技術(shù)以及多進(jìn)程守護(hù)保護(hù)技術(shù)等;而保護(hù)進(jìn)程不被發(fā)現(xiàn)主要采用進(jìn)程隱藏技術(shù)或進(jìn)程偽裝技術(shù).本文主要研究的是第2類(lèi)進(jìn)程保護(hù),即保護(hù)進(jìn)程不被發(fā)現(xiàn).

      1 進(jìn)程隱藏與進(jìn)程偽裝

      進(jìn)程隱藏技術(shù)可以分為2類(lèi)[3]:一類(lèi)是基于Hook的進(jìn)程隱藏技術(shù),包括用戶(hù)模式的IAT Hook和EAT Hook技術(shù)以及內(nèi)核模式的SSDT Hook技術(shù);另一類(lèi)是基于DKOM的進(jìn)程隱藏技術(shù)[4].目前2種隱藏技術(shù)都有相應(yīng)的檢測(cè)方法.

      針對(duì)基于Hook的隱藏技術(shù),有一種稱(chēng)為“交叉視圖”[5]的方法可以用于檢測(cè).該方法將用戶(hù)模式API獲取的進(jìn)程列表與內(nèi)核中獲取的進(jìn)程列表進(jìn)行比較,內(nèi)核進(jìn)程列表中多出來(lái)的進(jìn)程即是被隱藏的進(jìn)程,該檢測(cè)方法已被多數(shù)Rootkit檢測(cè)軟件采用.

      而對(duì)于文獻(xiàn)[4,6]所提到的基于DKOM的進(jìn)程隱藏技術(shù),需要將被隱藏的進(jìn)程從內(nèi)核中的進(jìn)程鏈表中移除,由于使用上述交叉視圖的檢測(cè)方法檢測(cè)不到,因而需要使用更為底層的檢測(cè)方法,如“基于線程調(diào)度”的檢測(cè)方法[7].DKOM進(jìn)程隱藏技術(shù)雖然將被隱藏的進(jìn)程從進(jìn)程鏈表中移除,但卻不能從線程鏈表中移除,否則就得不到系統(tǒng)的調(diào)度,也就無(wú)法運(yùn)行.因此,只需通過(guò)遍歷線程鏈表就能查找到被隱藏的進(jìn)程.

      除了以上方法外,還有不少其他的檢測(cè)方法,如遍歷PspCidTable表檢測(cè)方法[8]、基于執(zhí)行路徑分析的檢測(cè)方法[9]以及基于虛擬機(jī)的檢測(cè)方法[10]等.可見(jiàn),基于進(jìn)程隱藏的保護(hù)方法并不是很有效的.

      為了使保護(hù)進(jìn)程不被發(fā)現(xiàn),也可采用進(jìn)程偽裝技術(shù).傳統(tǒng)的偽裝方法主要有3種[11]:

      1)程序取名為看似合法的程序,如securityupdate.exe 或 serverstart.exe.

      2)程序取名與系統(tǒng)合法進(jìn)程相似,如取名為scvhost.exe,而真實(shí)的系統(tǒng)進(jìn)程為 svchost.exe.

      3)程序取名與系統(tǒng)合法進(jìn)程一樣,但放在非系統(tǒng)目錄下,如系統(tǒng)的svchost.exe存放于C:WindowsSystem32,而偽裝的程序 svchost.exe可以存放在C:WindowsSystem目錄下.

      但對(duì)于這類(lèi)方法所偽裝的進(jìn)程,用戶(hù)只需在任務(wù)管理器中細(xì)心觀察就能發(fā)現(xiàn).

      綜上所述,上述的進(jìn)程隱藏技術(shù)和進(jìn)程偽裝技術(shù)對(duì)于進(jìn)程保護(hù)已不是很有效,為此,本文將進(jìn)程隱藏技術(shù)中較為常用的直接內(nèi)核對(duì)象操作方法與傳統(tǒng)進(jìn)程偽裝技術(shù)結(jié)合起來(lái),提出了一種新的進(jìn)程保護(hù)方法.該方法利用直接內(nèi)核對(duì)象操作技術(shù),通過(guò)修改內(nèi)存中存儲(chǔ)進(jìn)程相關(guān)信息的數(shù)據(jù)結(jié)構(gòu),包括進(jìn)程名、進(jìn)程路徑以及用戶(hù)名等信息,使進(jìn)程在任務(wù)管理器中顯示為系統(tǒng)進(jìn)程,從而達(dá)到偽裝進(jìn)程的目的,最終實(shí)現(xiàn)進(jìn)程保護(hù).

      2 基于DKOM進(jìn)程偽裝的實(shí)現(xiàn)

      2.1 偽裝的原理

      操作系統(tǒng)中每個(gè)運(yùn)行的程序,在內(nèi)核中都有一些相關(guān)的結(jié)構(gòu)體,保存著程序運(yùn)行所需的信息,包括進(jìn)程號(hào)、進(jìn)程名以及可執(zhí)行文件的路徑等.DKOM實(shí)現(xiàn)偽裝的原理就是對(duì)內(nèi)核中這些結(jié)構(gòu)體進(jìn)行修改,使得應(yīng)用層工具查看到的進(jìn)程信息是修改過(guò)的信息,以此來(lái)達(dá)到偽裝的目的.

      進(jìn)程偽裝需要修改的信息,主要存在于下列結(jié)構(gòu)體中:

      上述的EPROCESS是內(nèi)核中用來(lái)描述進(jìn)程的結(jié)構(gòu)體,它記錄著對(duì)應(yīng)進(jìn)程運(yùn)行所需的各種信息.進(jìn)程環(huán)境塊(process environment block,PEB)也記錄一些進(jìn)程相關(guān)信息,EPROCESS結(jié)構(gòu)中保存有指向?qū)?yīng)PEB的地址信息.

      2.2 偽裝方案

      由于DKOM技術(shù)需要對(duì)內(nèi)核對(duì)象直接進(jìn)行操作,而普通的用戶(hù)層程序并沒(méi)有權(quán)限對(duì)內(nèi)核進(jìn)行修改,所以用于實(shí)現(xiàn)偽裝的程序需要由驅(qū)動(dòng)來(lái)實(shí)現(xiàn).因?yàn)樵摮绦虿簧婕凹床寮从弥?lèi)的硬件操作,所以實(shí)現(xiàn)時(shí)沒(méi)有采用WDM或WDF驅(qū)動(dòng)模型,而是采用NT式驅(qū)動(dòng)開(kāi)發(fā).NT式驅(qū)動(dòng)的安裝比較簡(jiǎn)單,可以將驅(qū)動(dòng)作為系統(tǒng)服務(wù),使用Windows提供的服務(wù)管理API進(jìn)行安裝和卸載.

      下面假設(shè)在方案中是使用驅(qū)動(dòng)C.sys把進(jìn)程A.exe偽裝成B.exe.為了保證被偽裝的程序A.exe在任何時(shí)候運(yùn)行都能夠被偽裝,驅(qū)動(dòng)程序C.sys需要定時(shí)對(duì)進(jìn)程列表進(jìn)行查詢(xún),看列表中是否有進(jìn)程A.exe存在,若存在就將其相關(guān)的進(jìn)程信息修改為B.exe的信息.驅(qū)動(dòng)程序流程圖如圖1所示.

      圖1 驅(qū)動(dòng)程序流程圖

      2.3 相關(guān)結(jié)構(gòu)的獲取

      對(duì)進(jìn)程進(jìn)行偽裝需要先找到存儲(chǔ)進(jìn)程信息的相關(guān)結(jié)構(gòu),而這些結(jié)構(gòu)中最重要的是EPROCESS,因?yàn)槠渌Y(jié)構(gòu)都可由EPROCESS間接得到.使用微軟的Windbg調(diào)試工具對(duì)內(nèi)核進(jìn)行調(diào)試,可以得到EPROCESS與其他結(jié)構(gòu)的關(guān)系,如圖2所示.

      在EPROCESS結(jié)構(gòu)體中有個(gè)成員叫ActiveProcessLinks,它是一個(gè)LIST_ENTRY結(jié)構(gòu)體,這個(gè)結(jié)構(gòu)有2個(gè)指針成員FLINK和BLINK,分別指向當(dāng)前進(jìn)程的前一個(gè)和后一個(gè)進(jìn)程EPROCESS結(jié)構(gòu)體中的ActiveProcessLinks成員.系統(tǒng)中所有進(jìn)程的EPROCESS結(jié)構(gòu)體通過(guò)ActiveProcessLinks成員構(gòu)成了一個(gè)雙向鏈表.此外,Windows操作系統(tǒng)內(nèi)部有個(gè)全局變量PsInitialSystemProcess,它是指向系統(tǒng)System進(jìn)程EPROCESS結(jié)構(gòu)的一個(gè)指針.因此,只要從System進(jìn)程的EPROCESS結(jié)構(gòu)開(kāi)始,遍歷整個(gè)鏈表就能獲取所有進(jìn)程的EPROCESS結(jié)構(gòu).查詢(xún)到需要被偽裝的進(jìn)程的EPROCESS之后,再根據(jù)圖2所示關(guān)系,就可以找到其他所有相關(guān)的數(shù)據(jù)結(jié)構(gòu).

      圖2 進(jìn)程偽裝相關(guān)結(jié)構(gòu)體間的關(guān)系

      2.4 進(jìn)程信息的修改

      根據(jù)EPROCESS獲取到需要修改的數(shù)據(jù)結(jié)構(gòu)后,就可以把相關(guān)信息修改為新的進(jìn)程信息.這些結(jié)構(gòu) 中,EPROCESS-> ImageFileName,SE_AUDIT_PROCESS_CREATION_INFO以及FileObject的修改方法一致,都是直接修改,如下所示:

      但PEB結(jié)構(gòu)的修改比較特殊,因?yàn)镻EB結(jié)構(gòu)是保存在各個(gè)進(jìn)程各自的進(jìn)程空間里,而不是在公共的內(nèi)核空間中,在內(nèi)核中是不能直接訪問(wèn)的.要修改其中的數(shù)據(jù),就必須先使用KeStackAttachProcess函數(shù)附著到相應(yīng)的進(jìn)程空間,修改完相關(guān)數(shù)據(jù)后,再使用KeUnstackDetachProcess函數(shù)解附著,離開(kāi)相應(yīng)的進(jìn)程空間,實(shí)現(xiàn)如下:

      如上所示,PEB中修改的結(jié)構(gòu)包括Command-Line,ImagePathName 和 WindowTitle.

      2.5 額外信息的修改

      通過(guò)上述的修改,能夠?qū)崿F(xiàn)進(jìn)程名稱(chēng)以及路徑信息的偽裝,但這樣還不夠全面.系統(tǒng)中每個(gè)運(yùn)行的進(jìn)程都有一個(gè)父進(jìn)程,如果要把程序偽裝成svchost.exe這樣的系統(tǒng)進(jìn)程,那就有必要把父進(jìn)程修改為 svchost.exe 的父進(jìn)程 services.exe.否則,即使被偽裝進(jìn)程修改為svchost.exe,在進(jìn)程查看器中看到該 svchost.exe的父進(jìn)程不是 services.exe,仍然容易被發(fā)現(xiàn)有異常.要實(shí)現(xiàn)父進(jìn)程的修改,需要修改存儲(chǔ)父進(jìn)程號(hào)的結(jié)構(gòu)EPROCESS->Inherited-FromUniqueProcessId.修改時(shí),先通過(guò) EPROCESS->UniqueProcessId獲取 services.exe的進(jìn)程 ID,然后再填到被偽裝進(jìn)程的EPROCESS->Inherited-FromUniqueProcessId結(jié)構(gòu)中,就能實(shí)現(xiàn)父進(jìn)程的修改.

      另外,需要修改的信息還有進(jìn)程所屬的用戶(hù).在進(jìn)程查看器中由用戶(hù)啟動(dòng)的程序,用戶(hù)名一般為當(dāng)前登錄系統(tǒng)的用戶(hù),而系統(tǒng)進(jìn)程的用戶(hù)名則為SYSTEM,LOCAL SERVICE或 NETWORK SERVICE等.要修改進(jìn)程的用戶(hù)名,需要修改存放有用戶(hù)名信息的結(jié)構(gòu)EPROCESS->Token,修改時(shí)只需將被偽裝進(jìn)程的Token替換為系統(tǒng)進(jìn)程的Token即可.

      通過(guò)這些額外的修改之后,被偽裝進(jìn)程與偽裝目標(biāo)就更加接近,更具隱蔽性.

      2.6 多操作系統(tǒng)支持

      Windows操作系統(tǒng)每個(gè)內(nèi)核版本的更新,都會(huì)對(duì)內(nèi)核中的一些結(jié)構(gòu)進(jìn)行調(diào)整,主要是結(jié)構(gòu)成員的變動(dòng).為了使進(jìn)程偽裝適用于多個(gè)版本的操作系統(tǒng),實(shí)現(xiàn)時(shí)使用了一些變量記錄各進(jìn)程相關(guān)結(jié)構(gòu)的偏移信息.在程序初始化時(shí),先用PsGetVersion函數(shù)獲取操作系統(tǒng)版本信息,然后根據(jù)操作系統(tǒng)的主版本號(hào)和次版本號(hào)的不同,存儲(chǔ)各結(jié)構(gòu)的偏移信息到指定的變量中.如EPROCESS->ImageFileName結(jié)構(gòu)在Windows XP SP3以及Windows 7 RTM操作系統(tǒng)中的偏移分別是0x174和0x16C,該偏移信息就保存于EPROCESS_IMAGENAME_OFFSET變量中,之后的修改只要直接使用該變量即可.

      另外,由于Windows 7操作系統(tǒng)中引入了DEP(data execution prevention),即數(shù)據(jù)執(zhí)行保護(hù)的安全機(jī)制,在對(duì)進(jìn)程PEB信息的修改時(shí),需要在內(nèi)核中先將進(jìn)程的DEP標(biāo)志置為0,關(guān)閉DEP保護(hù),信息才能修改成功.

      目前該測(cè)試程序支持的操作系統(tǒng)包括Windows 2000 SP4,Windows Server 2003 SP2,Windows XP SP3以及Windows 7 RTM.對(duì)于其他版本操作系統(tǒng),只要使用Windbg進(jìn)行內(nèi)核調(diào)試,獲取各結(jié)構(gòu)的偏移信息,就能很容易地進(jìn)行擴(kuò)展,支持新的操作系統(tǒng).

      3 測(cè)試

      3.1 測(cè)試環(huán)境與方法

      測(cè)試環(huán)境為VMWare Workstation 7.1虛擬機(jī).測(cè)試的操作系統(tǒng)包括Windows 2000 SP4,Windows Server 2003 SP2,Windows XP SP3以及 Windows 7 RTM.

      測(cè)試是將操作系統(tǒng)自帶的記事本程序C:WindowsSystem32 otepad.exe偽裝成系統(tǒng)服務(wù)進(jìn)程 C:WindowsSystem32svchost.exe.

      查看結(jié)果采用的進(jìn)程查看工具是Sysinternals公司開(kāi)發(fā)的Process Explorer,該工具能查看到比系統(tǒng)自帶的任務(wù)管理器更為詳盡的進(jìn)程信息.使用的Rootkit檢測(cè)工具是 XueTr[12],該工具可用于檢測(cè)系統(tǒng)中的可疑對(duì)象以及被隱藏的進(jìn)程.

      測(cè)試的具體步驟是:① 采用驅(qū)動(dòng)加載程序加載用于實(shí)現(xiàn)偽裝的驅(qū)動(dòng)程序;② 運(yùn)行notepad.exe;③使用進(jìn)程查看器Process Explorer查看進(jìn)程信息,并記錄結(jié)果.為了查看各個(gè)結(jié)構(gòu)影響進(jìn)程的信息,測(cè)試時(shí),先逐個(gè)修改結(jié)構(gòu),并查看結(jié)果,最后再修改全部結(jié)構(gòu),查看最終的偽裝效果.

      3.2 測(cè)試結(jié)果與分析

      測(cè)試時(shí),發(fā)現(xiàn)各版本操作系統(tǒng)的測(cè)試結(jié)果是相同的.另外,實(shí)際測(cè)試時(shí)發(fā)現(xiàn)有些情況下,被偽裝程序的首次運(yùn)行和非首次運(yùn)行的結(jié)果是不同的,所以在記錄結(jié)果時(shí),分為首次和非首次運(yùn)行,如表1所示.

      表1 進(jìn)程信息的修改結(jié)果

      從表1的測(cè)試結(jié)果可以看出,EPROCESS->ImageFileName結(jié)構(gòu)并不影響進(jìn)程查看器看到的進(jìn)程信息.而 SeAuditProcessCreationInfo->Image-FileName和PEB->ProcessParameters分別影響進(jìn)程名和路徑信息,EPROCESS->InheritedFromUniqueProcessId和EPROCESS->Token結(jié)構(gòu)分別決定父進(jìn)程和用戶(hù)名信息.

      另外,從表中可以看出,F(xiàn)ileObject->FileName結(jié)構(gòu)比較特殊.被偽裝程序首次運(yùn)行和非首次運(yùn)行2種情況下,修改結(jié)構(gòu)所得到的結(jié)果是不一樣的.首次運(yùn)行對(duì)結(jié)構(gòu)的修改并不能立即使進(jìn)程名的修改生效,而經(jīng)過(guò)首次修改后,被偽裝的進(jìn)程只要再次運(yùn)行,進(jìn)程名就是svchost.exe,并不需要進(jìn)行修改.這是由于操作系統(tǒng)會(huì)對(duì)FileObject的緩存處理,首次運(yùn)行的程序被關(guān)閉后,其相應(yīng)的FileObject結(jié)構(gòu)并沒(méi)有被釋放,當(dāng)程序再次被運(yùn)行時(shí),操作系統(tǒng)會(huì)直接從緩存的FileObject結(jié)構(gòu)中讀取修改過(guò)的進(jìn)程名信息,從而出現(xiàn)該結(jié)果.

      從測(cè)試結(jié)果看,只需將相關(guān)的結(jié)構(gòu)全部修改,就能達(dá)到較好的偽裝效果,進(jìn)程查看器中看到的被偽裝程序與目標(biāo)程序的信息相同.Process Explorer查看的進(jìn)程信息如圖3所示,圖3(a)是notepad.exe偽裝后的進(jìn)程信息,圖3(b)是正常svchost.exe的進(jìn)程信息.可以看到,2個(gè)進(jìn)程的信息除了Command Line有區(qū)別外,其余信息都是一樣的.Command Line信息不同,主要是為了測(cè)試時(shí)能分辨出哪個(gè)是 notepad.exe偽裝的 svchost.exe,特意將其改為svchost.exe進(jìn)程的路徑.在實(shí)際的應(yīng)用中,只需將其Command Line改為與svchost.exe的Command Line相同,就能保證偽裝效果.

      使用XueTr分別對(duì)經(jīng)過(guò)DKOM隱藏和偽裝的notepad.exe進(jìn)行檢測(cè),檢測(cè)結(jié)果如圖4所示.圖4(a)是DKOM進(jìn)程隱藏方法的檢測(cè)結(jié)果,可以看到,檢測(cè)工具的狀態(tài)欄提示有一個(gè)隱藏進(jìn)程,并會(huì)標(biāo)出圖中進(jìn)程ID為1264的notepad.exe,指示該進(jìn)程被隱藏.而圖4(b)是進(jìn)程偽裝方法的檢測(cè)結(jié)果,進(jìn)程號(hào)為1240的 svchost.exe就是 notepad.exe經(jīng)過(guò)偽裝的進(jìn)程,可以看到該進(jìn)程的信息與其他svchost.exe進(jìn)程的信息一樣.

      由測(cè)試結(jié)果可見(jiàn),本文提出的基于直接內(nèi)核對(duì)象操作的偽裝方法能夠?qū)崿F(xiàn)進(jìn)程保護(hù).

      圖3 偽裝后的notepad與正常svchost的信息對(duì)比

      4 結(jié)語(yǔ)

      本文提出了基于DKOM的進(jìn)程偽裝保護(hù)方法.經(jīng)過(guò)該方法偽裝的進(jìn)程,看起來(lái)就像正常的系統(tǒng)進(jìn)程,不易被察覺(jué).這種方法優(yōu)于傳統(tǒng)的偽裝方法,被偽裝的程序可以存放于任何路徑,名字也可以任意選取.如果該方法結(jié)合保護(hù)進(jìn)程不被關(guān)閉的技術(shù),保護(hù)效果將會(huì)更好.當(dāng)然,出現(xiàn)新的保護(hù)方法,就會(huì)有相應(yīng)的檢測(cè)方法.隨著更多高新技術(shù)的提出,進(jìn)程保護(hù)和檢測(cè)技術(shù)都會(huì)不斷向前發(fā)展.如何更全面地修改進(jìn)程的相關(guān)信息,以達(dá)到更好的偽裝效果,是下一步要繼續(xù)考慮和研究的內(nèi)容.

      [1]張家旺.Windows系統(tǒng)進(jìn)程安全保護(hù)技術(shù)分析和實(shí)現(xiàn)[C]//第十七屆全國(guó)信息保密學(xué)術(shù)會(huì)議論文集.襄樊,2007:229-235.

      [2]馬金鑫,袁丁.基于Windows環(huán)境下的進(jìn)程保護(hù)技術(shù)的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2010,27(3):18-21.

      Ma Jinxin,Yuan Ding.On process-protecting based on windows and its implementation[J].Computer Application and Software,2010,27(3):18-21.(in Chinese)

      [3]何濤.基于Windows NT的隱藏進(jìn)程檢測(cè)系統(tǒng)的研究與實(shí)現(xiàn)[D].北京:北京工業(yè)大學(xué)計(jì)算機(jī)學(xué)院,2009.

      [4]Tsaur Woei Jiunn,Chen Yuh Chen.Exploring rootkit detectors'vulnerabilities using a new Windows hidden driver based rootkit[C]//2010IEEE Second International Conference on Social Computing.Minneapolis,MN,USA,2010:842-848.

      [5]Fu Desheng,Zhou Shu,Cao Chenglong.A Windows rootkit detection method based on cross-view[C]//2010International Conference on E-Product E-Service and EEntertainment.Zhengzhou,China,2010:1-3.

      [6]潘茂如,曹天杰.基于直接操作內(nèi)核對(duì)象的進(jìn)程隱藏技術(shù)研究[J].計(jì)算機(jī)工程,2010,36(18):138-140.Pan Maoru,Cao Tianjie.Research on process hiding technology based on direct kernel object manipulation[J].Computer Engineering,2010,36(18):138-140.(in Chinese)

      [7]梁曉,李毅超.基于線程調(diào)度的進(jìn)程隱藏檢測(cè)技術(shù)研究[J].計(jì)算機(jī)科學(xué),2006,33(10):114-115,118.

      Liang Xiao,Li Yichao.Research on thread dispatch based hidden process detection technique[J].Computer Science,2006,33(10):114-115,118.(in Chinese)

      [8]周利榮,馬文龍.Windows 7遍歷PspCidTable表檢測(cè)隱藏進(jìn)程[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2011,20(9):222-225.

      Zhou Lirong,Ma Wenlong.Windows 7 ergodice PspCid-Table to detect hidden processes[J].Computer Systems&Applications,2011,20(9):222-225.(in Chinese)[9]Rutkowski J K.Execution path analysis:finding kernel based rootkits[EB/OL].(2002-07-28)[2012-08-08].http://www.phrack.org/issues.html?issue=59&id=10#article.

      [10]Wen Yan,Zhao Jinjing,Wang Huaimin.Implicit detection of hidden processes with a local-booted virtual machine[C]//International Conference on Information Security and Assurance.Busan,Korea,2008:150-155.

      [11]Alsagoff S N.Malware self protection mechanism[C]//International Symposium on Information Technology.Kuala Lumpur,Malaysia,2008:1-8.

      [12]Linxer.XueTr[EB/OL].(2011-12-03)[2012-08-08].http://www.xuetr.com/?p=25.

      Novel process-protecting method using camouflage techniques based on direct kernel object manipulation

      Lan Zhiling Song Yubo Tang Lei
      (Information Security Research Center,Southeast University,Nanjing 210096,China)

      Current process-protecting method based on process-hiding is easy to be detected by Rootkit detection tools and hence fails to protect processes.To solve this problem,a novel process-protecting method using camouflage techniques based on direct kernel object manipulation(DKOM)is proposed.This method combines DKOM techniques with traditional process-disguising techniques.To protect the process,it is made to display as a system process in the task manager by altering structures storing process information in the kernel space of the operating system.To manipulate the kernel object,the modification should be implemented by a Windows driver,which is compatible with Windows 2 000 and Subsequent versions.The experimental results show that the process information retrieved from process explorer tools is identical to the system process.The process being disguised cannot be perceived by users or detected by Rootkit detection tools.The effectiveness of this process-protecting method using camouflage techniques based on DKOM is verified.

      DKOM(direct kernel object manipulation);process camouflage;process protection

      TP309.5

      A

      1001-0505(2013)01-0024-06

      10.3969/j.issn.1001-0505.2013.01.005

      2012-06-09.

      藍(lán)智靈(1988—),男,碩士生;宋宇波(聯(lián)系人),男,博士,副教授,songyubo@seu.edu.cn.

      國(guó)家發(fā)改委信息安全專(zhuān)項(xiàng)資助項(xiàng)目.

      藍(lán)智靈,宋宇波,唐磊.基于直接內(nèi)核對(duì)象操作的進(jìn)程偽裝保護(hù)方法[J].東南大學(xué)學(xué)報(bào):自然科學(xué)版,2013,43(1):24-29.[doi:10.3969/j.issn.1001-0505.2013.01.005]

      猜你喜歡
      內(nèi)核進(jìn)程程序
      萬(wàn)物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
      強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
      債券市場(chǎng)對(duì)外開(kāi)放的進(jìn)程與展望
      試論我國(guó)未決羈押程序的立法完善
      基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
      Linux內(nèi)核mmap保護(hù)機(jī)制研究
      “程序猿”的生活什么樣
      英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
      創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
      社會(huì)進(jìn)程中的新聞學(xué)探尋
      铜陵市| 孟连| 定州市| 新兴县| 应城市| 剑川县| 门源| 温宿县| 邢台县| 镇远县| 昌吉市| 台湾省| 依安县| 南乐县| 西丰县| 正阳县| 鄂托克旗| 长海县| 兴安县| 县级市| 平江县| 台东市| 江口县| 高安市| 塘沽区| 榆社县| 江川县| 淮滨县| 安国市| 龙岩市| 刚察县| 洛宁县| 定兴县| 眉山市| 陈巴尔虎旗| 萨嘎县| 普兰店市| 大埔县| 久治县| 北宁市| 华安县|