999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

木馬隱藏技術(shù)的研究與分析

2010-08-06 09:28:08高悅翔
通信技術(shù) 2010年4期
關(guān)鍵詞:進(jìn)程程序模型

劉 瀾, 高悅翔

(① 四川師范大學(xué) 計(jì)算機(jī)科學(xué)學(xué)院,四川 成都 610068;② 四川大學(xué) 計(jì)算機(jī)學(xué)院,四川 成都 610065)

0 引言

隨著互聯(lián)網(wǎng)絡(luò)的快速發(fā)展,網(wǎng)絡(luò)安全問(wèn)題日益突出。計(jì)算機(jī)病毒、特洛伊木馬以及網(wǎng)絡(luò)蠕蟲(chóng)等惡意程序?qū)W(wǎng)絡(luò)安全構(gòu)成了巨大的威脅。其中特洛伊木馬的破壞最大,它能在高隱蔽性的狀態(tài)下竊取網(wǎng)民的隱私信息。

通常被感染木馬的計(jì)算機(jī)用戶并不知道自己的計(jì)算機(jī)已被感染。這是由于木馬程序具有很高的隱蔽性,它能在看似無(wú)任何異常的情況下,秘密操控遠(yuǎn)程主機(jī),進(jìn)行破壞活動(dòng)。本文主要針對(duì)木馬的隱藏技術(shù)展開(kāi)研究,揭示了木馬各種隱藏技術(shù)的實(shí)現(xiàn)原理和技術(shù)手段。

1 程序隱蔽

木馬程序隱藏通常指利用各種手段偽裝木馬程序,讓一般用戶無(wú)法從表面上直接識(shí)別出木馬程序。要達(dá)到這一目的可以通過(guò)程序捆綁的方式實(shí)現(xiàn)。

程序捆綁方式是將多個(gè)exe程序鏈接在一起組合成一個(gè)exe文件,當(dāng)運(yùn)行該exe文件時(shí),多個(gè)程序同時(shí)運(yùn)行。程序捆綁有多種方式,如將多個(gè)exe文件以資源形式組合到一個(gè)exe文件中或者利用專用的安裝打包工具將多個(gè)exe文件進(jìn)行組合,這也是許多程序捆綁流氓軟件的做法。

因此,木馬程序可以利用程序捆綁的方式,將自己和正常的exe文件進(jìn)行捆綁。當(dāng)雙擊運(yùn)行捆綁后的程序時(shí),正常的exe文件運(yùn)行了,而木馬程序也在后臺(tái)悄悄地運(yùn)行。

程序隱藏只能達(dá)到從表面上無(wú)法識(shí)別木馬程序的目的,但是可以通過(guò)任務(wù)管理器中發(fā)現(xiàn)木馬程序的蹤跡,這就需要木馬程序?qū)崿F(xiàn)進(jìn)程隱藏。

2 進(jìn)程隱蔽

隱藏木馬程序的進(jìn)程顯示能防止用戶通過(guò)任務(wù)管理器查看到木馬程序的進(jìn)程,從而提高木馬程序的隱蔽性。目前,隱藏木馬進(jìn)程主要有如下兩種方式:

2.1 API攔截

API攔截技術(shù)屬于進(jìn)程偽隱藏方式。它通過(guò)利用Hook技術(shù)監(jiān)控并截獲系統(tǒng)中某些程序?qū)M(jìn)程顯示的 API函數(shù)調(diào)用,然后修改函數(shù)返回的進(jìn)程信息,將自己從結(jié)果中刪除,導(dǎo)致任務(wù)管理器等工具無(wú)法顯示該木馬進(jìn)程。具體實(shí)現(xiàn)過(guò)程是,木馬程序建立一個(gè)后臺(tái)的系統(tǒng)鉤子(Hook),攔截PSAPI的 EnumProcessModules 等相關(guān)函數(shù)的調(diào)用,當(dāng)檢測(cè)到結(jié)果為該木馬程序的進(jìn)程ID(PID)的時(shí)候直接跳過(guò),這樣進(jìn)程信息中就不會(huì)包含該木馬程序的進(jìn)程,從而達(dá)到了隱藏木馬進(jìn)程的目的。

