特洛伊木馬程序的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文
《特洛伊木馬程序的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文》由會(huì)員分享,可在線閱讀,更多相關(guān)《特洛伊木馬程序的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文(46頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、. XXXXXXXXXXX 本科生畢業(yè)論文〔設(shè)計(jì) 題 目 特洛伊木馬程序的設(shè)計(jì)與實(shí)現(xiàn) 學(xué)生姓名 指導(dǎo)教師 學(xué) 院 信息科學(xué)與工程學(xué)院 專業(yè)班級(jí) 完成時(shí)間 20XX5月28日 . . 摘 要 隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,黑客技術(shù)也不斷更新,它對(duì)網(wǎng)絡(luò)安全構(gòu)成了極大的威脅。特洛伊木馬作為黑客工具中重要的一員,其技術(shù)日新月異,破壞力之大是絕不容忽視的。因此,對(duì)木馬技術(shù)的研究刻不容緩。 本文首先介紹了木馬的基本概念,包括木馬的結(jié)構(gòu)、行為特征、功能、分類以及木馬的發(fā)展現(xiàn)狀和發(fā)展趨勢(shì)。然后詳細(xì)介紹了木馬的工作原理和木馬系統(tǒng)的關(guān)鍵技術(shù)。木馬的關(guān)鍵
2、技術(shù)包括木馬的偽裝方式、木馬程序的隱藏技術(shù)、木馬的自啟動(dòng)以及木馬的通信技術(shù)等。另外,本文研究了遠(yuǎn)程控制技術(shù),包括TCP/IP協(xié)議的介紹、Socket通信技術(shù)和客戶端/服務(wù)器模型〔C/S。 本文在研究木馬技術(shù)的基礎(chǔ)上設(shè)計(jì)了一款遠(yuǎn)程控制木馬。該木馬程序能夠通過(guò)客戶端對(duì)遠(yuǎn)程主機(jī)進(jìn)行控制和監(jiān)視,服務(wù)端可以自動(dòng)連接客戶端。另外該木馬程序還包括遠(yuǎn)程文件操作〔文件復(fù)制、拷貝、刪除、下載、上傳等,遠(yuǎn)程系統(tǒng)控制〔關(guān)機(jī)、重啟,鼠標(biāo)、屏幕鎖定,啟動(dòng)項(xiàng)管理,網(wǎng)絡(luò)連接控制,遠(yuǎn)程進(jìn)程管理和文件傳輸?shù)裙δ?。最后本文?shí)現(xiàn)了這一款木馬程序,并對(duì)其進(jìn)行了測(cè)試。測(cè)試結(jié)果顯示該木馬程序?qū)崿F(xiàn)了所有的功能,能夠?qū)h(yuǎn)程主機(jī)進(jìn)行控制。
3、關(guān)鍵詞木馬, Socket,遠(yuǎn)程控制 . . ABSTRACT With the rapid development of network, the dependence between our society, computer system and information network becomes bigger and bigger. The safety of the internet is especially important. The hackers create a great network security threats, and the currently
4、 most available mean of invasion are the Trojan technology. Therefore, this technique has been studied for the Trojan technology. This paper introduces the basic concepts of Trojans, including structure, behavior characteristics, function, classification and Trojans situation and development trend.
5、 Then, it also introduces the details of the Trojan works and Trojan key technology. Key technologies include Trojan disguised way, stealth technology of Trojans, Trojans’ self-running and communication technology. In addition, this paper also studies about the remotecontrol technology, including TC
6、P/IP protocol description, Socket communication technology and client / server model
7、e client automatically. In addition, the Trojan program also includes a remote file operations
8、er and other functions. Finally, this paper realizes this Trojan horse program, and tests it. Test results show that the Trojan horse program achieves all the functions and it can control the remote host. KEY WORDS Trojan, Socket, Remote control . . 目 錄 摘要I ABSTRACTII 第一章緒論1 1.1木馬的研究背景1 1.2
9、木馬發(fā)展的現(xiàn)狀1
1.3論文研究的意義和目的2
1.4論文的研究?jī)?nèi)容3
1.5論文章節(jié)安排3
第二章木馬技術(shù)基礎(chǔ)4
2.1木馬系統(tǒng)結(jié)構(gòu)4
2.2木馬的基本特征5
2.3木馬的功能6
2.4木馬的分類6
2.5木馬的發(fā)展趨勢(shì)7
第三章木馬工作原理及關(guān)鍵技術(shù)9
3.1 木馬的偽裝9
3.2木馬的隱藏10
3.3木馬常見(jiàn)的啟動(dòng)方式12
3.4遠(yuǎn)程控制技術(shù)14
協(xié)議14
3.4.2 TCP協(xié)議15
套接字
10、 4.1功能分析20 4.2系統(tǒng)總體設(shè)計(jì)21 使用環(huán)境和拓?fù)浣Y(jié)構(gòu)21 系統(tǒng)的邏輯模型22 設(shè)計(jì)思路23 4.3系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù)24 模塊化技術(shù)24 4.3.2 鉤子技術(shù)26 遠(yuǎn)程線程插入技術(shù)27 隱蔽通信技術(shù)29 4.4系統(tǒng)的開(kāi)發(fā)工具30 第五章遠(yuǎn)程控制木馬的實(shí)現(xiàn)32 5.1服務(wù)端程序的實(shí)現(xiàn)32 服務(wù)端的自啟動(dòng)32 5.1.2 通信模塊的實(shí)現(xiàn)34 服務(wù)端管理模塊38 5.2客戶端的實(shí)現(xiàn)39 遠(yuǎn)程文件控制39 系統(tǒng)控制40 文件傳輸42 第六章結(jié)束語(yǔ)43 參考文獻(xiàn)44 致謝46 . . 第一章 緒論 1.1木馬的研究背景 隨著網(wǎng)絡(luò)的快
11、速發(fā)展,Internet深入到社會(huì)的每個(gè)角落,人們充分享受到了其給工作和生活帶來(lái)的巨大便利,人類社會(huì)對(duì)計(jì)算機(jī)系統(tǒng)和信息網(wǎng)絡(luò)的依賴性也越來(lái)越大。工業(yè)和信息化部統(tǒng)計(jì)數(shù)據(jù)顯示,20XX中國(guó)網(wǎng)民規(guī)模已達(dá)3.84億;預(yù)計(jì)2010中國(guó)網(wǎng)民規(guī)模突破4億[1]。由于計(jì)算機(jī)系統(tǒng)和信息網(wǎng)絡(luò)系統(tǒng)本身固有的脆弱性,網(wǎng)絡(luò)入侵工具<如蠕蟲(chóng)、木馬等>不斷涌現(xiàn),社會(huì)、企業(yè)和個(gè)人也因此蒙受了越來(lái)越大的損失。木馬由于它的隱蔽性、遠(yuǎn)程可植入性和可控制性等技術(shù)特點(diǎn),已成為黑客攻擊或不法分子入侵網(wǎng)絡(luò)的重要工具,目前,不斷發(fā)生的互聯(lián)網(wǎng)安全事故中,大部分都有木馬的身影。 20XX1月,國(guó)內(nèi)最知名的信息網(wǎng)絡(luò)安全廠商金山安全正式發(fā)布《20X
12、X中國(guó)電腦病毒疫情及互聯(lián)網(wǎng)安全報(bào)告》。報(bào)告顯示, 20XX金山毒霸共截獲新增病毒和木馬20684223個(gè),與5年前新增病毒數(shù)量相比,增長(zhǎng)了近400倍。在新增病毒中,木馬仍然首當(dāng)其沖,新增數(shù)量多達(dá)15223588個(gè),占所有病毒重量的73.6%。全國(guó)共有76409010臺(tái)〔約7600萬(wàn)臺(tái)計(jì)算機(jī)感染病毒,與08年的感染量相比增加了13.8%[2]。 計(jì)算機(jī)病毒猖獗的背后是巨大的經(jīng)濟(jì)利益。據(jù)中國(guó)國(guó)家計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)急處理中心估計(jì),目前木馬黑色產(chǎn)業(yè)鏈的年產(chǎn)值己超過(guò)2.38億元人民幣,造成的損失則超過(guò)76億元。木馬經(jīng)濟(jì)產(chǎn)業(yè)化的一個(gè)重要表現(xiàn)就是:制造木馬、傳播木馬、盜竊賬戶信息、銷贓、洗錢,分工明確,形成了一
13、個(gè)非常完善的流水性作業(yè)程序,這個(gè)流水作業(yè)程序就是一條黑色產(chǎn)業(yè)鏈[3]。 木馬程序使得遠(yuǎn)程的黑客能夠享有系統(tǒng)的控制權(quán)。"知己知彼,百戰(zhàn)不殆",如果想找出防御木馬攻擊的有效途徑,就必須認(rèn)真地研究木馬攻擊的技術(shù)。在研究木馬攻防的過(guò)程中,如果能夠理清木馬攻擊手段的發(fā)展脈絡(luò),就有可能進(jìn)一步找出木馬發(fā)展的趨勢(shì),并提早思考應(yīng)對(duì)策略。 1.2木馬發(fā)展的現(xiàn)狀 自從世界上出現(xiàn)第一個(gè)木馬程序〔1986年的PC-Write木馬到今天,木馬的發(fā)展已經(jīng)歷了五代[4][5]: 第一代木馬出現(xiàn)在網(wǎng)絡(luò)發(fā)展的早期,是以竊取網(wǎng)絡(luò)密碼為主要任務(wù),即簡(jiǎn)單的密碼竊取、發(fā)送等,在隱藏和通信方面均無(wú)特別之處。 第二代木馬在技術(shù)上有
14、很大的進(jìn)步,使用標(biāo)準(zhǔn)的C/S架構(gòu),提供遠(yuǎn)程文件管理、屏幕監(jiān)視等功能。但是由于植入木馬的服務(wù)端程序會(huì)打開(kāi)連接端口等候客戶端連接,比較容易被發(fā)現(xiàn)。如:"冰河"、"Qmitis"。 第三代木馬在功能上與第二代木馬沒(méi)有太大差異,它的改變主要在網(wǎng)絡(luò)連接方式上,它的特征是不打開(kāi)連接端口進(jìn)行偵聽(tīng),而是使用ICMP通信協(xié)議進(jìn)行通信或使用反向連接技術(shù)讓服務(wù)器端主動(dòng)連接客戶端,以突破防火墻的攔截。在數(shù)據(jù)傳遞技術(shù)上也做了不小的改進(jìn),出現(xiàn)了ICMP等類型的木馬,利用畸形報(bào)文傳遞數(shù)據(jù),增加了查殺的難度。如:網(wǎng)絡(luò)神偷、Peep201等。 第四代木馬在進(jìn)程隱藏方面,做了大改動(dòng),采用了內(nèi)核插入式的嵌入方式,利用遠(yuǎn)程插入線
15、程技術(shù),嵌入DLL線程,或者掛接PSAPI[6],實(shí)現(xiàn)木馬的隱藏。前三代木馬,大多都有獨(dú)立的木馬,因此用戶可以根據(jù)啟動(dòng)項(xiàng)目中的描述內(nèi)容,很快找到木馬,并刪除它。但是,第四代木馬選擇注冊(cè)表的方式,偽裝成DLL文件形式加載到正常的啟動(dòng)程序上,無(wú)法通過(guò)"任務(wù)管理器"查看到正在執(zhí)行的木馬。不過(guò)在連接方式上,依然使用第三代木馬或第二代木馬的連接方式。如:Beast木馬。 第五代木馬實(shí)現(xiàn)了與病毒緊密結(jié)合,利用操作系統(tǒng)漏洞,直接實(shí)現(xiàn)感染傳播的目的,而不必象以前的木馬那樣需要欺騙用戶主動(dòng)激活。例如類似沖擊波病毒的木馬——噩夢(mèng)II。 特洛伊木馬程序發(fā)展到今天已經(jīng)相當(dāng)完善了,但隨著計(jì)算機(jī)技術(shù)的發(fā)展,木馬仍會(huì)繼
16、續(xù)演變并運(yùn)用一些新的技術(shù)和方法使其更具有攻擊性和破壞性。從現(xiàn)在的趨勢(shì)來(lái)看,木馬將在隱藏性、代碼的模塊化設(shè)計(jì)、及時(shí)通知、跨平臺(tái)、底層通信以及和蠕蟲(chóng)病毒技術(shù)融合等方面有所提升和發(fā)展。 1.3論文研究的意義和目的 由于木馬活動(dòng)的猖獗和其實(shí)現(xiàn)技術(shù)的不斷更新,木馬的防范工作也必須與時(shí)俱進(jìn)。只要了解木馬的工作原理,借助協(xié)議分析工具,就能及時(shí)發(fā)現(xiàn)蛛絲馬跡,降低木馬帶來(lái)的危害;只要熟悉木馬的隱藏方法,就能快速找到并徹底清除木馬,甚至找到入侵者;如果能夠預(yù)先了解木馬攻擊手段,就可以有針對(duì)性防范木馬主動(dòng)入侵或攻擊。 論文通過(guò)對(duì)木馬的原理進(jìn)行深入分析,總結(jié)一些木馬的一般規(guī)律和最新技術(shù),對(duì)于提高木馬的防范水平以
17、及網(wǎng)絡(luò)管理提供了一定的借鑒作用。 1.4論文的研究?jī)?nèi)容 本文在研究了木馬的關(guān)鍵技術(shù)基礎(chǔ)上設(shè)計(jì)實(shí)現(xiàn)了一款遠(yuǎn)程控制木馬程序。 主要研究?jī)?nèi)容: 一、特洛伊木馬的概念、發(fā)展過(guò)程、分類、特征、功能、發(fā)展現(xiàn)狀及趨勢(shì)。 二、計(jì)算機(jī)遠(yuǎn)程控制技術(shù)的基礎(chǔ)知識(shí)及遠(yuǎn)程控制的關(guān)鍵技術(shù)。 三、在Windows平臺(tái)下實(shí)現(xiàn)一種遠(yuǎn)程控制木馬程序,該木馬采用能繞防火墻隱蔽地植入受控計(jì)算機(jī),并根據(jù)控制端的指令進(jìn)行啟動(dòng)、消亡以及其他各種控制功能。 四、系統(tǒng)實(shí)時(shí)將受控計(jì)算機(jī)當(dāng)前屏幕顯示的信息、鍵盤記錄、瀏覽文件等各種信息傳輸至遠(yuǎn)程控制端。 五、對(duì)木馬程序進(jìn)行測(cè)試。 1.5論文章節(jié)安排 第一章簡(jiǎn)要介紹了本文的研究背景
18、和意義,以及論文內(nèi)容的安排。 第二章總結(jié)了木馬技術(shù)基礎(chǔ),包括木馬的分類、特征、功能和發(fā)展趨勢(shì) 第三章研究了木馬的工作原理以及木馬實(shí)現(xiàn)的關(guān)鍵技術(shù)等,包括木馬的偽裝、隱藏和啟動(dòng),遠(yuǎn)程控制關(guān)鍵技術(shù)及通信技術(shù)等。 第四章是遠(yuǎn)程控制木馬程序的設(shè)計(jì)。包括木馬的模型結(jié)構(gòu)及設(shè)計(jì)思想,關(guān)鍵功能的設(shè)計(jì)過(guò)程。 第五章是遠(yuǎn)程控制木馬程序的實(shí)現(xiàn),包括了木馬的運(yùn)行過(guò)程和功能測(cè)試。 第六章為結(jié)束語(yǔ),總結(jié)畢業(yè)設(shè)計(jì)。 . . 第二章 木馬技術(shù)基礎(chǔ) 在計(jì)算機(jī)領(lǐng)域中特洛伊木馬程序是一種未經(jīng)授權(quán)的程序,它包含在一段正常的程序當(dāng)中,這個(gè)未經(jīng)授權(quán)的程序提供了一些用戶不知道的功能,其目的是不需要管理員的準(zhǔn)許就可獲
19、得系統(tǒng)使用權(quán)。它可以控制用戶計(jì)算機(jī)系統(tǒng),造成用戶資料的泄漏,甚至造成整個(gè)計(jì)算機(jī)系統(tǒng)崩潰等。特洛伊木馬和病毒的區(qū)別是它不能自行傳播,而要依靠宿主以其它假象出現(xiàn),冒充一個(gè)正常的程序,如Bo、Happy99、sub7、網(wǎng)絡(luò)神偷、冰河等就是典型的特洛伊木馬程序。本章詳細(xì)論述了木馬的分類、特征、功能、工作原理和攻擊手段等。 木馬的全稱是"特洛伊木馬",是一種新型的計(jì)算機(jī)網(wǎng)絡(luò)病毒程序。在RFC1244安全手冊(cè)中給出的:"特洛伊木馬是這樣一種程序,它提供了一些有用的,或僅僅是有意思的功能。但是通常要做一些用戶不希望的事,諸如在你不了解的情況下拷貝文件或竊取你的密碼"。它利用自身所具有的植入功能,依附其它具
20、有傳播能力病毒, 或者通過(guò)入侵后植入等多種途徑, 進(jìn)駐目標(biāo)機(jī)器,搜集其中各種敏感信息,并通過(guò)網(wǎng)絡(luò)與外界通信,發(fā)回所搜集到的各種敏感信息, 接受植入者指令, 完成其它各種操作,如修改指定文件、格式化硬盤等。 2.1木馬系統(tǒng)結(jié)構(gòu) 一個(gè)完整的木馬系統(tǒng)由硬件部分、軟件部分和具體的連接部分組成[7]。 1、 硬件部分,建立木馬連接所必須的硬件實(shí)體,分為控制端,服務(wù)端和 Internet。 控制端是對(duì)服務(wù)進(jìn)行遠(yuǎn)程控制的一方;服務(wù)端是被控制端遠(yuǎn)程控制的一方;Internet是控制段對(duì)服務(wù)端進(jìn)行遠(yuǎn)程控制,數(shù)據(jù)傳輸?shù)木W(wǎng)絡(luò)載體。 2、 軟件部分,實(shí)現(xiàn)遠(yuǎn)程控制所必須的軟件程序。 控制端程序,控制端用以
21、遠(yuǎn)程控制服務(wù)端的程序。木馬程序,潛入服務(wù)端內(nèi)部, 獲取其操作權(quán)限的程序。木馬配置程序,設(shè)置木馬的端口號(hào),觸發(fā)條件,木馬名稱等,并使其在服務(wù)端隱藏的更隱蔽的程序。 3、 具體連接部分,通過(guò)Internet在服務(wù)端和控制端之間建立一條木馬通道所必 須的一條元素。 控制端IP和服務(wù)端IP,即控制端和服務(wù)端的網(wǎng)絡(luò)地址,也是木馬進(jìn)行數(shù)據(jù)傳輸?shù)哪康牡?。控制端端口和木馬端口,即控制端和服務(wù)端的數(shù)據(jù)入口,通過(guò)這個(gè)端口,數(shù)據(jù)可以直達(dá)控制端程序或木馬程序。 2.2木馬的基本特征 綜合現(xiàn)在流行的木馬程序,它們都具有以下基本特征: 1、 隱蔽性 木馬必須有能力長(zhǎng)期潛伏于目標(biāo)機(jī)器中而不被發(fā)現(xiàn)。一個(gè)隱蔽性
22、的木馬往往會(huì)很容易暴露自己,進(jìn)而被殺毒<或殺馬>軟件,甚至用戶手工檢查來(lái),這樣將使得這類木馬變得毫無(wú)價(jià)值。因此可以說(shuō)隱蔽性是木馬的生命。 2、 自動(dòng)運(yùn)行性 木馬程序是一個(gè)系統(tǒng)啟動(dòng)即自動(dòng)運(yùn)行的程序,所以它可能嵌入在啟動(dòng)配置文件〔如win.ini、system.ini、winstart.bat等、啟動(dòng)組或注冊(cè)表中。 3、 欺騙性 木馬程序要達(dá)到長(zhǎng)期隱藏的母的,就必須借助系統(tǒng)中已有的文件以防被發(fā)現(xiàn)。木馬經(jīng)常類似以常見(jiàn)的文件名或擴(kuò)展名的名字〔如dll、win、sys,或者仿制一些不易被人區(qū)分的文件名〔如字母"i"和數(shù)字"1",字母"o"和數(shù)字"0",或者偽裝成常見(jiàn)的文件圖標(biāo)。以騙取用戶的信任。
23、 4、 頑固性 木馬頑固性就是指有效清除木馬的易程度。若一個(gè)木馬在檢查出來(lái)之后,仍然無(wú)法將其一次性有效清除,那么該馬就具有較強(qiáng)的頑固性。很多木馬程序中的功能模塊已不再是單一的文件組成,而是將文件分別存儲(chǔ)在不同的位置。這些分散的文件可以相互恢復(fù),因此難以清除。 5、 易植入性 任何木馬必須首先能夠進(jìn)入目標(biāo)機(jī)器〔植入操作,因此易入性就成為木馬有效性的先決條件。欺騙性是自木馬誕生起最常見(jiàn)的植入手段因此各種好用的小功能軟件就成為木馬常用的棲息地。利用系統(tǒng)漏洞進(jìn)行木馬入也是木馬入侵的一類重要途徑。目前木馬技術(shù)與蠕蟲(chóng)技術(shù)的結(jié)合使得木馬具類似蠕蟲(chóng)的傳播性,這也就極大提高了木馬的易植入性。 從上面
24、對(duì)木馬特性的分析,可以看到木馬的設(shè)計(jì)思想除了具有病毒和蠕蟲(chóng)的設(shè)計(jì)思想〔即主要側(cè)重于其隱蔽性和傳播性的實(shí)現(xiàn),還更多地強(qiáng)調(diào)與木馬控制端通信能力,和反清除與反檢測(cè)能力。由于有了控制端的攻擊者的指揮,因此木馬的行為特征就有了很強(qiáng)的智能化,具有很強(qiáng)的偽裝能力和欺騙性。而木馬的反清除能力,也使其極為固地和被寄生的系統(tǒng)糾合在一起。要想徹底清除木馬,系統(tǒng)也得付出慘痛代價(jià)。 2.3木馬的功能 只要在本地計(jì)算機(jī)上能操作的功能,目前的木馬基本上都能實(shí)現(xiàn)。木馬的控制端可以像本地用戶一樣操作遠(yuǎn)程計(jì)算機(jī)。木馬的功能可以概括為以下內(nèi)容[8]: 1、 竊取數(shù)據(jù) 以竊取數(shù)據(jù)為目的,本身不破壞計(jì)算機(jī)的文件和數(shù)據(jù),不妨礙系
25、統(tǒng)的正常工作, 它以系統(tǒng)使用者難以察覺(jué)的方式向外傳送數(shù)據(jù)。 2、 接受非法授權(quán)操作的指令 當(dāng)網(wǎng)絡(luò)中的木馬被激活后,它可以獲取網(wǎng)絡(luò)服務(wù)器系統(tǒng)管理員的權(quán)限,隨心所 欲地竊取密碼和各類數(shù)據(jù),逃避追蹤,同時(shí)不會(huì)留下任何痕跡。 3、 篡改文件和數(shù)據(jù) 對(duì)系統(tǒng)文件和數(shù)據(jù)有選擇地進(jìn)行篡改,使計(jì)算機(jī)處理的數(shù)據(jù)產(chǎn)生錯(cuò)誤的結(jié)果, 導(dǎo)致作出錯(cuò)誤的決策。有時(shí)也對(duì)數(shù)據(jù)進(jìn)行加密。 4、 刪除文件和數(shù)據(jù) 將系統(tǒng)中的文件和數(shù)據(jù)有選擇地刪除或者全部刪除。 5、 施放病毒 將原先埋伏在系統(tǒng)中但出于休眠狀態(tài)的病毒激活,或從外界將病毒導(dǎo)入計(jì)算機(jī) 系統(tǒng),使其感染并實(shí)施破壞。 6、 使系統(tǒng)自毀 包括改變時(shí)鐘頻率
26、、使芯片熱崩潰而損壞、造成系統(tǒng)癱瘓等。
2.4木馬的分類
木馬的分類多種多樣,根據(jù)不同的分類標(biāo)準(zhǔn),木馬的種類也有所不同。
〔一根據(jù)木馬程序?qū)τ?jì)算機(jī)的具體動(dòng)作方式,可以把現(xiàn)在的木馬程序分為以下幾類:
1、 遠(yuǎn)程控制型:遠(yuǎn)程控制型木馬是現(xiàn)今最廣泛的特洛伊木馬.這種木馬起著
程監(jiān)控的功能,使用簡(jiǎn)單,只要被控制主機(jī)聯(lián)入網(wǎng)絡(luò),并與控制端客戶程序建立網(wǎng)絡(luò)連接,控制者就能任意訪問(wèn)被控制的計(jì)算機(jī)。這種木馬在控制端的控制下可以在被控主機(jī)上做任意的事情,比如鍵盤記錄,文件上傳/下載,截取屏幕,遠(yuǎn)程執(zhí)行等。這種類型的木馬比較著名的有BO
27、發(fā)送型木馬的目的是找到所有的隱藏密碼,并且在受害 者不知道的情況下把它們發(fā)送到指定的信箱。大多數(shù)這類木馬程序不會(huì)在每次Windows系統(tǒng)重啟時(shí)都自動(dòng)加載,它們大多數(shù)使用25端口發(fā)送電子郵件。 3、 鍵盤記錄型:鍵盤記錄型木馬非常簡(jiǎn)單,它們只做一種事情,就是記錄受 害者的鍵盤敲擊,并且在LOG文件里進(jìn)行完整的記錄。這種木馬程序隨著Windows系統(tǒng)的啟動(dòng)而自動(dòng)加載,并能感知受害主機(jī)在線,且記錄每一個(gè)用戶事件,然后通過(guò)郵件或其他方式發(fā)送給控制者。 4、 毀壞型:大部分木馬程序只是竊取信息,不做破壞性的事件,但毀壞型木 馬卻以毀壞并且刪除文件為己任。它們可以自動(dòng)刪除受控主機(jī)上所有的.ini
28、或.exe文件,甚至遠(yuǎn)程格式化受害者硬盤,使得受控主機(jī)上的所有信息都受到破壞??偠灾?該類木馬目標(biāo)只有一個(gè)就是盡可能的毀壞受感染系統(tǒng),致使其癱瘓。 5、 FTP型:FTP型木馬打開(kāi)被控主機(jī)系統(tǒng)的21號(hào)端口使每一個(gè)人都可以用一 個(gè)FTP客戶端程序來(lái)不要密碼連接到受控制主機(jī)系統(tǒng),并且可以進(jìn)行最高權(quán)限的文件上傳和下載,竊取受害系統(tǒng)中的機(jī)密文件。 〔二根據(jù)木馬的網(wǎng)絡(luò)連接方向,可以分為兩類: 1、 正向連接型:發(fā)起通信的方向?yàn)榭刂贫讼虮豢刂贫税l(fā)起,這種技術(shù)被早期 的木馬廣泛采用,其缺點(diǎn)是不能透過(guò)防火墻發(fā)起連接。 2、 反向連接型:發(fā)起通信的方向?yàn)楸豢刂贫讼蚩刂贫税l(fā)起,其出現(xiàn)主要是為 了解
29、決從內(nèi)向外不能發(fā)起連接的情況的通信要求,已經(jīng)被較新的木馬廣泛采用。 〔三根據(jù)木馬使用的架構(gòu),可以分為四類: 1、 C/S架構(gòu):這種為普通的服務(wù)器、客戶端的傳統(tǒng)架構(gòu),一般我們都是采用客 戶端作控制端,服務(wù)器端作被控制端。在編程實(shí)現(xiàn)的時(shí)候,如果采用反向連接的技術(shù),那么客戶端<也就是控制端>要采用Socket編程的服務(wù)器端的方法,而服務(wù)端<也就是被控制端>采用Socket編程的客戶端的方法。 2、 B/S架構(gòu):這種架構(gòu)為普通的網(wǎng)頁(yè)木馬所采用的方式。通常在B/S架構(gòu)下, Server端被上傳了網(wǎng)頁(yè)木馬,控制端可以使用瀏覽器來(lái)訪問(wèn)相應(yīng)的網(wǎng)頁(yè),達(dá)到對(duì)Server端進(jìn)行控制的目的。 3、 C/P
30、/S架構(gòu):這里的P是Proxy的意思,也就是在這種架構(gòu)中使用了代理。 當(dāng)然,為了實(shí)現(xiàn)正常的通信代理也要由木馬作者編程實(shí)現(xiàn),才能夠?qū)崿F(xiàn)一個(gè)轉(zhuǎn)換通信。這種架構(gòu)的出現(xiàn),主要是為了適應(yīng)一個(gè)內(nèi)部網(wǎng)絡(luò)對(duì)另外一個(gè)內(nèi)部網(wǎng)絡(luò)的控制。但是,這種架構(gòu)的木馬目前還沒(méi)有發(fā)現(xiàn)。 4、 B/S/B架構(gòu):這種架構(gòu)的出現(xiàn),也是為了適應(yīng)內(nèi)部網(wǎng)絡(luò)對(duì)另外的內(nèi)部網(wǎng)絡(luò)的 控制。當(dāng)被控制端與控制端都打開(kāi)瀏覽器瀏覽這個(gè)Server上的網(wǎng)頁(yè)的時(shí)候,一端就變成了控制端,而另外一端就變成了被控制端,這種架構(gòu)的木馬已經(jīng)在國(guó)外出現(xiàn)了。 2.5木馬的發(fā)展趨勢(shì) 特洛伊木馬程序發(fā)展到今天已經(jīng)相當(dāng)完善了,但隨著計(jì)算機(jī)技術(shù)的發(fā)展,木馬仍會(huì)繼續(xù)演變并運(yùn)
31、用一些新的技術(shù)和方法使其更具有攻擊性和破壞性。從現(xiàn)在的趨勢(shì)看,木馬在未來(lái)大概會(huì)向以下方向發(fā)展: 1、 木馬將更注重自身的隱藏性 傳統(tǒng)的木馬開(kāi)發(fā)重點(diǎn)多在如何實(shí)現(xiàn)遠(yuǎn)程控制功能上,隨著對(duì)木馬危害認(rèn)識(shí)的加深和木馬查殺工具的普及,木馬程序的開(kāi)發(fā)者不得不將更多的精力放在如何更好地隱藏自己上??梢灶A(yù)見(jiàn),木馬會(huì)借鑒病毒的開(kāi)發(fā)技術(shù),很快將會(huì)出現(xiàn)能夠反查殺的變形木馬等一批在惡劣的環(huán)境下更具生存能力的新型木馬。另外,針對(duì)依靠監(jiān)聽(tīng)網(wǎng)絡(luò)通訊來(lái)發(fā)現(xiàn)木馬蹤跡的工具,木馬也會(huì)使用諸如隱蔽信道之類的手段更好地隱藏自身。 2、 更注重代碼模塊化的設(shè)計(jì) 目前,程序設(shè)計(jì)的潮流是模塊化設(shè)計(jì),木馬程序現(xiàn)在也具有這種概念。某些木馬
32、程序可以在控制的過(guò)程中,通過(guò)傳送較復(fù)雜的模塊庫(kù)到被控端以達(dá)到自我升級(jí)的目的。 3、 即時(shí)通知 目前,網(wǎng)絡(luò)中很多機(jī)器使用的是動(dòng)態(tài)IP,木馬程序要想控制目標(biāo)就比較麻煩,因此,未來(lái)的木馬程序在這方面會(huì)進(jìn)一步完善。會(huì)給木馬增添即時(shí)通知功能,隨時(shí)向黑客匯報(bào)木馬受害者的IP地址。 4、 可能會(huì)出現(xiàn)跨平臺(tái)的木馬 現(xiàn)今木馬一般都是基于某種硬件平臺(tái)或者操作系統(tǒng)開(kāi)發(fā)的,在各種操作系統(tǒng)之間并不具有通用性,對(duì)使用者要求較高。隨著木馬技術(shù)的成熟,木馬的操作將更為簡(jiǎn)化,攻擊將更為智能化,甚至可能會(huì)出現(xiàn)可跨平臺(tái)工作的木馬。 5、 木馬與蠕蟲(chóng)會(huì)相互融合 蠕蟲(chóng)和木馬是兩種不同功能的程序。蠕蟲(chóng)具有自傳播性,所以一般將
33、其歸為病毒。然而最近己經(jīng)開(kāi)始出現(xiàn)具有蠕蟲(chóng)特征的木馬程序,這是個(gè)危險(xiǎn)的信號(hào)。我們應(yīng)該警惕危害更大的此類木馬蠕蟲(chóng),這可能是今后一段時(shí)問(wèn)木馬發(fā)展的一個(gè)重要趨勢(shì)。
6、 未來(lái)木馬將更注重底層的通訊編程,如針對(duì)網(wǎng)卡和Modem的通訊編程,這
樣可以逃過(guò)防火墻的監(jiān)視和過(guò)濾[9][10][11]。
.
.
第三章 木馬工作原理及關(guān)鍵技術(shù)
木馬程序一般分為客戶端
34、。 典型的木馬工作原理是:當(dāng)服務(wù)器端在目標(biāo)計(jì)算機(jī)上被執(zhí)行后,木馬打開(kāi)一個(gè) 默認(rèn)的端口進(jìn)行監(jiān)聽(tīng),當(dāng)客戶機(jī)向服務(wù)端提出連接請(qǐng)求,服務(wù)器上的相應(yīng)程序就會(huì)自動(dòng)運(yùn)行來(lái)應(yīng)答客戶機(jī)的請(qǐng)求,服務(wù)器端程序與客戶端建立連接后,由客戶端發(fā)出指令,服務(wù)器在計(jì)算機(jī)中執(zhí)行這些指令,并將數(shù)據(jù)傳送到客戶端,以達(dá)到控制主機(jī)的目的。 木馬程序的工作過(guò)程包含了木馬程序的偽裝、隱藏、啟動(dòng)、通信以及攻擊等。 3.1 木馬的偽裝 特洛伊木馬程序因其功能肯定不被人們所歡迎。因此,它們要想完成其不可告 人的"使命",就必須先將自身隱藏好。就目前我們對(duì)已知特洛伊木馬程序的了解,特洛伊木馬程序的偽裝技術(shù)主要有以下幾種方法[12]:
35、 1、 修改圖標(biāo) 特洛伊木馬服務(wù)端程序常常故意偽裝成了各種網(wǎng)頁(yè)或圖片等圖標(biāo)。用戶往往 誤認(rèn)為這些程序?qū)ο到y(tǒng)是無(wú)害的,因此很容易誘使其打開(kāi)并將其運(yùn)行。 2、 捆綁于正常文件中 這種偽裝手段有些類似于傳統(tǒng)的計(jì)算機(jī)病毒程序。攻擊者常常將特洛伊木馬程 序常捆綁到一個(gè)正常程序上。這樣,一旦用戶運(yùn)行了這個(gè)正常程序運(yùn)行,身藏其中的特洛伊木馬程序就會(huì)在用戶毫無(wú)察覺(jué)的情況下,偷偷地進(jìn)入了系統(tǒng)運(yùn)行。被捆綁的文件一般是可執(zhí)行文件,例如,EXE、COM等類型的文件。 3、 顯示出錯(cuò)信息 一些特洛伊木馬程序的設(shè)計(jì)者意識(shí)到,如果用戶打開(kāi)一個(gè)文件而沒(méi)有任何反應(yīng), 用戶很可能認(rèn)這就是一個(gè)特洛伊木馬程序。所以,
36、一些特洛伊木馬程序會(huì)故意顯示一些出錯(cuò)顯示。當(dāng)被攻擊者打開(kāi)特洛伊木馬程序時(shí),往往會(huì)彈出一個(gè)錯(cuò)誤提示框<當(dāng)然這是假的,只是在迷惑用戶,使其誤認(rèn)為這是一個(gè)正常、已被損壞的、不能輕易刪除的文件>。錯(cuò)誤內(nèi)容可自由定義,大多會(huì)定制成一些諸如"文件已破壞,無(wú)法打開(kāi)!"之類的信息,當(dāng)被害用戶信以為真時(shí),特洛伊木馬程序就悄悄侵入了系統(tǒng)中。 4、 自我銷毀 當(dāng)用戶打開(kāi)含有特洛伊木馬程序的郵件或其它文件后,其中的特洛伊木馬程序 就會(huì)將自己拷貝到Windows的系統(tǒng)文件夾中<即C:\windows或C:\windows\system目錄下>。但是,如果特洛伊木馬程序只是如此簡(jiǎn)單的拷貝,就會(huì)造成源特洛伊木馬程序文
37、件和系統(tǒng)文件夾中的特洛伊木馬程序文件長(zhǎng)度的大小是一樣的。那么,中了特洛伊木馬程序的受害者只要檢查一下近來(lái)收到的信件和下載的軟件,并從中找到源特洛伊木馬程序文件,然后根據(jù)源特洛伊木馬程序文件的大小去系統(tǒng)文件夾找相同大小的文件,判斷一下哪個(gè)是特洛伊木馬程序文件并將其刪除就行了。特洛伊木馬程序的此種偽裝方式恰恰就是在于彌補(bǔ)自身的這種缺陷。因此,具備這種偽裝功能的特洛伊木馬程序會(huì)在將自身安裝在被害系統(tǒng)后,將源特洛伊木馬程序文件自動(dòng)銷毀。這樣,被害用戶就很難找到特洛伊木馬程序的來(lái)源了,在沒(méi)有查殺特洛伊木馬程序工具幫助下,就很難刪除木馬了。 5、 更改文件名 特洛伊木馬程序的編寫者一定要在每次傳播時(shí),
38、用一個(gè)與以往不同的文件名進(jìn)行偽裝。不過(guò),大多特洛伊木馬程序會(huì)選用一個(gè)與正常的系統(tǒng)文件名十分近似的文件名來(lái)故意誤導(dǎo)用戶,使用戶誤認(rèn)為是正常的系統(tǒng)文件。例如,有的特洛伊木馬程序會(huì)把名字改為window.exe。 3.2木馬的隱藏 木馬的隱蔽性是木馬能否長(zhǎng)期存活的關(guān)鍵,為了達(dá)到隱蔽目的,木馬開(kāi)發(fā)者總 是采用各種先進(jìn)技術(shù)來(lái)實(shí)現(xiàn)木馬的隱藏。木馬隱藏的主要方式[12]: 1、 在任務(wù)欄里隱藏 這是最基本的隱藏方式。要實(shí)現(xiàn)在任務(wù)欄中隱藏的功能,在編程時(shí)是很容易實(shí) 現(xiàn)的。以VB為例,在VB中,只要把form的Visible屬性設(shè)置為False,ShowlnTaskBar設(shè)為 False,程序就不會(huì)
39、出現(xiàn)在任務(wù)欄里。 2、 隱藏端口 一臺(tái)機(jī)器有65536個(gè)端口,不難發(fā)現(xiàn),大多數(shù)木馬使用的端口在1024以上,而 且呈越來(lái)越大的趨勢(shì):當(dāng)然也有占用1024以下端口的木馬,但這些端口是常用端口,占用這些端口可能會(huì)造成系統(tǒng)不正常,木馬容易暴露。現(xiàn)在已經(jīng)有一種方法可以實(shí)現(xiàn)端口的使用差異比較法對(duì)木馬程序進(jìn)行防殺的技術(shù)探討復(fù)用,即一個(gè)端口既可以實(shí)現(xiàn)正常功能,又可以用于木馬通信,采用這種技術(shù)的木馬特意把自己的端口設(shè)成常用端口<如:80、23等端口>,達(dá)到更好的隱蔽效果。 3、 在任務(wù)管理器里隱藏 查看正在運(yùn)行的進(jìn)程的最簡(jiǎn)單方法就是按下 Crtl+Alt+Del時(shí)出現(xiàn)的任務(wù)管理 器。在WIN98中
40、木馬把自己設(shè)為"系統(tǒng)服務(wù)"就可以輕松地實(shí)現(xiàn)在任務(wù)管理里隱藏;在WINNT、WIN2000和WINXP中木馬開(kāi)發(fā)人員采用了一種更好的隱藏方式:即把木馬寫成動(dòng)態(tài)鏈接庫(kù)文件
41、接接入被植入木馬的主機(jī);或者通過(guò)間接通信,如通過(guò)電子郵件的方式,木馬將目標(biāo)主機(jī)的敏感信息傳給攻擊者。目前大部分木馬都是采用TCP連接方式使攻擊者控制主機(jī)的,這些木馬在植入主機(jī)后一般會(huì)在 1024以上不易發(fā)現(xiàn)的高端口上駐留;也有些木馬采用端口復(fù)用技術(shù),不打開(kāi)新的通信端口,而選擇一些常用的端口<如80>實(shí)現(xiàn)通信,在收到正常的請(qǐng)求仍然把它交與Web服務(wù)器處理,只有在收到一些特殊約定的數(shù)據(jù)包后,才調(diào)用木馬?,F(xiàn)在有些木馬采用ICMP協(xié)議轉(zhuǎn)輸,通過(guò)IMCP數(shù)據(jù)包進(jìn)行通信控制,這樣除非分析數(shù)據(jù)包里面的內(nèi)容,否則很難發(fā)現(xiàn)木馬連接。還有些木馬只有收到特定的數(shù)據(jù)包才開(kāi)始通信,平時(shí)處于休眠狀態(tài)。 5、 隱藏啟動(dòng)方
42、式 木馬啟動(dòng)的方式多種多樣,但殊途同歸,都為了達(dá)到一個(gè)目的:使木馬的服務(wù) 端程序自動(dòng)運(yùn)行。常見(jiàn)木馬啟動(dòng)的方式有:加載程序到啟動(dòng)組;將程序啟動(dòng)路徑寫到注冊(cè)表的 [HKEY_LOCAL_ CHINE\Software\Microsoft\Windows\CurrentVersion\Run] <以及Runonce等>:修改Boot.ini:通過(guò)注冊(cè)表中的輸入法鍵值真接掛接啟動(dòng);修改Explorer.exe啟動(dòng)參數(shù)以及在win.ini和System.ini中的load節(jié)中添加啟動(dòng)項(xiàng);在Autoexe.bat中添加程序等;或采用了文件關(guān)聯(lián)實(shí)現(xiàn)木馬的啟動(dòng)<如:冰河木馬>;也可利用DLL木馬替換系統(tǒng)
43、原有的動(dòng)態(tài)連接庫(kù),使系統(tǒng)在裝載這些連接庫(kù)時(shí)啟動(dòng)木馬<如:著名的GINA木馬>;還可以采用與其他可執(zhí)行文件捆綁的方式,在運(yùn)行捆綁文件時(shí)在后臺(tái)運(yùn)行。但隨著計(jì)算機(jī)技術(shù)的發(fā)展,還會(huì)有更多、更隱蔽的啟動(dòng)方式出現(xiàn)。 6、 隱藏傳播方式 與病毒不同,木馬大多沒(méi)有主動(dòng)傳播的功能。因此,如何將木馬成功植入目標(biāo) 主機(jī)是木馬成功運(yùn)行的關(guān)鍵。目前大多數(shù)木馬采用的傳播途徑仍然電子郵件,但近幾年,隨著木馬的流行,用戶對(duì)木馬的認(rèn)識(shí)不斷提高,大多用戶都清楚一些關(guān)于木馬和如何防治的基本知識(shí),這種方法己經(jīng)很難湊效。隨著網(wǎng)站互動(dòng)化進(jìn)程的不斷進(jìn)步,越來(lái)越多的東西可以成為木馬的傳播介質(zhì),Javascript、VBScript、A
44、ctiveX幾乎每一個(gè)新功能都會(huì)導(dǎo)致木馬的快速進(jìn)化。再一個(gè)就是,利用系統(tǒng)漏洞進(jìn)行木馬傳播,隨著技術(shù)的不斷發(fā)展,這種方法將逐步成為木馬植入的主流。如通過(guò)在郵件內(nèi)容內(nèi)嵌WSH
45、接庫(kù)
46、序也和其它的計(jì)算機(jī)軟件或程序一樣,也必須把自己從硬盤或網(wǎng)上下載 下來(lái),調(diào)入系統(tǒng)中運(yùn)行,從而實(shí)際其功能??傮w上說(shuō)來(lái),特洛伊木馬程序主要有以下幾種啟動(dòng)方式[14]: 1、 隨正常的程序啟動(dòng)而啟動(dòng) 一些特洛伊木馬程序?yàn)殡[藏自己,將自己與其它一些正常應(yīng)用程序捆綁在一起。 一旦用戶運(yùn)行被捆綁文件,特洛伊木馬程序就會(huì)進(jìn)入系統(tǒng)運(yùn)行。甚至一些木馬程序?qū)⒆陨砝夁M(jìn)入系統(tǒng)文件。這樣每次系統(tǒng)啟動(dòng),特洛伊木馬程序也會(huì)隨著啟動(dòng)。 2、 隱藏在配置文件〔Autoexec.bat和Config.sys中 在Windows系統(tǒng)中,Config.sys文件主要是設(shè)置一些啟動(dòng)參數(shù)和加載驅(qū)動(dòng)程序。 而Autoexec
47、.bat是系統(tǒng)開(kāi)機(jī)自動(dòng)運(yùn)行的批處理文件。在特洛伊木馬程序出現(xiàn)的前期,一些狡猾的特洛伊木馬程序知道,一般用戶平時(shí)使用的是圖形化界面的操作系統(tǒng),對(duì)于那些重要的系統(tǒng)配置文件幾乎是一竅不通,故而也不曾親身接觸過(guò)。這樣,這些系統(tǒng)配置文件恰好成為了這些特洛伊木馬程序一處絕好的藏身之地。而且特洛伊木馬程序還利用配置文件的特殊功能,很容易就能使自己在系統(tǒng)中運(yùn)行、發(fā)作,從而偷窺、監(jiān)視被害者的秘密或控制被害用戶的計(jì)算機(jī)系統(tǒng)。 3、 潛伏在Win.ini中 在windows系統(tǒng)中,Win.ini文件中提供了WIN 16程序需要的字體設(shè)置、文 件關(guān)聯(lián)等信息,主要完成GUI〔圖形用戶接口的相應(yīng)的環(huán)境配置。特洛伊木
48、馬程序要想達(dá)到控制或者監(jiān)視計(jì)算機(jī)的目的,就必須要運(yùn)行,然而又不指望用戶自運(yùn)行特洛伊木馬程序。所以,特洛伊木馬程序就必須在系統(tǒng)中找一個(gè)既安全能在統(tǒng)啟動(dòng)時(shí)自動(dòng)運(yùn)行的地方。而在Windows系統(tǒng)中,Win.ini文件是特洛伊木馬程又一經(jīng)常隱藏的地方。在Win.ini文件的[windows]字段中,它有兩行啟動(dòng)命令,一行是"load=",另一行是"run="。在一般情況下,這兩個(gè)字段的"="后面是空白的。如果它們有后跟程序,比如說(shuō),run=c:\windows\files.exe或load=c:\windows\files.exe。這個(gè)file.exe就很可能是特洛伊木馬程序了。 4、 在Syste
49、m.ini中藏身
在windows系統(tǒng)中,System.ini是WIN 16的系統(tǒng)硬件配置文件,WIN 9X又為
其增加了一些新的設(shè)置,以保證WIN 16和WIN 32相互協(xié)調(diào),使WIN 16可以調(diào)用VXD〔虛擬設(shè)備驅(qū)動(dòng)程序,這一點(diǎn)在Win提供的系統(tǒng)調(diào)試參數(shù)中已充分體現(xiàn)。另外GUI〔圖形用戶接口的外殼程序
50、stem.ini也是特洛伊木馬最喜歡隱蔽的地方之一。在這個(gè)文件中,有一個(gè)[boot]字段,這個(gè)字段也是特洛伊木馬程序經(jīng)常用來(lái)自啟動(dòng)的地方。另外,在System.ini中,[386Enh]字段中的"driver=路徑\程序名",也有可能被特洛伊木馬程序所利用。再有,在System.ini中的[mic]、[drivers]、[drivers32]三個(gè)字段也是起著加載驅(qū)動(dòng)程序的作用,因此也是增添特洛伊木馬程序的好場(chǎng)所。 5、 偽裝成普通文件 相對(duì)而言,這種偽裝方式出現(xiàn)的比較晚,不過(guò)現(xiàn)在卻是十分流行,對(duì)于不熟悉 操作系統(tǒng)的普通用戶來(lái)說(shuō),很容易上當(dāng)。這個(gè)偽裝方式的具體方法就是把可執(zhí)行文件偽裝成圖片
51、或文本—在程序中把圖標(biāo)改成Windows的默認(rèn)圖片圖標(biāo),再把文件名改為*.bmp.exe。由于Windows系統(tǒng)默認(rèn)設(shè)置是"不顯示已知的文件后綴名",文件將會(huì)顯示為*.bmp。用戶一不注意點(diǎn)了這個(gè)圖標(biāo),那么特洛伊木馬程序就進(jìn)入系統(tǒng)運(yùn)行。 6、 內(nèi)置到注冊(cè)表中 在Windows中,注冊(cè)表由兩個(gè)文件組成:System.dat和User.dat,保存在windows所在的文件夾中。它們都是由二進(jìn)制數(shù)據(jù)組成。System.dat包含系統(tǒng)硬件和軟件的設(shè)置,User.dat保存著與用戶有關(guān)的信息,例如,資源管理器的設(shè)置,顏色方案以及網(wǎng)絡(luò)口令等等。其中,注冊(cè)表中的HKEY_LOCAL_MACHINE\S
52、oftware\Microsoft\Windows\CurrentVersion下所有以"run"開(kāi)頭的鍵值;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion下所有以"run"開(kāi)頭的鍵值;HKEY-USERS\.Default\Software\Microsoft\Windows\CurrentVersion下所有以"run"開(kāi)頭的鍵值都是特洛伊木馬程序自動(dòng)運(yùn)行的好地方。 7、 隱形于啟動(dòng)組中 有些特洛伊木馬程序比較特殊,它們并不在乎能否長(zhǎng)期隱藏自己,而是只能運(yùn) 行一次就足夠達(dá)到其目的了。因此它就將自己簡(jiǎn)單的寫入了程序
53、中的啟動(dòng)項(xiàng)目組中,其對(duì)應(yīng)的文件夾為:C:\windows\startmenu\programs\startup,在注冊(cè)表中的位置:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ShellFolders Startup="C:\windows\startmenu\programs\startup"。 8、 隱蔽在Winstart.bat中 Winstart.bat也像Autoexec.bat一樣,是一個(gè)能自動(dòng)被Windows加載運(yùn)行的 文件。它多數(shù)情況下為應(yīng)用程序及Windows自動(dòng)生成,在執(zhí)行了W
54、in并加載了多數(shù)驅(qū)動(dòng)程序之后開(kāi)始執(zhí)行。由于Autoexec.bat的功能可以由Winstart.bat代替完成,因此特洛伊木馬程序完全可以像在Autoexec.bat中那樣被加載運(yùn)行。 9、 設(shè)置在超級(jí)連接中 隨著互聯(lián)網(wǎng)的不斷普及與技術(shù)的不斷發(fā)展,上網(wǎng)人數(shù)不斷增加,各種網(wǎng)站大量 的出現(xiàn)。因此,很多特洛伊木馬程序就充分運(yùn)用了人們喜愛(ài)上網(wǎng)的習(xí)慣,特洛伊木馬程序的制作者在網(wǎng)頁(yè)上放置各種惡意代碼,并使用各種方法引誘用戶點(diǎn)擊,然后在用戶的系統(tǒng)中運(yùn)行特洛伊木馬程序,達(dá)到其侵入的目的。 3.4遠(yuǎn)程控制技術(shù) 遠(yuǎn)程計(jì)算機(jī)控制指的是基于一定的物理網(wǎng)絡(luò)<例如INTERNET網(wǎng)或者企業(yè)、校園的局域網(wǎng)絡(luò)>,通
55、過(guò)一定的網(wǎng)絡(luò)協(xié)議<例如TCP/IP協(xié)議>,對(duì)分布在網(wǎng)絡(luò)上的計(jì)算機(jī)實(shí)現(xiàn)遠(yuǎn)程控制、協(xié)同工作。這種控制是通過(guò)對(duì)基于網(wǎng)絡(luò)通訊的標(biāo)準(zhǔn)通訊協(xié)議和對(duì)目標(biāo)機(jī)的操作系統(tǒng)響應(yīng)方式的準(zhǔn)確控制來(lái)實(shí)現(xiàn)的。
IP協(xié)議
IP協(xié)議是TCP/IP協(xié)議族中最為核心的協(xié)議。所有的TCP、UDP、ICMP、IGMP數(shù)據(jù)報(bào)都以口數(shù)據(jù)報(bào)格式傳輸。
IP提供不可靠、無(wú)連接的數(shù)據(jù)報(bào)傳送服務(wù)[15]。
不可靠
56、的可靠性必須由上層來(lái)提供<如TCP>。
無(wú)連接
57、t的電腦連接了起來(lái)。 TCP協(xié)議 TCP協(xié)議位于傳輸層,它使用網(wǎng)絡(luò)層<口>為用戶提供一種面向連接的、可靠的字節(jié)流服務(wù)[16]。 TCP是在RFC793中正式定義的。隨著時(shí)間的推移,檢測(cè)出了各種各樣的錯(cuò)誤和不一致,并且在一些領(lǐng)域?qū)CP的要求也有所變化。這些說(shuō)明和一些錯(cuò)誤的解決方法詳細(xì)地記載在RFCll22中。在RFCl323中給出了對(duì)TCP的一些功能擴(kuò)展。 面向連接意味著兩個(gè)使用TCP的應(yīng)用<通常是一個(gè)客戶和一個(gè)服務(wù)器>在彼此交換數(shù)據(jù)之前必須先建立一個(gè)TCP連接:這一過(guò)程和打很相似,先撥號(hào)振鈴,等待對(duì)方摘機(jī)說(shuō)"喂",然后才說(shuō)明是誰(shuí)。 在一個(gè)TCP連接中,僅有兩方進(jìn)行彼此通信。廣播和多
58、播不能用于TCP。
TCP通過(guò)下列方式來(lái)提供可靠性:
1、 應(yīng)用數(shù)據(jù)被分割成TCP認(rèn)為最適合發(fā)送的數(shù)據(jù)塊。這和UDP完全不同。由
TCP傳遞給口的信息單位稱為報(bào)文段或者段
59、到此報(bào)文段<希望發(fā)端超時(shí)并重發(fā)>。 5、 既然TCP報(bào)文段作為口數(shù)據(jù)報(bào)來(lái)傳輸,而口數(shù)據(jù)報(bào)的到達(dá)可能會(huì)失序,因此 TCP報(bào)文段的到達(dá)也可能會(huì)失序。如果必要,TCP將對(duì)收到的數(shù)據(jù)進(jìn)行重新排序,將收到的數(shù)據(jù)以正確的順序交給應(yīng)用層。 6、 既然口數(shù)據(jù)報(bào)會(huì)發(fā)生重復(fù),TCP的接收端必須丟棄重復(fù)的數(shù)據(jù)。 7、 TCP還能提供流量控制。TCP連接的每一方都有固定大小的緩沖空間。TCP 的接收端只允許另一端發(fā)送接受端緩沖區(qū)所能接納的數(shù)據(jù)。這將防止較快主機(jī)致使較慢主機(jī)的緩沖區(qū)溢出。 另外,TCP對(duì)字節(jié)流的內(nèi)容不作任何解釋。TCP不知道傳輸?shù)臄?shù)據(jù)字節(jié)流是二進(jìn)制數(shù)據(jù),還是ASCII字符、EBCDIC字符或
60、者其他類型數(shù)據(jù)。對(duì)字節(jié)流的解釋由TCP連接雙方的應(yīng)用層解釋。
要實(shí)現(xiàn)TCP協(xié)議的功能,需要完成的機(jī)制包括:連接管理<如何建立和關(guān)閉連接>、滑動(dòng)窗口機(jī)制、擁塞控制機(jī)制、定時(shí)器管理。
3.4.3套接字
61、界的數(shù)據(jù)流服務(wù), 其傳輸數(shù)據(jù)有序、無(wú)重復(fù),適用于處理大量數(shù)據(jù);面向連接,通信雙方進(jìn)行數(shù)據(jù)交換之前,必須建立一條路徑來(lái)確定雙方通信的路由,保證雙方都是活動(dòng)的、可彼此響應(yīng)的。 2、 數(shù)據(jù)報(bào)套接字:數(shù)據(jù)報(bào)套接字是無(wú)連接的,直接建立在IP層上,可支持雙向 數(shù)據(jù)流動(dòng),但不能保證數(shù)據(jù)傳輸?shù)目煽啃?、有序性及無(wú)重復(fù)性[17]。 3.5木馬的通信 木馬通常需要利用一定的通信方式與控制端進(jìn)行信息交流<如接收控制者的指令、向控制端傳遞信息等>。系統(tǒng)和應(yīng)用程序一般采用TCP/UDP通信端口的形式與控制端進(jìn)行通信。木馬一般也是利用TCP/UDP端口與控制端進(jìn)行通信。通常情況下,木馬進(jìn)行通信時(shí)直接打開(kāi)一個(gè)或幾個(gè)
62、屬于自己的TCP/UDP端口[18]。早期的木馬在系統(tǒng)中運(yùn)行后都是打開(kāi)固定的端口,后來(lái)的木馬在植入時(shí)可隨機(jī)設(shè)定通信時(shí)打開(kāi)的端口,具有了一定的隨機(jī)性??墒峭ㄟ^(guò)端口掃描很容易發(fā)現(xiàn)這些可疑的通信端口。事實(shí)上,目前的許多木馬檢測(cè)軟件正是通過(guò)掃描本地和遠(yuǎn)程主機(jī)系統(tǒng)中打開(kāi)的已知木馬端口進(jìn)行木馬檢測(cè)的。木馬通信端口成為暴露木馬形蹤一個(gè)很不安全的因素。為此采用新技術(shù)的木馬對(duì)其通信形式進(jìn)行了隱蔽和變通,使其很難被端口掃描發(fā)現(xiàn)。木馬為隱蔽通信形式所采用手段有:端口復(fù)用、反彈端口、潛伏技術(shù)[19]。 端口復(fù)用技術(shù) 在winsock的實(shí)現(xiàn)中,對(duì)于服務(wù)器的綁定是可以多重綁定的,在確定多重綁定 使用誰(shuí)的時(shí)候,根據(jù)一
63、條原則是誰(shuí)的指定最明確則將包遞交給誰(shuí),而且沒(méi)有權(quán)限之分,也就是說(shuō)低級(jí)權(quán)限的用戶是可以重綁定在高級(jí)權(quán)限如服務(wù)啟動(dòng)的端口上的,這是非常重大的一個(gè)安全隱患[20]。 1、 一個(gè)木馬綁定到一個(gè)已經(jīng)合法存在的端口上進(jìn)行端口的隱藏,他通過(guò)自己 特定的包格式判斷是不是自己的包,如果是自己處理,如果不是通過(guò)127.0.0.1的地址交給真正的服務(wù)器應(yīng)用進(jìn)行處理。 2、 一個(gè)木馬可以在低權(quán)限用戶上綁定高權(quán)限的服務(wù)應(yīng)用的端口,進(jìn)行該處 理信息的嗅探,本來(lái)在一個(gè)主機(jī)上監(jiān)聽(tīng)一個(gè)Socket的通訊需要具備非常高的權(quán)限要求,但其實(shí)利用Socket重綁定,可以輕易的監(jiān)聽(tīng)具備這種SOCKET編程漏洞的通訊,而無(wú)須采用什
64、么掛接,鉤子或低層的驅(qū)動(dòng)技術(shù)<這些都需要具備管理員權(quán)限才能達(dá)到>[21]。 3、 針對(duì)一些的特殊應(yīng)用,可以發(fā)起中間人攻擊,從低權(quán)限用戶上獲得信息或 事實(shí)欺騙,如在guest權(quán)限下攔截telnet服務(wù)器的23端口,如果是采用NTLM加密認(rèn)證,使用差異比較法對(duì)木馬程序進(jìn)行防殺的技術(shù)探討雖然你無(wú)法通過(guò)嗅探直接獲取密碼,但一旦有admin用戶通過(guò)你登陸以后,你的應(yīng)用就完全可以發(fā)起中間人攻擊,扮演這個(gè)登陸的用戶通過(guò)Scoket發(fā)送高權(quán)限的命令,到達(dá)入侵的目的[22]。 4、 對(duì)于構(gòu)建的WEB服務(wù)器,入侵者只需要獲得低級(jí)的權(quán)限,就可以完全達(dá)到 更改網(wǎng)頁(yè)目的,很簡(jiǎn)單,扮演你的服務(wù)器給予連接請(qǐng)求以其他
65、信息的應(yīng)答,甚至是基于電子商務(wù)上的欺騙,獲取非法的數(shù)據(jù)。其實(shí),MS自己的很多服務(wù)的Socket編程都存在這樣的問(wèn)題,telnet,ftp,的服務(wù)實(shí)現(xiàn)全部都可以利用這種方法進(jìn)行攻擊,在低權(quán)限用戶上實(shí)現(xiàn)對(duì)SYSTEM應(yīng)用的截聽(tīng)。包括WZK+SP3的IIS也都一樣,那么如果你已經(jīng)可以以低權(quán)限用戶入侵或木馬植入的話,而且對(duì)方又開(kāi)啟了這些服務(wù)的話,那就不妨一試。并且估計(jì)還有很多第三方的服務(wù)也大多存在這個(gè)漏洞[23]。 反彈端口 反彈端口就是木馬針對(duì)防火墻所采用的技術(shù)[23]。因?yàn)榉阑饓梢员O(jiān)視主機(jī)的進(jìn) 出信息,故常常用來(lái)監(jiān)視系統(tǒng)和外界的聯(lián)系。防火墻對(duì)于向內(nèi)的鏈接往往會(huì)進(jìn)行非常嚴(yán)格的過(guò)濾,對(duì)于向外的
66、連接卻疏于防范。反彈端口木馬就是正是利用了防火墻的這個(gè)不足。與一般的木馬相反,反彈端口木馬使用主動(dòng)端口,控制端使用被動(dòng)端口。木馬定時(shí)監(jiān)測(cè)控制端的存在,發(fā)現(xiàn)控制端上線,立即主動(dòng)連接控制端打開(kāi)的被動(dòng)端口。為了隱蔽起見(jiàn),控制端的被動(dòng)端口一般開(kāi)在TCP80。這樣,即使用戶使用端口掃描軟件檢查自己的端口,發(fā)現(xiàn)的也是類似TCPUSERIP:1026CONTROLLERIP:80ESTABLISHED這種情況,用戶可能誤認(rèn)為是自己在瀏覽網(wǎng)頁(yè)。這種反彈端口的木馬常常會(huì)采用固定IP的第三方存儲(chǔ)空間來(lái)進(jìn)行控制端IP地址的傳遞。例如:事先雙方約定好一個(gè)個(gè)人主頁(yè),如果文件內(nèi)容為空,就什么都不做;如果有內(nèi)容就按照文本文件中的數(shù)據(jù)計(jì)算出控制端的IP地址和端口,反彈一個(gè)TCP連接回去。這樣每次控制者上線只需要FTP一個(gè)".ini"文件就可以告訴木馬服務(wù)端自己的位置,這個(gè)IP地址是通常是經(jīng)過(guò)加密的,除了木馬和控制端,其他的人就算拿到了也沒(méi)有意義。 潛伏技術(shù) 所謂潛伏技術(shù)就是指利用TCP/IP協(xié)議族中的其它協(xié)議而不通過(guò)TCP/UDP協(xié) 議來(lái)進(jìn)行通信。由于不利用TCP/UDP協(xié)議,不會(huì)打開(kāi)通信端口,所以不會(huì)被一些端
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識(shí)競(jìng)賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫(kù)試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫(kù)試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫(kù)試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識(shí)測(cè)試題庫(kù)及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測(cè)工種技術(shù)比武題庫(kù)含解析
- 1 礦山應(yīng)急救援安全知識(shí)競(jìng)賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案