-
當(dāng)前位置:首頁(yè) > 創(chuàng)意學(xué)院 > 營(yíng)銷推廣 > 專題列表 > 正文
木馬的設(shè)計(jì)者是誰(shuí)
大家好!今天讓小編來(lái)大家介紹下關(guān)于木馬的設(shè)計(jì)者是誰(shuí)的問(wèn)題,以下是小編對(duì)此問(wèn)題的歸納整理,讓我們一起來(lái)看看吧。
創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,相關(guān)業(yè)務(wù)請(qǐng)撥打電話:175-8598-2043,或添加微信:1454722008
本文目錄:
一、木馬病毒的由來(lái),為什么叫木馬?誰(shuí)知道???
特洛伊木馬(以下簡(jiǎn)稱木馬),英文叫做“Trojan house”,其名稱取自希臘神話的特洛伊木馬記。
它是一種基于遠(yuǎn)程控制的黑客工具,具有隱蔽性和非授權(quán)性的特點(diǎn)。
所謂隱蔽性是指木馬的設(shè)計(jì)者為了防止木馬被發(fā)現(xiàn),會(huì)采用多種手段隱藏木馬,這樣服務(wù)端即使發(fā)現(xiàn)感染了木馬,由于不能確定其具體位置,往往只能望“馬”興嘆。
所謂非授權(quán)性是指一旦控制端與服務(wù)端連接后,控制端將享有服務(wù)端的大部分操作權(quán)限,包括修改文件,修改注冊(cè)表,控制鼠標(biāo),鍵盤(pán)等等,而這些權(quán)力并不是服務(wù)端賦予的,而是通過(guò)木馬程序竊取的。
從木馬的發(fā)展來(lái)看,基本上可以分為兩個(gè)階段。
最初網(wǎng)絡(luò)還處于以UNIX平臺(tái)為主的時(shí)期,木馬就產(chǎn)生了,當(dāng)時(shí)的木馬程序的功能相對(duì)簡(jiǎn)單,往往是將一段程序嵌入到系統(tǒng)文件中,用跳轉(zhuǎn)指令來(lái)執(zhí)行一些木馬的功能,在這個(gè)時(shí)期木馬的設(shè)計(jì)者和使用者大都是些技術(shù)人員,必須具備相當(dāng)?shù)木W(wǎng)絡(luò)和編程知識(shí)。
而后隨著WINDOWS平臺(tái)的日益普及,一些基于圖形操作的木馬程序出現(xiàn)了,用戶界面的改善,使使用者不用懂太多的專業(yè)知識(shí)就可以熟練的操作木馬,相對(duì)的木馬入侵事件也頻繁出現(xiàn),而且由于這個(gè)時(shí)期木馬的功能已日趨完善,因此對(duì)服務(wù)端的破壞也更大了。
所以所木馬發(fā)展到今天,已經(jīng)無(wú)所不用其極,一旦被木馬控制,你的電腦將毫無(wú)秘密可言。
鑒于木馬的巨大危害性,我們將分原理篇,防御與反擊篇,資料篇三部分來(lái)詳細(xì)介紹木馬,希望大家對(duì)特洛伊木馬這種攻擊手段有一個(gè)透徹的了解。
原 理 篇
基礎(chǔ)知識(shí)
在介紹木馬的原理之前有一些木馬構(gòu)成的基礎(chǔ)知識(shí)我們要事先加以說(shuō)明,因?yàn)橄旅嬗泻芏嗟胤綍?huì)提到這些內(nèi)容。
一個(gè)完整的木馬系統(tǒng)由硬件部分,軟件部分和具體連接部分組成。
(1)硬件部分:建立木馬連接所必須的硬件實(shí)體。 控制端:對(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)程控制所必須的軟件程序。 控制端程序:控制端用以遠(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á)控制端程序或木馬 程序。
木馬原理
用木馬這種黑客工具進(jìn)行網(wǎng)絡(luò)入侵,從過(guò)程上看大致可分為六步(具體可見(jiàn)下圖),下面我們就按這六步來(lái)詳細(xì)闡述木馬的攻擊原理。
一.配置木馬
一般來(lái)說(shuō)一個(gè)設(shè)計(jì)成熟的木馬都有木馬配置程序,從具體的配置內(nèi)容看,主要是為了實(shí)現(xiàn)以下兩方 面功能:
(1)木馬偽裝:木馬配置程序?yàn)榱嗽诜?wù)端盡可能的好的隱藏木馬,會(huì)采用多種偽裝手段,如修改圖標(biāo) ,捆綁文件,定制端口,自我銷毀等,我們將在“傳播木馬”這一節(jié)中詳細(xì)介紹。
(2)信息反饋:木馬配置程序?qū)⒕托畔⒎答伒姆绞交虻刂愤M(jìn)行設(shè)置,如設(shè)置信息反饋的郵件地址,IRC號(hào) ,ICO號(hào)等等,具體的我們將在“信息反饋”這一節(jié)中詳細(xì)介紹。
二.傳播木馬
(1)傳播方式:
木馬的傳播方式主要有兩種:一種是通過(guò)E-MAIL,控制端將木馬程序以附件的形式夾在郵件中發(fā)送出 去, 收信人只要打開(kāi)附件系統(tǒng)就會(huì)感染木馬;另一種是軟件下載,一些非正規(guī)的網(wǎng)站以提供軟件下載為 名義, 將木馬捆綁在軟件安裝程序上,下載后,只要一運(yùn)行這些程序,木馬就會(huì)自動(dòng)安裝。
(2)偽裝方式:
鑒于木馬的危害性,很多人對(duì)木馬知識(shí)還是有一定了解的,這對(duì)木馬的傳播起了一定的抑制作用,這 是木馬設(shè)計(jì)者所不愿見(jiàn)到的,因此他們開(kāi)發(fā)了多種功能來(lái)偽裝木馬,以達(dá)到降低用戶警覺(jué),欺騙用戶的目 的。
(一)修改圖標(biāo)
當(dāng)你在E-MAIL的附件中看到這個(gè)圖標(biāo)時(shí),是否會(huì)認(rèn)為這是個(gè)文本文件呢?但是我不得不告 訴你,這也有可能是個(gè)木馬程序,現(xiàn)在 已經(jīng)有木馬可以將木馬服務(wù)端程序的圖標(biāo)改成HTML,TXT, ZIP等各種文件的圖標(biāo),這有相當(dāng)大的迷 惑性,但是目前提供這種功能的木馬還不多見(jiàn),并且這種 偽裝也不是無(wú)懈可擊的,所以不必整天提 心吊膽,疑神疑鬼的。
(二)捆綁文件
這種偽裝手段是將木馬捆綁到一個(gè)安裝程序上,當(dāng)安裝程序運(yùn)行時(shí),木馬在用戶毫無(wú)察覺(jué)的 情況下 ,偷偷的進(jìn)入了系統(tǒng)。至于被捆綁的文件一般是可執(zhí)行文件(即EXE,COM一類的文件)。
(三)出錯(cuò)顯示
有一定木馬知識(shí)的人都知道,如果打開(kāi)一個(gè)文件,沒(méi)有任何反應(yīng),這很可能就是個(gè)木馬程序, 木馬的 設(shè)計(jì)者也意識(shí)到了這個(gè)缺陷,所以已經(jīng)有木馬提供了一個(gè)叫做出錯(cuò)顯示的功能。當(dāng)服務(wù) 端用戶打開(kāi)木 馬程序時(shí),會(huì)彈出一個(gè)如下圖所示的錯(cuò)誤提示框(這當(dāng)然是假的),錯(cuò)誤內(nèi)容可自由 定義,大多會(huì)定制成 一些諸如“文件已破壞,無(wú)法打開(kāi)的!”之類的信息,當(dāng)服務(wù)端用戶信以 為真時(shí),木馬卻悄悄侵入了 系統(tǒng)。
(四)定制端口
很多老式的木馬端口都是固定的,這給判斷是否感染了木馬帶來(lái)了方便,只要查一下特定的 端口就 知道感染了什么木馬,所以現(xiàn)在很多新式的木馬都加入了定制端口的功能,控制端用戶可 以在1024---65535之間任選一個(gè)端口作為木馬端口(一般不選1024以下的端口),這樣就給判斷 所感染木馬類型帶 來(lái)了麻煩。
(五)自我銷毀
這項(xiàng)功能是為了彌補(bǔ)木馬的一個(gè)缺陷。我們知道當(dāng)服務(wù)端用戶打開(kāi)含有木馬的文件后,木馬 會(huì)將自己拷貝到WINDOWS的系統(tǒng)文件夾中(C:WINDOWS或C:WINDOWSSYSTEM目錄下),一般來(lái)說(shuō) 原木馬文件 和系統(tǒng)文件夾中的木馬文件的大小是一樣的(捆綁文件的木馬除外),那么中了木馬 的朋友只要在近來(lái) 收到的信件和下載的軟件中找到原木馬文件,然后根據(jù)原木馬的大小去系統(tǒng) 文件夾找相同大小的文件, 判斷一下哪個(gè)是木馬就行了。而木馬的自我銷毀功能是指安裝完木 馬后,原木馬文件將自動(dòng)銷毀,這 樣服務(wù)端用戶就很難找到木馬的來(lái)源,在沒(méi)有查殺木馬的工 具幫助下,就很難刪除木馬了。
(六)木馬更名
安裝到系統(tǒng)文件夾中的木馬的文件名一般是固定的,那么只要根據(jù)一些查殺木馬的文章,按 圖索驥在系統(tǒng)文件夾查找特定的文件,就可以斷定中了什么木馬。所以現(xiàn)在有很多木馬都允許控 制端用戶自由定制安裝后的木馬文件名,這樣很難判斷所感染的木馬類型了。
三.運(yùn)行木馬
服務(wù)端用戶運(yùn)行木馬或捆綁木馬的程序后,木馬就會(huì)自動(dòng)進(jìn)行安裝。首先將自身拷貝到WINDOWS的 系統(tǒng)文件夾中(C:WINDOWS或C:WINDOWSSYSTEM目錄下),然后在注冊(cè)表,啟動(dòng)組,非啟動(dòng)組中設(shè)置好木馬 的觸發(fā)條件 ,這樣木馬的安裝就完成了。安裝后就可以啟動(dòng)木馬了,具體過(guò)程見(jiàn)下圖:
(1)由觸發(fā)條件激活木馬
觸發(fā)條件是指啟動(dòng)木馬的條件,大致出現(xiàn)在下面八個(gè)地方:
1.注冊(cè)表:打開(kāi)HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersion下的五個(gè)以Run 和RunServices主鍵,在其中尋找可能是啟動(dòng)木馬的鍵值。
2.WIN.INI:C:WINDOWS目錄下有一個(gè)配置文件win.ini,用文本方式打開(kāi),在[windows]字段中有啟動(dòng) 命令 load=和run=,在一般情況下是空白的,如果有啟動(dòng)程序,可能是木馬。 3.SYSTEM.INI:C:WINDOWS目錄下有個(gè)配置文件system.ini,用文本方式打開(kāi),在[386Enh],[mic], [drivers32]中有命令行,在其中尋找木馬的啟動(dòng)命令。
4.Autoexec.bat和Config.sys:在C盤(pán)根目錄下的這兩個(gè)文件也可以啟動(dòng)木馬。但這種加載方式一般都 需要控制端用戶與服務(wù)端建立連接后,將已添加木馬啟動(dòng)命令的同名 文件上傳 到服務(wù)端覆蓋這兩個(gè)文件才行。
5.*.INI:即應(yīng)用程序的啟動(dòng)配置文件,控制端利用這些文件能啟動(dòng)程序的特點(diǎn),將制作好的帶有木馬 啟動(dòng)命令的同名文件上傳到服務(wù)端覆蓋這同名文件,這樣就可以達(dá)到啟動(dòng)木馬的目的了。
6.注冊(cè)表:打開(kāi)HKEY_CLASSES_ROOT文件類型\shellopencommand主鍵,查看其鍵值。舉個(gè)例子,國(guó)產(chǎn) 木馬“冰河”就是修改HKEY_CLASSES_ROOT xtfileshellopencommand下的鍵值,將“C :WINDOWS NOTEPAD.EXE %1”該為“C:WINDOWSSYSTEMSYXXXPLR.EXE %1”,這時(shí)你雙 擊一個(gè)TXT文件 后,原本應(yīng)用NOTEPAD打開(kāi)文件的,現(xiàn)在卻變成啟動(dòng)木馬程序了。還要說(shuō)明 的是不光是TXT文件 ,通過(guò)修改HTML,EXE,ZIP等文件的啟動(dòng)命令的鍵值都可以啟動(dòng)木馬 ,不同之處只在于“文件類型”這個(gè)主鍵的差別,TXT是txtfile,ZIP是WINZIP,大家可以 試著去找一下。
7.捆綁文件:實(shí)現(xiàn)這種觸發(fā)條件首先要控制端和服務(wù)端已通過(guò)木馬建立連接,然后控制端用戶用工具 軟件將木馬文件和某一應(yīng)用程序捆綁在一起,然后上傳到服務(wù)端覆蓋原文件,這樣即使 木馬被刪 除了,只要運(yùn)行捆綁了木馬的應(yīng)用程序,木馬又會(huì)被安裝上去了。
8.啟動(dòng)菜單:在“開(kāi)始---程序---啟動(dòng)”選項(xiàng)下也可能有木馬的觸發(fā)條件。
(2)木馬運(yùn)行過(guò)程
木馬被激活后,進(jìn)入內(nèi)存,并開(kāi)啟事先定義的木馬端口,準(zhǔn)備與控制端建立連接。這時(shí)服務(wù)端用 戶可以在MS-DOS方式下,鍵入NETSTAT -AN查看端口狀態(tài),一般個(gè)人電腦在脫機(jī)狀態(tài)下是不會(huì)有端口 開(kāi)放的,如果有端口開(kāi)放,你就要注意是否感染木馬了。下面是電腦感染木馬后,用NETSTAT命令查 看端口的兩個(gè)實(shí)例:
其中①是服務(wù)端與控制端建立連接時(shí)的顯示狀態(tài),②是服務(wù)端與控制端還未建立連接時(shí)的顯示狀態(tài)。
在上網(wǎng)過(guò)程中要下載軟件,發(fā)送信件,網(wǎng)上聊天等必然打開(kāi)一些端口,下面是一些常用的端口:
(1)1---1024之間的端口:這些端口叫保留端口,是專給一些對(duì)外通訊的程序用的,如FTP使用21, SMTP使用25,POP3使用110等。只有很少木馬會(huì)用保留端口作為木馬端口 的。
(2)1025以上的連續(xù)端口:在上網(wǎng)瀏覽網(wǎng)站時(shí),瀏覽器會(huì)打開(kāi)多個(gè)連續(xù)的端口下載文字,圖片到本地 硬盤(pán)上,這些端口都是1025以上的連續(xù)端口。
(3)4000端口:這是OICQ的通訊端口。
(4)6667端口:這是IRC的通訊端口。 除上述的端口基本可以排除在外,如發(fā)現(xiàn)還有其它端口打開(kāi),尤其是數(shù)值比較大的端口,那就要懷疑 是否感染了木馬,當(dāng)然如果木馬有定制端口的功能,那任何端口都有可能是木馬端口。
四.信息泄露:
一般來(lái)說(shuō),設(shè)計(jì)成熟的木馬都有一個(gè)信息反饋機(jī)制。所謂信息反饋機(jī)制是指木馬成功安裝后會(huì)收集 一些服務(wù)端的軟硬件信息,并通過(guò)E-MAIL,IRC或ICO的方式告知控制端用戶。下圖是一個(gè)典型的信息反 饋郵件。
從這封郵件中我們可以知道服務(wù)端的一些軟硬件信息,包括使用的操作系統(tǒng),系統(tǒng)目錄,硬盤(pán)分區(qū)況, 系統(tǒng)口令等,在這些信息中,最重要的是服務(wù)端IP,因?yàn)橹挥械玫竭@個(gè)參數(shù),控制端才能與服務(wù)端建立 連接,具體的連接方法我們會(huì)在下一節(jié)中講解。
五.建立連接:
這一節(jié)我們講解一下木馬連接是怎樣建立的 。一個(gè)木馬連接的建立首先必須滿足兩個(gè)條件:一是 服務(wù)端已安裝了木馬程序;二是控制端,服務(wù)端都要在線 。在此基礎(chǔ)上控制端可以通過(guò)木馬端口與服 務(wù)端建立連接。為了便于說(shuō)明我們采用圖示的形式來(lái)講解。
如上圖所示A機(jī)為控制端,B機(jī)為服務(wù)端,對(duì)于A機(jī)來(lái)說(shuō)要與B機(jī)建立連接必須知道B機(jī)的木馬端口和IP地 址,由于木馬端口是A機(jī)事先設(shè)定的,為已知項(xiàng),所以最重要的是如何獲得B機(jī)的IP地址。獲得B機(jī)的IP 地址的方法主要有兩種:信息反饋和IP掃描。對(duì)于前一種已在上一節(jié)中已經(jīng)介紹過(guò)了,不再贅述,我們 重點(diǎn)來(lái)介紹IP掃描,因?yàn)锽機(jī)裝有木馬程序,所以它的木馬端口7626是處于開(kāi)放狀態(tài)的,所以現(xiàn)在A機(jī)只 要掃描IP地址段中7626端口開(kāi)放的主機(jī)就行了,例如圖中B機(jī)的IP地址是202.102.47.56,當(dāng)A機(jī)掃描到 這個(gè)IP時(shí)發(fā)現(xiàn)它的7626端口是開(kāi)放的,那么這個(gè)IP就會(huì)被添加到列表中,這時(shí)A機(jī)就可以通過(guò)木馬的控 制端程序向B機(jī)發(fā)出連接信號(hào),B機(jī)中的木馬程序收到信號(hào)后立即作出響應(yīng),當(dāng)A機(jī)收到響應(yīng)的信號(hào)后, 開(kāi)啟一個(gè)隨即端口1031與B機(jī)的木馬端口7626建立連接,到這時(shí)一個(gè)木馬連接才算真正建立。值得一提 的要掃描整個(gè)IP地址段顯然費(fèi)時(shí)費(fèi)力,一般來(lái)說(shuō)控制端都是先通過(guò)信息反饋獲得服務(wù)端的IP地址,由于 撥號(hào)上網(wǎng)的IP是動(dòng)態(tài)的,即用戶每次上網(wǎng)的IP都是不同的,但是這個(gè)IP是在一定范圍內(nèi)變動(dòng)的,如圖中 B機(jī)的IP是202.102.47.56,那么B機(jī)上網(wǎng)IP的變動(dòng)范圍是在202.102.000.000---202.102.255.255,所以 每次控制端只要搜索這個(gè)IP地址段就可以找到B機(jī)了。
六.遠(yuǎn)程控制:
木馬連接建立后,控制端端口和木馬端口之間將會(huì)出現(xiàn)一條通道,見(jiàn)下圖
控制端上的控制端程序可藉這條通道與服務(wù)端上的木馬程序取得聯(lián)系,并通過(guò)木馬程序?qū)Ψ?wù)端進(jìn)行遠(yuǎn) 程控制。下面我們就介紹一下控制端具體能享有哪些控制權(quán)限,這遠(yuǎn)比你想象的要大。
(1)竊取密碼:一切以明文的形式,*形式或緩存在CACHE中的密碼都能被木馬偵測(cè)到,此外很多木馬還 提供有擊鍵記錄功能,它將會(huì)記錄服務(wù)端每次敲擊鍵盤(pán)的動(dòng)作,所以一旦有木馬入侵, 密碼將很容易被竊取。
(2)文件操作:控制端可藉由遠(yuǎn)程控制對(duì)服務(wù)端上的文件進(jìn)行刪除,新建,修改,上傳,下載,運(yùn)行,更改屬 性等一系列操作,基本涵蓋了WINDOWS平臺(tái)上所有的文件操作功能。
(3)修改注冊(cè)表:控制端可任意修改服務(wù)端注冊(cè)表,包括刪除,新建或修改主鍵,子鍵,鍵值。有了這 項(xiàng)功能控制端就可以禁止服務(wù)端軟驅(qū),光驅(qū)的使用,鎖住服務(wù)端的注冊(cè)表,將服務(wù)端 上木馬的觸發(fā)條件設(shè)置得更隱蔽的一系列高級(jí)操作。
(4)系統(tǒng)操作:這項(xiàng)內(nèi)容包括重啟或關(guān)閉服務(wù)端操作系統(tǒng),斷開(kāi)服務(wù)端網(wǎng)絡(luò)連接,控制服務(wù)端的鼠標(biāo), 鍵盤(pán),監(jiān)視服務(wù)端桌面操作,查看服務(wù)端進(jìn)程等,控制端甚至可以隨時(shí)給服務(wù)端發(fā)送信 息,想象一下,當(dāng)服務(wù)端的桌面上突然跳出一段話,不嚇人一跳才怪
木馬和病毒都是一種人為的程序,都屬于電腦病毒,為什么木馬要單獨(dú)提出來(lái)說(shuō)內(nèi)?大家都知道以前的電腦病毒的作用,其實(shí)完全就是為了搞破壞,破壞電腦里的資料數(shù)據(jù),除了破壞之外其它無(wú)非就是有些病毒制造者為了達(dá)到某些目的而進(jìn)行的威懾和敲詐勒索的作用,或?yàn)榱遂乓约旱募夹g(shù). "木馬"不一樣,木馬的作用是赤裸裸的偷偷監(jiān)視別人和盜竊別人密碼,數(shù)據(jù)等,如盜竊管理員密碼-子網(wǎng)密碼搞破壞,或者好玩,偷竊上網(wǎng)密碼用于它用,游戲帳號(hào),股票帳號(hào),甚至網(wǎng)上銀行帳戶等.達(dá)到偷窺別人隱私和得到經(jīng)濟(jì)利益的目的.所以木馬的作用比早期的電腦病毒更加有用.更能夠直接達(dá)到使用者的目的!導(dǎo)致許多別有用心的程序開(kāi)發(fā)者大量的編寫(xiě)這類帶有偷竊和監(jiān)視別人電腦的侵入性程序,這就是目前網(wǎng)上大量木馬泛濫成災(zāi)的原因.鑒于木馬的這些巨大危害性和它與早期病毒的作用性質(zhì)不一樣,所以木馬雖然屬于病毒中的一類,但是要單獨(dú)的從病毒類型中間剝離出來(lái).獨(dú)立的稱之為"木馬"程序.
一般來(lái)說(shuō)一種殺毒軟件程序,它的木馬專殺程序能夠查殺某某木馬的話,那么它自己的普通殺毒程序也當(dāng)然能夠殺掉這種木馬,因?yàn)樵谀抉R泛濫的今天,為木馬單獨(dú)設(shè)計(jì)一個(gè)專門(mén)的木馬查殺工具,那是能提高該殺毒軟件的產(chǎn)品檔次的,對(duì)其聲譽(yù)也大大的有益,實(shí)際上一般的普通殺毒軟件里都包含了對(duì)木馬的查殺功能.如果現(xiàn)在大家說(shuō)某某殺毒軟件沒(méi)有木馬專殺的程序,那這家殺毒軟件廠商自己也好象有點(diǎn)過(guò)意不去,即使它的普通殺毒軟件里當(dāng)然的有殺除木馬的功能.
還有一點(diǎn)就是,把查殺木馬程序單獨(dú)剝離出來(lái),可以提高查殺效率,現(xiàn)在很多殺毒軟件里的木馬專殺程序只對(duì)木馬進(jìn)行查殺,不去檢查普通病毒庫(kù)里的病毒代碼,也就是說(shuō)當(dāng)用戶運(yùn)行木馬專殺程序的時(shí)候,程序只調(diào)用木馬代碼庫(kù)里的數(shù)據(jù),而不調(diào)用病毒代碼庫(kù)里的數(shù)據(jù),大大提高木馬查殺速度.我們知道查殺普通病毒的速度是比較慢的,因?yàn)楝F(xiàn)在有太多太多的病毒.每個(gè)文件要經(jīng)過(guò)幾萬(wàn)條木馬代碼的檢驗(yàn),然后再加上已知的差不多有近10萬(wàn)個(gè)病毒代碼的檢驗(yàn),那速度豈不是很慢了.省去普通病毒代碼檢驗(yàn),是不是就提高了效率,提高了速度內(nèi)? 也就是說(shuō)現(xiàn)在好多殺毒軟件自帶的木馬專殺程序只查殺木馬而一般不去查殺病毒,但是它自身的普通病毒查殺程序既查殺病毒又查殺木馬!
二、木馬的來(lái)源
計(jì)算機(jī)木馬的名稱來(lái)源于古希臘的特洛伊木馬的故事,希臘人圍攻特洛伊城,很多年不能得手后想出了木馬的計(jì)策,他們把士兵藏匿于巨大的木馬中。在敵人將其作為戰(zhàn)利品拖入城內(nèi)后,木馬內(nèi)的士兵爬出來(lái),與城外的部隊(duì)里應(yīng)外合而攻下了特洛伊城。
計(jì)算機(jī)木馬的設(shè)計(jì)者套用了同樣的思路,把木馬程序插入正常的軟件、郵件等宿主中。在受害者執(zhí)行這些軟件的時(shí)候,木馬就可以悄悄地進(jìn)入系統(tǒng),向黑客開(kāi)放進(jìn)入計(jì)算機(jī)的途徑。
如果你的機(jī)器有時(shí)死機(jī),有時(shí)又重新啟動(dòng);在沒(méi)有執(zhí)行什么操作的時(shí)候,卻在拼命讀寫(xiě)硬盤(pán);系統(tǒng)莫明其妙地對(duì)軟驅(qū)進(jìn)行搜索;沒(méi)有運(yùn)行大的程序,而系統(tǒng)的速度越來(lái)越慢,系統(tǒng)資源占用很多;用任務(wù)管理器調(diào)出任務(wù)表,發(fā)現(xiàn)有多個(gè)名字相同的程序在運(yùn)行,而且可能會(huì)隨時(shí)間的增加而增多,這時(shí)你就應(yīng)該查一查你的系統(tǒng),是不是有木馬在你的計(jì)算機(jī)里安家落戶了。
木馬的產(chǎn)生與發(fā)展
與病毒一樣,木馬也是從Unix平臺(tái)上產(chǎn)生出來(lái),在Windows操作系統(tǒng)上“發(fā)揚(yáng)光大”的。最早的Unix木馬與現(xiàn)在流行的BO、冰河等有很大的不同,它是運(yùn)行在服務(wù)器后臺(tái)的一個(gè)小程序,偽裝成Unix的login登錄過(guò)程。那時(shí)候計(jì)算機(jī)還屬于很珍貴的寶物,不是個(gè)人能夠買(mǎi)得起的,某個(gè)大學(xué)、研究機(jī)構(gòu)可能會(huì)有一臺(tái)計(jì)算機(jī),大家都從終端上用自己的帳號(hào)來(lái)登錄連接到它上面。那么我們就可以看一下,用戶向一臺(tái)中了木馬的計(jì)算機(jī)上登錄時(shí)會(huì)發(fā)生什么事情:用戶登錄的時(shí)候,木馬劫持登錄過(guò)程,向用戶提供一個(gè)與正常登錄界面一樣的輸入窗口,騙用戶輸入。在得到用戶名和口令之后,木馬就會(huì)把它存放起來(lái),然后把真正的登錄進(jìn)程調(diào)出來(lái)。這時(shí)用戶看到登錄界面第二次出現(xiàn)了,這與通常的密碼錯(cuò)誤的現(xiàn)象是一樣的,于是用戶再次輸入信息而進(jìn)入系統(tǒng)。整個(gè)過(guò)程沒(méi)有人發(fā)覺(jué),而密碼已經(jīng)保存在硬盤(pán)的某個(gè)小角落里了,黑客隔一段時(shí)間就可以訪問(wèn)一下服務(wù)器,看看有多少收獲。
隨著木馬開(kāi)發(fā)者們孜孜不倦的努力,隨后又出現(xiàn)了ftp型、破壞型、信息發(fā)送型等等的接班人。ftp型打開(kāi)所在計(jì)算機(jī)的端口,使他人可以跳過(guò)密碼上傳或下載;信息發(fā)送型木馬找到系統(tǒng)中的重要信息如密碼等,用e-mail發(fā)送到指定的信箱中;破壞型可以刪除文件甚至格式化硬盤(pán)(真是損人不利已)。不過(guò)現(xiàn)在最流行的還是遠(yuǎn)程控制型的,我們要在這里詳細(xì)介紹。下面咱們掀起她的蓋頭來(lái),分析一下這木馬的行動(dòng)原理。
遠(yuǎn)程控制型木馬的運(yùn)行原理
這是目前最受廣大黑帽子歡迎的一類木馬。以冰河為例,在一臺(tái)中了招的機(jī)器上,除了正常的服務(wù)(如FTP等)之外,冰河的服務(wù)器端,就是安裝在受害機(jī)器上的木馬,會(huì)秘密地開(kāi)放出一個(gè)默認(rèn)的TCP 7626端口,讓黑客連接實(shí)現(xiàn)遠(yuǎn)程控制。這與正規(guī)的PC-Anywhere、Terminal Service等商業(yè)遠(yuǎn)程管理軟件的效果是一樣的。同樣可以進(jìn)行遠(yuǎn)程桌面的直接控制,冰河服務(wù)器端的大小是260多K,而商業(yè)軟件是一、二十兆。這種黑客軟件做得也真是夠精巧的了。當(dāng)然這也是木馬成功進(jìn)入他人系統(tǒng)的必要條件,太大的木馬很容易被別人發(fā)覺(jué)。
木馬是怎樣植入計(jì)算機(jī)的?
木馬首先要偽裝自己。一般有兩種隱藏手段,第一種是把自己偽裝成一般的軟件。我在做安全工程的時(shí)候就碰到一個(gè)程序員中了木馬,他在論壇上得到一個(gè)小程序,拿下來(lái)執(zhí)行了一下,但系統(tǒng)報(bào)告了內(nèi)部錯(cuò)誤,程序退出了。他認(rèn)為是程序沒(méi)有開(kāi)發(fā)好,就沒(méi)有在意。誰(shuí)知有一天自己的QQ密碼怎么也進(jìn)不去,他才覺(jué)得不對(duì)了。我們后來(lái)檢查那個(gè)程序,果然是個(gè)木馬偽裝成的,在木馬代碼的前段會(huì)完成自我安裝與隱藏的過(guò)程,最后顯示一個(gè)錯(cuò)誤信息,騙過(guò)用戶。
第二種是把自己綁定在正常的程序上面。老到的黑客可以通過(guò)編程把一個(gè)正版winzip安裝程序和木馬編譯成一個(gè)新的文件,它即可以一邊進(jìn)行winzip程序的正常安裝,一邊神不知鬼不覺(jué)地把木馬種下去。這種木馬有可能被細(xì)心的用戶發(fā)覺(jué),因?yàn)檫@個(gè)winzip程序在綁定了木馬之后尺寸就會(huì)變大。
偽裝之后,木馬就可以通過(guò)郵件發(fā)給被攻擊者了,或者是放在網(wǎng)站上供人下載。黑客還會(huì)為它們加上一些動(dòng)人的話語(yǔ)來(lái)誘惑別人,象“最新笑笑小電影!”、“cuteFTP4.0完全解密版?。?!”(一點(diǎn)不騙人,安裝了這個(gè)cuteFTP之后,你的機(jī)器就被“完全解密”了)。那些喜歡免費(fèi)盜版的朋友們也要小心了。(寫(xiě)到這里突然想起一句名言:這世上沒(méi)有比免費(fèi)更貴的了......)
三、木馬是什么?
什么是木馬?
特洛伊木馬(以下簡(jiǎn)稱木馬),英文叫做“Trojan house”,其名稱取自希臘神話的特洛伊木馬記。
它是一種基于遠(yuǎn)程控制的黑客工具,具有隱蔽性和非授權(quán)性的特點(diǎn)。
所謂隱蔽性是指木馬的設(shè)計(jì)者為了防止木馬被發(fā)現(xiàn),會(huì)采用多種手段隱藏木馬,這樣服務(wù)端即使發(fā)現(xiàn)感染了木馬,由于不能確定其具體位置,往往只能望“馬”興嘆。
所謂非授權(quán)性是指一旦控制端與服務(wù)端連接后,控制端將享有服務(wù)端的大部分操作權(quán)限,包括修改文件,修改注冊(cè)表,控制鼠標(biāo),鍵盤(pán)等等,而這些權(quán)力并不是服務(wù)端賦予的,而是通過(guò)木馬程序竊取的。
從木馬的發(fā)展來(lái)看,基本上可以分為兩個(gè)階段。
最初網(wǎng)絡(luò)還處于以UNIX平臺(tái)為主的時(shí)期,木馬就產(chǎn)生了,當(dāng)時(shí)的木馬程序的功能相對(duì)簡(jiǎn)單,往往是將一段程序嵌入到系統(tǒng)文件中,用跳轉(zhuǎn)指令來(lái)執(zhí)行一些木馬的功能,在這個(gè)時(shí)期木馬的設(shè)計(jì)者和使用者大都是些技術(shù)人員,必須具備相當(dāng)?shù)木W(wǎng)絡(luò)和編程知識(shí)。
而后隨著WINDOWS平臺(tái)的日益普及,一些基于圖形操作的木馬程序出現(xiàn)了,用戶界面的改善,使使用者不用懂太多的專業(yè)知識(shí)就可以熟練的操作木馬,相對(duì)的木馬入侵事件也頻繁出現(xiàn),而且由于這個(gè)時(shí)期木馬的功能已日趨完善,因此對(duì)服務(wù)端的破壞也更大了。
所以所木馬發(fā)展到今天,已經(jīng)無(wú)所不用其極,一旦被木馬控制,你的電腦將毫無(wú)秘密可言。
參考資料:http://bbs.51ww.com/365000/ShowPost.aspx
回答者:完顏康康 - 探花 十一級(jí) 9-18 12:40
--------------------------------------------------------------------------------
DLL 木馬揭秘
相信經(jīng)常玩木馬的朋友們都會(huì)知道一些木馬的特性,也會(huì)有自己最喜愛(ài)的木馬,不過(guò),很多朋友依然不知道近年興起的“DLL木馬”為何物。什么是“DLL木馬”呢?它與一般的木馬有什么不同?
一、從DLL技術(shù)說(shuō)起
要了解DLL木馬,就必須知道這個(gè)“DLL”是什么意思,所以,讓我們追溯到幾年前,DOS系統(tǒng)大行其道的日子里。在那時(shí)候,寫(xiě)程序是一件繁瑣的事情,因?yàn)槊總€(gè)程序的代碼都是獨(dú)立的,有時(shí)候?yàn)榱藢?shí)現(xiàn)一個(gè)功能,就要為此寫(xiě)很多代碼,后來(lái)隨著編程技術(shù)發(fā)展,程序員們把很多常用的代碼集合(通用代碼)放進(jìn)一個(gè)獨(dú)立的文件里,并把這個(gè)文件稱為“庫(kù)”(Library),在寫(xiě)程序的時(shí)候,把這個(gè)庫(kù)文件加入編譯器,就能使用這個(gè)庫(kù)包含的所有功能而不必自己再去寫(xiě)一大堆代碼,這個(gè)技術(shù)被稱為“靜態(tài)鏈接”(Static Link)。靜態(tài)鏈接技術(shù)讓勞累的程序員松了口氣,一切似乎都很美好??墒鞘聦?shí)證明,美好的事物不會(huì)存在太久,因?yàn)殪o態(tài)鏈接就像一個(gè)粗魯?shù)耐其N員,不管你想不想要宣傳單,他都全部塞到你的手上來(lái)。寫(xiě)一個(gè)程序只想用到一個(gè)庫(kù)文件包含的某個(gè)圖形效果,就因?yàn)檫@個(gè),你不得不把這個(gè)庫(kù)文件攜帶的所有的圖形效果都加入程序,留著它們當(dāng)花瓶擺設(shè),這倒沒(méi)什么重要,可是這些花瓶卻把道路都阻塞了——靜態(tài)鏈接技術(shù)讓最終的程序成了大塊頭,因?yàn)榫幾g器把整個(gè)庫(kù)文件也算進(jìn)去了。
時(shí)代在發(fā)展,靜態(tài)鏈接技術(shù)由于天生的弊端,不能滿足程序員的愿望,人們開(kāi)始尋找一種更好的方法來(lái)解決代碼重復(fù)的難題。后來(lái),Windows系統(tǒng)出現(xiàn)了,時(shí)代的分水嶺終于出現(xiàn)。Windows系統(tǒng)使用一種新的鏈接技術(shù),這種被稱為“動(dòng)態(tài)鏈接”(Dynamic Link)的新技術(shù)同樣也是使用庫(kù)文件,微軟稱它們?yōu)椤皠?dòng)態(tài)鏈接庫(kù)”——Dynamic Link Library,DLL的名字就是這樣來(lái)的。動(dòng)態(tài)鏈接本身和靜態(tài)鏈接沒(méi)什么區(qū)別,也是把通用代碼寫(xiě)進(jìn)一些獨(dú)立文件里,但是在編譯方面,微軟繞了個(gè)圈子,并沒(méi)有采取把庫(kù)文件加進(jìn)程序的方法,而是把庫(kù)文件做成已經(jīng)編譯好的程序文件,給它們開(kāi)個(gè)交換數(shù)據(jù)的接口,程序員寫(xiě)程序的時(shí)候,一旦要使用某個(gè)庫(kù)文件的一個(gè)功能函數(shù),系統(tǒng)就把這個(gè)庫(kù)文件調(diào)入內(nèi)存,連接上這個(gè)程序占有的任務(wù)進(jìn)程,然后執(zhí)行程序要用的功能函數(shù),并把結(jié)果返回給程序顯示出來(lái),在我們看來(lái),就像是程序自己帶有的功能一樣。完成需要的功能后,這個(gè)DLL停止運(yùn)行,整個(gè)調(diào)用過(guò)程結(jié)束。微軟讓這些庫(kù)文件能被多個(gè)程序調(diào)用,實(shí)現(xiàn)了比較完美的共享,程序員無(wú)論要寫(xiě)什么程序,只要在代碼里加入對(duì)相關(guān)DLL的調(diào)用聲明就能使用它的全部功能。最重要的是,DLL絕對(duì)不會(huì)讓你多拿一個(gè)花瓶,你要什么它就給你什么,你不要的東西它才不會(huì)給你。這樣,寫(xiě)出來(lái)的程序就不能再攜帶一大堆垃圾了——絕對(duì)不會(huì)讓你把吃剩的東西帶回家,否則罰款,這是自助餐。
DLL技術(shù)的誕生,使編寫(xiě)程序變成一件簡(jiǎn)單的事情,Windows為我們提供了幾千個(gè)函數(shù)接口,足以滿足大多數(shù)程序員的需要。而且,Windows系統(tǒng)自身就是由幾千個(gè)DLL文件組成,這些DLL相互扶持,組成了強(qiáng)大的Windows系統(tǒng)。如果Windows使用靜態(tài)鏈接技術(shù),它的體積會(huì)有多大?我不敢想。
二、應(yīng)用程序接口API
上面我們對(duì)DLL技術(shù)做了個(gè)大概分析,在里面我提到了“接口”,這又是什么呢?因?yàn)镈LL不能像靜態(tài)庫(kù)文件那樣塞進(jìn)程序里,所以,如何讓程序知道實(shí)現(xiàn)功能的代碼和文件成了問(wèn)題,微軟就為DLL技術(shù)做了標(biāo)準(zhǔn)規(guī)范,讓一個(gè)DLL文件像奶酪一樣開(kāi)了許多小洞,每個(gè)洞口都注明里面存放的功能的名字,程序只要根據(jù)標(biāo)準(zhǔn)規(guī)范找到相關(guān)洞口就可以取得它要的美味了,這個(gè)洞口就是“應(yīng)用程序接口”(Application Programming Interface),每個(gè)DLL帶的接口都不相同,盡最大可能的減少了代碼的重復(fù)。用Steven的一句話:API就是一個(gè)工具箱,你根據(jù)需要取出螺絲刀、扳手,用完后再把它們放回原處。在Windows里,最基本的3個(gè)DLL文件是kernel32.dll、user32.dll、gdi32.dll。它們共同構(gòu)成了基本的系統(tǒng)框架。
三、DLL與木馬
DLL是編譯好的代碼,與一般程序沒(méi)什么大差別,只是它不能獨(dú)立運(yùn)行,需要程序調(diào)用。那么,DLL與木馬能扯上什么關(guān)系呢?如果你學(xué)過(guò)編程并且寫(xiě)過(guò)DLL,就會(huì)發(fā)現(xiàn),其實(shí)DLL的代碼和其他程序幾乎沒(méi)什么兩樣,僅僅是接口和啟動(dòng)模式不同,只要改動(dòng)一下代碼入口,DLL就變成一個(gè)獨(dú)立的程序了。當(dāng)然,DLL文件是沒(méi)有程序邏輯的,這里并不是說(shuō)DLL=EXE,不過(guò),依然可以把DLL看做缺少了main入口的EXE,DLL帶的各個(gè)功能函數(shù)可以看作一個(gè)程序的幾個(gè)函數(shù)模塊。DLL木馬就是把一個(gè)實(shí)現(xiàn)了木馬功能的代碼,加上一些特殊代碼寫(xiě)成DLL文件,導(dǎo)出相關(guān)的API,在別人看來(lái),這只是一個(gè)普通的DLL,但是這個(gè)DLL卻攜帶了完整的木馬功能,這就是DLL木馬的概念。也許有人會(huì)問(wèn),既然同樣的代碼就可以實(shí)現(xiàn)木馬功能,那么直接做程序就可以,為什么還要多此一舉寫(xiě)成DLL呢?這是為了隱藏,因?yàn)镈LL運(yùn)行時(shí)是直接掛在調(diào)用它的程序的進(jìn)程里的,并不會(huì)另外產(chǎn)生進(jìn)程,所以相對(duì)于傳統(tǒng)EXE木馬來(lái)說(shuō),它很難被查到。
四、DLL的運(yùn)行
雖然DLL不能自己運(yùn)行,可是Windows在加載DLL的時(shí)候,需要一個(gè)入口函數(shù),就如同EXE的main一樣,否則系統(tǒng)無(wú)法引用DLL。所以根據(jù)編寫(xiě)規(guī)范,Windows必須查找并執(zhí)行DLL里的一個(gè)函數(shù)DllMain作為加載DLL的依據(jù),這個(gè)函數(shù)不作為API導(dǎo)出,而是內(nèi)部函數(shù)。DllMain函數(shù)使DLL得以保留在內(nèi)存里,有的DLL里面沒(méi)有DllMain函數(shù),可是依然能使用,這是因?yàn)閃indows在找不到DllMain的時(shí)候,會(huì)從其它運(yùn)行庫(kù)中找一個(gè)不做任何操作的缺省DllMain函數(shù)啟動(dòng)這個(gè)DLL使它能被載入,并不是說(shuō)DLL可以放棄DllMain函數(shù)。
五、DLL木馬技術(shù)分析
到了這里,您也許會(huì)想,既然DLL木馬有那么多好處,以后寫(xiě)木馬都采用DLL方式不就好了嗎?話雖然是這么說(shuō)沒(méi)錯(cuò),但是DLL木馬并不是一些人想象的那么容易寫(xiě)的。要寫(xiě)一個(gè)能用的DLL木馬,你需要了解更多知識(shí)。
1.木馬的主體
千萬(wàn)別把木馬模塊寫(xiě)得真的像個(gè)API庫(kù)一樣,這不是開(kāi)發(fā)WINAPI。DLL木馬可以導(dǎo)出幾個(gè)輔助函數(shù),但是必須有一個(gè)過(guò)程負(fù)責(zé)主要執(zhí)行代碼,否則這個(gè)DLL只能是一堆零碎API函數(shù),別提工作了。
如果涉及一些通用代碼,可以在DLL里寫(xiě)一些內(nèi)部函數(shù),供自己的代碼使用,而不是把所有代碼都開(kāi)放成接口,這樣它自己本身都難調(diào)用了,更不可能發(fā)揮作用。
DLL木馬的標(biāo)準(zhǔn)執(zhí)行入口為DllMain,所以必須在DllMain里寫(xiě)好DLL木馬運(yùn)行的代碼,或者指向DLL木馬的執(zhí)行模塊。
2.動(dòng)態(tài)嵌入技術(shù)
Windows中,每個(gè)進(jìn)程都有自己的私有內(nèi)存空間,別的進(jìn)程是不允許對(duì)這個(gè)私人領(lǐng)地進(jìn)行操作的,但是,實(shí)際上我們?nèi)匀豢梢岳梅N種方法進(jìn)入并操作進(jìn)程的私有內(nèi)存,這就是動(dòng)態(tài)嵌入,它是將自己的代碼嵌入正在運(yùn)行的進(jìn)程中的技術(shù)。動(dòng)態(tài)嵌入有很多種,最常見(jiàn)的是鉤子、API以及遠(yuǎn)程線程技術(shù),現(xiàn)在的大多數(shù)DLL木馬都采用遠(yuǎn)程線程技術(shù)把自己掛在一個(gè)正常系統(tǒng)進(jìn)程中。其實(shí)動(dòng)態(tài)嵌入并不少見(jiàn),羅技的MouseWare驅(qū)動(dòng)就掛著每一個(gè)系統(tǒng)進(jìn)程-_-
遠(yuǎn)程線程技術(shù)就是通過(guò)在另一個(gè)進(jìn)程中創(chuàng)建遠(yuǎn)程線程(RemoteThread)的方法進(jìn)入那個(gè)進(jìn)程的內(nèi)存地址空間。在DLL木馬的范疇里,這個(gè)技術(shù)也叫做“注入”,當(dāng)載體在那個(gè)被注入的進(jìn)程里創(chuàng)建了遠(yuǎn)程線程并命令它加載DLL時(shí),木馬就掛上去執(zhí)行了,沒(méi)有新進(jìn)程產(chǎn)生,要想讓木馬停止惟有讓掛接這個(gè)木馬DLL的進(jìn)程退出運(yùn)行。但是,很多時(shí)候我們只能束手無(wú)策——它和Explorer.exe掛在一起了,你確定要關(guān)閉Windows嗎?
3.木馬的啟動(dòng)
有人也許會(huì)迫不及待的說(shuō),直接把這個(gè)DLL加入系統(tǒng)啟動(dòng)項(xiàng)目不就可以了。答案是NO,前面說(shuō)過(guò),DLL不能獨(dú)立運(yùn)行,所以無(wú)法在啟動(dòng)項(xiàng)目里直接啟動(dòng)它。要想讓木馬跑起來(lái),就需要一個(gè)EXE使用動(dòng)態(tài)嵌入技術(shù)讓DLL搭上其他正常進(jìn)程的車,讓被嵌入的進(jìn)程調(diào)用這個(gè)DLL的DllMain函數(shù),激發(fā)木馬運(yùn)行,最后啟動(dòng)木馬的EXE結(jié)束運(yùn)行,木馬啟動(dòng)完畢。
啟動(dòng)DLL木馬的EXE是個(gè)重要角色,它被稱為L(zhǎng)oader,如果沒(méi)有Loader,DLL木馬就是破爛一堆,因此,一個(gè)算得上成熟的DLL木馬會(huì)想辦法保護(hù)它的Loader不會(huì)那么容易被毀滅。記得狼狽為奸的故事嗎?DLL木馬就是爬在狼Loader上的狽。
Loader可以是多種多樣的,Windows的rundll32.exe也被一些DLL木馬用來(lái)做了Loader,這種木馬一般不帶動(dòng)態(tài)嵌入技術(shù),它直接掛著rundll32進(jìn)程運(yùn)行,用rundll32的方法(rundll32.exe [DLL名],[函數(shù)] [參數(shù)])像調(diào)用API一樣去引用這個(gè)DLL的啟動(dòng)函數(shù)激發(fā)木馬模塊開(kāi)始執(zhí)行,即使你殺了rundll32,木馬本體還是在的,一個(gè)最常見(jiàn)的例子就是3721中文實(shí)名,雖然它不是木馬。
注冊(cè)表的AppInit_DLLs鍵也被一些木馬用來(lái)啟動(dòng)自己,如求職信病毒。利用注冊(cè)表啟動(dòng),就是讓系統(tǒng)執(zhí)行DllMain來(lái)達(dá)到啟動(dòng)木馬的目的。因?yàn)樗莐ernel調(diào)入的,對(duì)這個(gè)DLL的穩(wěn)定性有很大要求,稍有錯(cuò)誤就會(huì)導(dǎo)致系統(tǒng)崩潰,所以很少看到這種木馬。
有一些更復(fù)雜點(diǎn)的DLL木馬通過(guò)svchost.exe啟動(dòng),這種DLL木馬必須寫(xiě)成NT-Service,入口函數(shù)是ServiceMain,一般很少見(jiàn),但是這種木馬的隱蔽性也不錯(cuò),而且Loader有保障。
4.其它
到這里大家也應(yīng)該對(duì)DLL木馬有個(gè)了解了,是不是很想寫(xiě)一個(gè)?別急,不知道大家想過(guò)沒(méi)有,既然DLL木馬這么好,為什么到現(xiàn)在能找到的DLL木馬寥寥無(wú)幾?現(xiàn)在讓我來(lái)潑冷水,最重要的原因只有一個(gè):由于DLL木馬掛著系統(tǒng)進(jìn)程運(yùn)行,如果它本身寫(xiě)得不好,例如沒(méi)有防止運(yùn)行錯(cuò)誤的代碼或者沒(méi)有嚴(yán)格規(guī)范用戶的輸入,DLL就會(huì)出錯(cuò)崩潰。別緊張,一般的EXE也是這樣完蛋的,但是DLL崩潰會(huì)導(dǎo)致它掛著的程序跟著遭殃,別忘記它掛接的是系統(tǒng)進(jìn)程哦,結(jié)局就是……慘不忍睹。所以寫(xiě)一個(gè)能公布的DLL木馬,在排錯(cuò)檢查方面做的工作要比一般的EXE木馬多,寫(xiě)得多了自己都煩躁……
六、DLL木馬的發(fā)現(xiàn)和查殺
經(jīng)常看看啟動(dòng)項(xiàng)有沒(méi)有多出莫名其妙的項(xiàng)目,這是Loader的所在,只要?dú)⒘死?,狽就不能再狂了。而DLL木馬本體比較難發(fā)現(xiàn),需要你有一定編程知識(shí)和分析能力,在Loader里查找DLL名稱,或者從進(jìn)程里看多掛接了什么陌生的DLL,可是對(duì)新手來(lái)說(shuō)……總之就是比較難啊比較難,所以,最簡(jiǎn)單的方法:殺毒軟件和防火墻(不是萬(wàn)能藥,切忌長(zhǎng)期服用)。
四、木馬是什么東西
什么是特洛伊木馬
特洛伊木馬(以下簡(jiǎn)稱木馬),英文叫做“Trojan horse”,其名稱取自希臘神話的特洛伊木馬記。
古希臘傳說(shuō),特洛伊王子帕里斯訪問(wèn)希臘,誘走了王后海倫,希臘人因此遠(yuǎn)征特洛伊。圍攻9年后,到第10年,希臘將領(lǐng)奧德修斯獻(xiàn)了一計(jì),就是把一批勇士埋伏在一匹巨大的木馬腹內(nèi),放在城外后,佯作退兵。特洛伊人以為敵兵已退,就把木馬作為戰(zhàn)利品搬入城中。到了夜間,埋伏在木馬中的勇士跳出來(lái),打開(kāi)了城門(mén),希臘將士一擁而入攻下了城池。后來(lái),人們?cè)趯?xiě)文章時(shí)就常用“特洛伊木馬”這一典故,用來(lái)比喻在敵方營(yíng)壘里埋下伏兵里應(yīng)外合的活動(dòng)盜密報(bào)卡解綁過(guò)程:
登陸的時(shí)候通過(guò)木馬盜取玩家的密碼,并且用盜取的密碼進(jìn)入密碼保護(hù)卡解除綁定的網(wǎng)頁(yè)頁(yè)面,在通過(guò)木馬把玩家登陸時(shí)候的三個(gè)密碼保護(hù)卡數(shù)換成密碼保護(hù)卡解綁需要的三個(gè)數(shù),1次就能騙到密碼保護(hù)卡解除綁定需要的三個(gè)數(shù)了,再解除綁定,玩家的帳號(hào)就跟沒(méi)密碼保護(hù)卡一樣.電話密碼保護(hù)也一樣,玩家打了電話,然后登陸的時(shí)候通過(guò)木馬讓玩家不能連接服務(wù)器并盜取玩家的密碼,然后盜取賬號(hào)者就2分內(nèi)可以上去了盜取玩家財(cái)產(chǎn)。
更好的反擊盜取賬號(hào)者措施
1.設(shè)置角色密碼(可結(jié)合密碼保護(hù)卡),
2.設(shè)置背包密碼,背包分二部分(G也分2部份,1大額,1小額),一部分需要密碼(可以放重要的財(cái)產(chǎn)),一部分不要密碼(放置常用物品),可結(jié)合密???。
3,裝備欄設(shè)置密碼保護(hù)卡,上線后需要輸入密??ń獬b備欄的密報(bào)卡數(shù),才能使用技能 ,如果不解除綁定,不能使用技能并且無(wú)法交易。
4,倉(cāng)庫(kù)通過(guò)密碼打開(kāi)后,與背包相同。
5,設(shè)置退出密碼,輸入退出密碼正常才能下線,非正常下線5分內(nèi)補(bǔ)能登陸。
6 設(shè)置下次登陸地點(diǎn),玩家下線時(shí)可以選者下次登陸的IP段(以市為單位,不在IP段里面的IP,不能登陸 )
6 計(jì)算機(jī)綁定,對(duì)于有計(jì)算機(jī)的玩家可以綁定CPU編號(hào),這點(diǎn)某些殺毒軟件有這個(gè)技術(shù),你們估計(jì)也有這技術(shù)。
7,上述六點(diǎn)可結(jié)合密碼保護(hù)卡,并且可以設(shè)置多張密碼保護(hù)卡,登陸界面一張密碼保護(hù)卡,角色界面一張密碼保護(hù)卡,背包一張密碼保護(hù)卡,倉(cāng)庫(kù)一張密碼保護(hù)卡,退出登錄一張密碼保護(hù)卡。補(bǔ)充:密??呻S自己意愿綁定,但是追號(hào)大于等于2,背包,倉(cāng)庫(kù)等可以用同1張密保卡(最好不和登陸用同1張),關(guān)于手機(jī)密??筛臑椋顷憰r(shí)不需打手機(jī),登陸后所有物品全部無(wú)法交易出售,無(wú)法發(fā)言,在登陸后打手機(jī)才可解除,可防止手機(jī)密保在登陸界面被木馬利用
8,加強(qiáng)游戲本身防木馬能力??梢院蜌⒍拒浖竞献髟O(shè)置一款專門(mén)用于魔獸的殺毒軟件
9,加入網(wǎng)吧IP段保護(hù)
10,這需要網(wǎng)游公司對(duì)現(xiàn)有密碼系統(tǒng)升級(jí)
在計(jì)算機(jī)領(lǐng)域中,它是一種基于遠(yuǎn)程控制的黑客工具,具有隱蔽性和非授權(quán)性的特點(diǎn)。
所謂隱蔽性是指木馬的設(shè)計(jì)者為了防止木馬被發(fā)現(xiàn),會(huì)采用多種手段隱藏木馬,這樣服務(wù)端即使發(fā)現(xiàn)感染了木馬,由于不能確定其具體位置,往往只能望“馬”興嘆。
所謂非授權(quán)性是指一旦控制端與服務(wù)端連接后,控制端將享有服務(wù)端的大部分操作權(quán)限,包括修改文件,修改注冊(cè)表,控制鼠標(biāo),鍵盤(pán)等等,而這些權(quán)力并不是服務(wù)端賦予的,而是通過(guò)木馬程序竊取的。
從木馬的發(fā)展來(lái)看,基本上可以分為兩個(gè)階段。
最初網(wǎng)絡(luò)還處于以UNIX平臺(tái)為主的時(shí)期,木馬就產(chǎn)生了,當(dāng)時(shí)的木馬程序的功能相對(duì)簡(jiǎn)單,往往是將一段程序嵌入到系統(tǒng)文件中,用跳轉(zhuǎn)指令來(lái)執(zhí)行一些木馬的功能,在這個(gè)時(shí)期木馬的設(shè)計(jì)者和使用者大都是些技術(shù)人員,必須具備相當(dāng)?shù)木W(wǎng)絡(luò)和編程知識(shí)。
而后隨著WINDOWS平臺(tái)的日益普及,一些基于圖形操作的木馬程序出現(xiàn)了,用戶界面的改善,使使用者不用懂太多的專業(yè)知識(shí)就可以熟練的操作木馬,相對(duì)的木馬入侵事件也頻繁出現(xiàn),而且由于這個(gè)時(shí)期木馬的功能已日趨完善,因此對(duì)服務(wù)端的破壞也更大了。
所以所木馬發(fā)展到今天,已經(jīng)無(wú)所不用其極,一旦被木馬控制,你的電腦將毫無(wú)秘密可言。
以上就是小編對(duì)于木馬的設(shè)計(jì)者是誰(shuí)問(wèn)題和相關(guān)問(wèn)題的解答了,木馬的設(shè)計(jì)者是誰(shuí)的問(wèn)題希望對(duì)你有用!
推薦閱讀:
上海木馬設(shè)計(jì)公司怎么樣(上海木馬設(shè)計(jì)公司怎么樣知乎)
自己建一個(gè)賣東西的網(wǎng)站(自己建一個(gè)賣東西的網(wǎng)站違法嗎)
猜你喜歡
作品設(shè)計(jì)說(shuō)明模板100字(作品設(shè)計(jì)說(shuō)明模板100字)
皮膚管理加盟哪個(gè)品牌好(問(wèn)題性皮膚管理加盟品牌)
淘寶歷史搜索怎么打開(kāi)(淘寶歷史搜索怎么打開(kāi)不了)
名師工作室發(fā)展愿景(名師工作室發(fā)展愿景怎么寫(xiě))
市場(chǎng)營(yíng)銷成功的案例(十大成功營(yíng)銷策劃案例)
推薦一個(gè)國(guó)內(nèi)免費(fèi)換ip的(推薦一個(gè)國(guó)內(nèi)免費(fèi)換ip的網(wǎng)站)
優(yōu)秀員工關(guān)鍵詞(優(yōu)秀員工關(guān)鍵詞怎么寫(xiě))