2.2 遠(yuǎn)程線程注入

遠(yuǎn)程線程注入屬于進(jìn)程真隱藏方式。它主要是利用CreateRemoteThread函數(shù)在某一個(gè)目標(biāo)進(jìn)程中創(chuàng)建遠(yuǎn)程線程,共享目標(biāo)進(jìn)程的地址空間,并獲得目標(biāo)進(jìn)程的相關(guān)權(quán)限,從而修改目標(biāo)進(jìn)程內(nèi)部數(shù)據(jù)和啟動(dòng) DLL木馬。通過(guò)這種方式啟動(dòng)的 DLL木馬占用的是目標(biāo)進(jìn)程的地址空間,而且自身是作為目標(biāo)進(jìn)程的一個(gè)線程,所以它不會(huì)出現(xiàn)在進(jìn)程列表中。DLL木馬的實(shí)現(xiàn)過(guò)程是:

① 通過(guò)OpenProcess函數(shù)打開(kāi)目標(biāo)進(jìn)程;

② 計(jì)算DLL路徑名需要的地址空間并且根據(jù)計(jì)算結(jié)果調(diào)用 VirtualAllocEx函數(shù)在目標(biāo)進(jìn)程中申請(qǐng)一塊大小合適的內(nèi)存空間;

③ 調(diào)用WriteProcessMemory函數(shù)將DLL的路徑名寫(xiě)入申請(qǐng)到的內(nèi)存空間中;

④ 利用函數(shù)GetProcAddress計(jì)算LoadLibraryW的入口地址,并將 LoadLibraryW 的入口地址作為遠(yuǎn)程線程的入口地址;

⑤ 通過(guò)函數(shù) CreateRemoteThread在目標(biāo)進(jìn)程中創(chuàng)建遠(yuǎn)程線程。

通過(guò)以上步驟就可以實(shí)現(xiàn)遠(yuǎn)程線程注入啟動(dòng) DLL木馬,達(dá)到隱藏木馬進(jìn)程的目的。而且,遠(yuǎn)程線程注入方式與其他進(jìn)程隱藏技術(shù)相比,具有更強(qiáng)的隱蔽性和反查殺能力,增加了木馬的生存能力。

3 通信隱藏

進(jìn)程隱藏可以進(jìn)一步加強(qiáng)其隱蔽性。但是仍然可以從通信連接的狀況中發(fā)現(xiàn)木馬程序的蹤跡。因此,很有必要實(shí)現(xiàn)木馬程序的通信隱藏。本文給出了以下兩種通信隱藏技術(shù)的實(shí)現(xiàn)思想。

3.1 端口復(fù)用技術(shù)

木馬服務(wù)器端程序在運(yùn)行時(shí)會(huì)主動(dòng)打開(kāi)某一端口和客戶端程序進(jìn)行連接,從而降低了木馬程序的隱蔽性。木馬端口復(fù)用技術(shù)能避免這種缺點(diǎn),它讓木馬服務(wù)端程序共享其他網(wǎng)絡(luò)程序已打開(kāi)的端口和客戶端進(jìn)行連接,從而防止重新開(kāi)啟端口降低隱蔽性。

該技術(shù)的關(guān)鍵之處在于,木馬程序應(yīng)增設(shè)一個(gè)數(shù)據(jù)包轉(zhuǎn)交判斷模塊,該模塊控制主機(jī)對(duì)數(shù)據(jù)報(bào)的轉(zhuǎn)交選擇。當(dāng)主機(jī)收到目的端口與木馬所復(fù)用的端口一致的數(shù)據(jù)包時(shí),調(diào)用數(shù)據(jù)包轉(zhuǎn)交判斷模塊進(jìn)行判斷,若為木馬程序的數(shù)據(jù)包,將其轉(zhuǎn)發(fā)給木馬程序,否則,將其轉(zhuǎn)交給開(kāi)啟該端口的網(wǎng)絡(luò)程序,如圖1所示,圖1中模塊S=數(shù)據(jù)包轉(zhuǎn)交判斷模塊。

圖1 端口復(fù)用的數(shù)據(jù)包轉(zhuǎn)交過(guò)程

利用端口復(fù)用技術(shù)可以增強(qiáng)木馬的通信隱藏,但是對(duì)于某些設(shè)置得過(guò)嚴(yán)的防火墻和入侵檢測(cè)系統(tǒng),這種技術(shù)也會(huì)失去作用。因此,除了通信端口的隱藏之外,還應(yīng)該考慮數(shù)據(jù)包傳輸協(xié)議的隱藏。本文通過(guò)分析相關(guān)網(wǎng)絡(luò)協(xié)議,編寫(xiě)出了一款利用ICMP協(xié)議缺陷傳輸數(shù)據(jù)的木馬程序,這里給出該技術(shù)的關(guān)鍵實(shí)現(xiàn)思想。

3.2 利用ICMP和HTTP協(xié)議

通常網(wǎng)絡(luò)防火墻和入侵檢測(cè)系統(tǒng)等安全設(shè)備只檢查ICMP報(bào)文的首部,對(duì)數(shù)據(jù)部分不做處理。因此,可以將木馬程序的通信數(shù)據(jù)隱藏在ICMP報(bào)文格式的選項(xiàng)數(shù)據(jù)字段進(jìn)行傳送,如把服務(wù)端程序向客戶端程序傳輸?shù)臄?shù)據(jù)偽裝成回顯請(qǐng)求報(bào)文,而把客戶端程序向服務(wù)端程序傳輸?shù)臄?shù)據(jù)偽裝成回顯應(yīng)答報(bào)文[1]。這樣,就可以通過(guò) PINGPINGRESPONSE的方式在木馬服務(wù)端程序和客戶端程序之間建立起一個(gè)高效的秘密會(huì)話信道。利用ICMP協(xié)議傳輸數(shù)據(jù)還有一個(gè)很大的優(yōu)點(diǎn),即ICMP屬于IP層協(xié)議,它在傳輸數(shù)據(jù)時(shí)并不使用任何端口,從而具有更好的隱蔽性。

利用HTTP協(xié)議進(jìn)行木馬程序之間的數(shù)據(jù)傳輸同樣具有很高的隱蔽性。攻擊者可以將木馬客戶端程序使用的端口綁定到HTTP服務(wù)的端口(80)上。那么,當(dāng)木馬服務(wù)端程序向客戶端程序建立連接時(shí),目的端口就變成了 80端口,從而將該連接偽裝成HTTP服務(wù)連接以逃過(guò)防火墻的檢查。

實(shí)驗(yàn)測(cè)試表明,利用ICMP協(xié)議缺陷傳輸數(shù)據(jù)的木馬程序能夠很好地逃避網(wǎng)絡(luò)防火墻和入侵檢測(cè)系統(tǒng)的檢查,實(shí)現(xiàn)和控制端之間的通信。但是,采用該技術(shù)的木馬程序傳輸數(shù)據(jù)的效率和穩(wěn)定性還有待提高。

以上分析的各種木馬隱藏技術(shù)都只是建立在木馬程序?qū)崿F(xiàn)自身隱藏的基礎(chǔ)上。然而,目前網(wǎng)絡(luò)安全狀況表明,隨著反木馬技術(shù)的不斷提高,木馬程序僅靠自身或者某單一技術(shù)已無(wú)法實(shí)現(xiàn)高隱蔽性。因此,實(shí)現(xiàn)木馬的協(xié)同隱藏技術(shù)就顯得尤為重要。

4 協(xié)同隱藏

木馬協(xié)同隱藏思想通常是綜合利用各種木馬隱藏技術(shù),通過(guò)木馬子程序或者木馬程序之間相互協(xié)作,實(shí)現(xiàn)更高的隱蔽性。木馬協(xié)同隱藏技術(shù)擺脫了傳統(tǒng)隱藏技術(shù)僅靠單一木馬、單一技術(shù)的方式,它能夠從宏觀整體出發(fā),設(shè)計(jì)更加強(qiáng)大的木馬協(xié)作隱藏模型。

Harold Thimbleby等人[2]提出了木馬程序的模型框架;張新宇等人[3]對(duì)木馬協(xié)同隱藏思想進(jìn)行了形式化描述,并通過(guò)驗(yàn)證知,當(dāng)系統(tǒng)引入主木馬和各個(gè)子木馬時(shí),協(xié)同隱藏模型可以使系統(tǒng)發(fā)生變化,顯現(xiàn)出不一致的特點(diǎn),因此證明了引入相關(guān)多個(gè)子木馬程序協(xié)助主木馬程序?qū)崿F(xiàn)協(xié)同隱藏的可行性;梅登華等人[4]將Multi-Agent技術(shù)與木馬技術(shù)結(jié)合,提出了基于Multi-Agent的木馬技術(shù);康治平等人[5]在木馬協(xié)同隱藏模型的基礎(chǔ)上提出了基于多線程和多對(duì)多的結(jié)構(gòu)。

本文根據(jù)Harold Thimbleby等人對(duì)木馬協(xié)同隱藏的形式化描述,提出了一種基于動(dòng)態(tài)星型結(jié)構(gòu)的木馬協(xié)同隱藏模型。該結(jié)構(gòu)主要思想如下,在某個(gè)區(qū)域內(nèi)各個(gè)木馬之間選取某一木馬為主木馬,并將該主木馬作為代理,各個(gè)子木馬通過(guò)它和控制端完成通信。主木馬負(fù)責(zé)協(xié)調(diào)并控制子木馬實(shí)現(xiàn)協(xié)同隱藏,同時(shí)各個(gè)子木馬需實(shí)現(xiàn)相關(guān)隱藏功能,共同構(gòu)建協(xié)同隱藏模型。為了保持該模型結(jié)構(gòu)以及實(shí)現(xiàn)動(dòng)態(tài)變化的特點(diǎn),主木馬角色應(yīng)在一段時(shí)間后由不同的子木馬隨機(jī)擔(dān)任,如圖2。

圖2 星型結(jié)構(gòu)隱藏模型

例如在局域網(wǎng)中構(gòu)建該模型的實(shí)現(xiàn)過(guò)程是:將木馬程序植入局域網(wǎng)內(nèi)某一主機(jī),并且使該木馬程序擔(dān)任主木馬角色,利用系統(tǒng)漏洞向網(wǎng)內(nèi)其他主機(jī)傳播木馬程序,然后自動(dòng)構(gòu)建動(dòng)態(tài)星型結(jié)構(gòu)木馬模型。為了使該模型能成功實(shí)現(xiàn),還必須完成如下功能:

① 主木馬應(yīng)構(gòu)建一個(gè)狀態(tài)信息表,記錄區(qū)域內(nèi)各子木馬狀態(tài)信息;

② 主木馬協(xié)調(diào)各子木馬的隱藏功能,實(shí)時(shí)檢測(cè)子木馬狀態(tài),一旦發(fā)現(xiàn)某一子木馬消失,應(yīng)立即通過(guò)系統(tǒng)漏洞重新注入木馬程序[4];

③ 子木馬通過(guò)主木馬和控制端通信,如果發(fā)生中斷,如主木馬主機(jī)關(guān)機(jī)或者主木馬程序被清除等,各子木馬應(yīng)重新選取出主木馬,新選取的主木馬替換原來(lái)主木馬角色,重新構(gòu)建狀態(tài)信息表;

④ 木馬程序啟動(dòng)時(shí),應(yīng)主動(dòng)向網(wǎng)內(nèi)報(bào)告登記,如果該木馬發(fā)現(xiàn)自己是網(wǎng)內(nèi)第一個(gè)啟動(dòng)的木馬程序,其應(yīng)擔(dān)任主木馬角色;

⑤ 主木馬程序應(yīng)設(shè)置一個(gè)計(jì)數(shù)器,記錄其控制的子木馬數(shù)量,防止由于子木馬數(shù)量過(guò)多,通信量過(guò)大,影響系統(tǒng)性能。

為了進(jìn)一步提高木馬協(xié)同隱藏的能力,還可以將其他隱藏技術(shù)融合到該隱藏模型中,如各木馬之間利用ICMP協(xié)議通信,實(shí)現(xiàn)端口復(fù)用技術(shù)等。

木馬程序采用動(dòng)態(tài)星型結(jié)構(gòu)通信比采用普通方式通信具有更高的隱蔽性和生存周期。分析如下:

① 由于采用代理方式通信及動(dòng)態(tài)變換主木馬角色,使得通信源地址實(shí)時(shí)變化,增加了追查控制端IP地址的難度;

② 主木馬實(shí)時(shí)檢測(cè)子木馬狀態(tài),并傳播木馬程序,只要該模型結(jié)構(gòu)中存在一個(gè)木馬,就能夠構(gòu)建出完整的協(xié)同隱藏模型,從而增加了木馬程序的生存時(shí)間;

③ 模型結(jié)構(gòu)中的木馬程序融合了各種隱藏技術(shù)實(shí)現(xiàn)協(xié)同隱藏,增強(qiáng)了整體隱藏能力;

④ 具有較高的程序擴(kuò)展性,可以通過(guò)主木馬實(shí)時(shí)更新各子木馬功能模塊;

⑤ 主木馬之間可以繼續(xù)構(gòu)建該動(dòng)態(tài)星型結(jié)構(gòu)隱藏模型,實(shí)現(xiàn)多級(jí)化木馬隱藏模型。

該模型加強(qiáng)了木馬協(xié)同隱藏的能力,增加了木馬程序的生存時(shí)間,但也產(chǎn)生了一些相關(guān)問(wèn)題,如增加了木馬通信結(jié)構(gòu)的復(fù)雜度,降低了通信過(guò)程的穩(wěn)定性,增加了網(wǎng)內(nèi)控制信息,易造成網(wǎng)絡(luò)阻塞、癱瘓等。總之,木馬隱藏技術(shù)正朝著復(fù)合、協(xié)同的方向發(fā)展,各種問(wèn)題也會(huì)隨著技術(shù)的進(jìn)步逐步得以解決。

5 結(jié)語(yǔ)

木馬隱藏技術(shù)研究是木馬程序研究的熱點(diǎn)問(wèn)題之一。本文針對(duì)木馬隱藏技術(shù)進(jìn)行了較全面的分析,給出了木馬程序隱藏、進(jìn)程隱藏、通信隱藏以及協(xié)同隱藏等技術(shù)原理。通過(guò)從單一木馬程序隱藏技術(shù)到多木馬程序隱藏技術(shù)的研究,展現(xiàn)了木馬程序隱藏的關(guān)鍵性思路轉(zhuǎn)變。通過(guò)對(duì)木馬隱藏技術(shù)的分析研究, 可以加深對(duì)木馬隱藏技術(shù)的認(rèn)識(shí), 提高木馬攻擊的防范意識(shí),從而進(jìn)一步把握木馬隱藏技術(shù)的發(fā)展方向,以至于開(kāi)發(fā)出更多針對(duì)木馬隱藏技術(shù)的反木馬工具。

[1] 張仁斌,李鋼,侯整風(fēng).計(jì)算機(jī)病毒與反病毒技術(shù)[M].北京:清華大學(xué)出版社,2006:300-316.

[2] Thimbleby H, Anderson S, Cairns P.A Framework for Modelling Trojans and Computer Virus Infection[J].The Computer Journal,1998,41(07):444-458.

[3] 張新宇,卿斯?jié)h,馬恒太,等.特洛伊木馬隱藏技術(shù)研究[J].北京:通信學(xué)報(bào),2004,25(07):153-159.

[4] 梅登華,林耀通.基于 Multi-Agent的木馬模型設(shè)計(jì)[J].北京:電子技術(shù)應(yīng)用,2008,34(05):138-140.

[5] 康治平,向宏.特洛伊木馬隱藏技術(shù)研究及實(shí)踐[J].北京:計(jì)算機(jī)工程與應(yīng)用,2006,42(09):103-105.

猜你喜歡
進(jìn)程程序模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
債券市場(chǎng)對(duì)外開(kāi)放的進(jìn)程與展望
試論我國(guó)未決羈押程序的立法完善
“程序猿”的生活什么樣
英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
3D打印中的模型分割與打包
創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
社會(huì)進(jìn)程中的新聞學(xué)探尋
主站蜘蛛池模板: 色国产视频| 99re在线免费视频| 亚洲第一成年网| 国产精品成人AⅤ在线一二三四| 国产草草影院18成年视频| 国产乱子伦精品视频| 久久成人18免费| yy6080理论大片一级久久| 亚洲午夜福利精品无码| 色婷婷电影网| 在线va视频| 亚洲午夜天堂| 在线va视频| 99r在线精品视频在线播放| 亚洲午夜国产精品无卡| 国产精品无码作爱| 亚洲无码精品在线播放| 青草视频免费在线观看| 老司机午夜精品视频你懂的| 伊在人亚洲香蕉精品播放| 国产真实乱了在线播放| 97视频在线观看免费视频| 日韩一二三区视频精品| 欧美综合成人| 无码电影在线观看| 亚洲日韩精品无码专区| 国产97视频在线| 一级毛片免费播放视频| 日本91视频| 亚洲日本在线免费观看| 国产欧美成人不卡视频| 日韩乱码免费一区二区三区| 素人激情视频福利| 日韩乱码免费一区二区三区| 成人国产三级在线播放| 91福利一区二区三区| 欧美黄色网站在线看| 国产精品美女网站| 亚洲AV无码久久天堂| 自拍偷拍欧美日韩| 99国产在线视频| 国产福利拍拍拍| 久久夜色撩人精品国产| 伊人91在线| 成人国产精品一级毛片天堂| 久久国产高清视频| 国产成人你懂的在线观看| 亚洲毛片一级带毛片基地| 国产女人18毛片水真多1| www.91中文字幕| 国产美女人喷水在线观看| 中文字幕第4页| 亚洲天堂自拍| 久久激情影院| 国产精品无码AV片在线观看播放| 中文字幕66页| 国产成人区在线观看视频| 亚洲无码视频图片| 99热这里只有精品免费| 成人韩免费网站| 免费国产无遮挡又黄又爽| 日本一本在线视频| 九九热精品免费视频| 人妻丰满熟妇av五码区| 日韩免费视频播播| a毛片免费在线观看| 亚洲天堂免费| 一级香蕉视频在线观看| 国产午夜福利亚洲第一| 欧美一区二区三区国产精品| 久久久久国产一级毛片高清板| 91精品免费高清在线| 国产成人91精品免费网址在线| 日韩中文欧美| 污网站在线观看视频| 国产自无码视频在线观看| 免费看美女毛片| 国产精品自在线天天看片| 97在线免费| 日韩亚洲综合在线| 欧美日韩成人在线观看| 福利在线一区|