發新話題

[分享]特洛伊木馬大揭密

[分享]特洛伊木馬大揭密

特洛伊木馬(以下簡稱木馬),英文叫做「Trojan house」,其名稱取自希臘神話的特洛伊木馬記,它是一種基於遠端控制的駭客工具,具有隱蔽性和非授權性的特點:所謂隱蔽性是指木馬的設計者為了防止木馬被發現,會採用多種手段隱藏木馬,這樣服務端即使發現感染了木馬,由於不能確定其具體位置,往往只能望「馬」興歎;所謂非授權性是指一旦控制端與服務端連接後,控制端將享有服務端的大部分操作野i權,包括修改檔,修改註冊表,控制滑鼠,鍵盤等等,而這些權力並不是服務端賦予的,而是通過木馬程式竊取的。從木馬的發展來看,基本上可以分為兩個階段,最初網路還處於以UNIX平臺為主的時期,木馬就產生了,當時的木馬程式的弁酮蛫屩眾獢A往往是將一段程式嵌入到系統檔中,用跳轉指令來執行一些木馬的弁遄A在這個時期木馬的設計者和使用者大都是些技術人員,必須具備相當的網路和編程知識。而後隨著WINDOWS平臺的日益普及,一些基於圖形操作的木馬程式出現了,用戶介面的改善,使使用者不用懂太多的專業知識就可以熟練的操作木馬,相對的木馬入侵事件也頻繁出現,而且由於這個時期木馬的弁鄐w日趨完善,因此對服務端的破壞也更大了,一旦被木馬控制,你的電腦將毫無秘密可言。



基礎知識

在介紹木馬的原理之前有一些木馬構成的基礎知識我們要事先加以說明,因為下面有很多地方會提到這些內容。一個完整的木馬系統由硬體部分,軟體部分和具體連接部分組成。

(1)硬體部分:建立木馬連接所必須的硬體實體。
控制端:對服務端進行遠端控制的一方。
服務端:被控制端遠程式控制制的一方。
INTERNET:控制端對服務端進行遠端控制,資料傳輸的網路載體。

(2)軟體部分:實現遠端控制所必須的軟體程式。
控制端程式:控制端用以遠端控制服務端的程式。
木馬程式:潛入服務端內部,獲取其操作野i權的程式。
木馬配置程式:設置木馬程式的埠號,觸發條件,木馬名稱等,使其在服務端藏得更隱蔽的程式。

(3)具體連接部分:通過INTERNET在服務端和控制端之間建立一條木馬通道所必須的元素。
控制端IP,服務端IP:即控制端,服務端的網路位址,也是木馬進行資料傳輸的目的地。
控制端埠,木馬埠:即控制端,服務端的資料入口,通過這個入口,資料可直達控制端程式或木馬程式。

木馬原理

用木馬這種駭客工具進行網路入侵,從過程上看大致可分為六步,下麵我們就按這六步來詳細闡述木馬的攻擊原理。

一、配置木馬

一般來說一個設計成熟的木馬都有木馬配置程式,從具體的配置內容看,主要是為了實現以下兩方面弁遄G

(1)木馬偽裝:木馬配置程式為了在服務端盡可能的隱藏木馬,會採用多種偽裝手段,如修改圖示,捆綁檔,定制埠,自我銷毀等。

(2)資訊回饋:木馬配置程式將就資訊回饋的方式或位元址進行設置,如設置資訊回饋的郵件位址,IRC號,ICO號等等。

二、傳播木馬

(1)傳播方式

木馬的傳播方式主要有兩種:一種是通過E-MAIL,控制端將木馬程式以附件的形式夾在郵件中發送出去,收信人只要打開附件系統就會感染木馬;另一種是軟體下載,一些非正規的網站以提供軟體下載為名義,將木馬捆綁在軟體安裝程式上,下載後,只要一運行這些程式,木馬就會自動安裝。

(2)偽裝方式

鑒於木馬的危害性,很多人對木馬知識還是有一定瞭解的,這對木馬的傳播起了一定的抑製作用,這是木馬設計者所不願見到的,因此他們開發了多種弁鄖荌偶豸麆芋A以達到降低用戶警覺,欺騙用戶的目的。

(一)修改圖示

當你在E-MAIL的附件中看到這個圖示時,是否會認為這是個文字檔案呢?但是我不得不告訴你,這也有可能是個木馬程式,現在已經有木馬可以將木馬服務端程式的圖示改成HTML,TXT, ZIP等各種檔的圖示,這有相當大的迷惑性,但是目前提供這種弁鄋漱麆阪暀ㄕh見,並且這種偽裝也不是無懈可擊的,所以不必整天提心吊膽,疑神疑鬼的。

(二)捆綁文件

這種偽裝手段是將木馬捆綁到一個安裝程式上,當安裝程式運行時,木馬在用戶毫無察覺的情況下,偷偷的進入了系統。至於被捆綁的檔一般是可執行檔(即EXE,COM一類的檔)。

(三)出錯顯示

有一定木馬知識的人都知道,如果打開一個檔,沒有任何反應,這很可能就是個木馬程式,木馬的設計者也意識到了這個缺陷,所以已經有木馬提供了一個叫做出錯顯示的弁遄C當服務端用戶打開木馬程式時,會彈出一個錯誤提示框(這當然是假的),錯誤內容可自由定義,大多會定製成一些諸如「文件已破壞,無法打開!」之類的資訊,當服務端用戶信以為真時,木馬卻悄悄侵入了系統。

(四)定制埠

很多老式的木馬埠都是固定的,這給判斷是否感染了木馬帶來了方便,只要查一下特定的埠就知道感染了什麼木馬,所以現在很多新式的木馬都加入了定制埠的弁遄A控制端用戶可以在1024---65535之間任選一個埠作為木馬埠(一般不選1024以下的埠),這樣就給判斷所感染木馬類型帶來了麻煩。

(五)自我銷毀

這項弁酮O為了彌補木馬的一個缺陷。我們知道當服務端用戶打開含有木馬的檔後,木馬會將自己拷貝到WINDOWS的系統檔夾中(C:/WINDOWS或C:/WINDOWS/SYSTEM目錄下),一般來說原木馬檔和系統檔夾中的木馬檔的大小是一樣的(捆綁檔的木馬除外),那麼中了木馬的朋友只要在近來收到的信件和下載的軟體中找到原木馬檔,然後根據原木馬的大小去系統檔夾找相同大小的檔,判斷一下哪個是木馬就行了。而木馬的自我銷毀弁酮O指安裝完木馬後,原木馬檔將自動銷毀,這樣服務端用戶就很難找到木馬的來源,在沒有查殺木馬的工具幫助下,就很難刪除木馬了。

(六)木馬更名

安裝到系統檔夾中的木馬的檔案名一般是固定的,那麼只要根據一些查殺木馬的文章,在系統檔夾查找特定的檔。就可以斷定中了什麼木馬。所以現在有很多木馬都允陰惆蹎搘峇嶆菪悕w制安裝後的木馬檔案名,這樣很難判斷所感染的木馬類型了。

三、運行木馬

服務端用戶運行木馬或捆綁木馬的程式後,木馬就會自動進行安裝。首先將自身拷貝到WINDOWS的系統檔夾中(C:/WINDOWS或C:/WINDOWS/SYSTEM目錄下),然後在註冊表,啟動組,非啟動組中設置好木馬的觸發條件,這樣木馬的安裝就完成了。安裝後就可以啟動木馬了。

(1)由觸發條件啟動木馬

觸發條件是指啟動木馬的條件,大致出現在下麵八個地方:

1.註冊表:打開HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/下的五個以Run和RunServices主鍵,在其中尋找可能是啟動木馬的鍵值。

2.WIN.INI:C:/WINDOWS目錄下有一個配置檔win.ini,用文本方式打開,在[windows]欄位中有啟動命令load=和run=,在一般情況下是空白的,如果有啟動程式,可能是木馬。

3.SYSTEM.INI:C:/WINDOWS目錄下有個配置檔system.ini,用文本方式打開,在[386Enh],[mic],[drivers32]中有命令行,在其中尋找木馬的啟動命令。

4.Autoexec.bat和Config.sys:在C碟根目錄下的這兩個檔也可以啟動木馬。但這種載入方式一般都需要控制端用戶與服務端建立連接後,將已添加木馬啟動命令的同名檔上傳到服務端覆輒o兩個文件才行。

5.*.INI:即應用程式的啟動配置檔,控制端利用這些檔能啟動程式的特點,將製作好的帶有木馬啟動命令的同名檔上傳到服務端覆輒o同名檔,這樣就可以達到啟動木馬的目的了。

6.註冊表:打開HKEY_CLASSES_ROOT/文件類型/shell/open/command主鍵,查看其鍵值。舉個例子,木馬「冰河」就是修改HKEY_CLASSES_ROOT/txtfile/shellopen/command下的鍵值,將「C :/WINDOWS /NOTEPAD.EXE %1」改為「C:/WINDOWSSYSTEM/SYSEXPLR.EXE %1」,這時你雙擊一個TXT檔後,原本應用NOTEPAD打開檔的,現在卻變成啟動木馬程式了。還要說明的是不光是TXT檔,通過修改HTML,EXE,ZIP等檔的啟動命令的鍵值都可以啟動木馬,不同之處只在於「檔類型」這個主鍵的差別,TXT是txtfile,ZIP是WINZIP,大家可以試著去找一下。

7.捆綁文件:實現這種觸發條件首先要控制端和服務端已通過木馬建立連接,然後控制端用戶用工具軟體將木馬檔和某一應用程式捆綁在一起,然後上傳到服務端覆賒鴗憟鞳A這樣即使木馬被刪除了,只要運行捆綁了木馬的應用程式,木馬又會被安裝上去了。
  
8.啟動弁鄋瞴G在「開始---程式---啟動」選項下也可能有木馬的觸發條件。

(2)木馬運行過程

木馬被啟動後,進入記憶體,並開啟事先定義的木馬埠,準備與控制端建立連接。這時服務端用戶可以在MS-DOS方式下,鍵入NETSTAT -AN查看埠狀態,一般個人電腦在脫機狀態下是不會有埠開放的,如果有埠開放,你就要注意是否感染木馬了。

在上網過程中要下載軟體,發送信件,網上聊天等必然打開一些埠,下面是一些常用的埠:

(1)1---1024之間的埠:這些埠叫保留埠,是專給一些對外通訊的程式用的,如FTP使用21,SMTP使用25,POP3使用110等。只有很少木馬會用保留埠作為木馬埠的。

(2)1025以上的連續埠:在上網流覽網站時,流覽器會打開多個連續的埠下載文字,圖片到本地硬碟上,這些埠都是1025以上的連續埠。

(3)4000埠:這是OICQ的通訊埠。

(4)6667埠:這是IRC的通訊埠。 除上述的埠基本可以排除在外,如發現還有其他埠打開,尤其是數值比較大的埠,那就要懷疑是否感染了木馬,當然如果木馬有定制埠的弁遄A那任何埠都有可能是木馬埠。

四、資訊洩露

一般來說,設計成熟的木馬都有一個資訊回饋機制。所謂資訊回饋機制是指木馬成它w裝後會收集一些服務端的軟硬體資訊,並通過E-MAIL,IRC或ICO的方式告知控制端用戶。

五、建立連接

一個木馬連接的建立首先必須滿足兩個條件:一是服務端已安裝了木馬程式;二是控制端,服務端都要線上 。在此基礎上控制端可以通過木馬埠與服務端建立連接。

假設A機為控制端,B機為服務端,對於A機來說要與B機建立連接必須知道B機的木馬埠和IP位址,由於木馬埠是A機事先設定的,為已知項,所以最重要的是如何獲得B機的IP地址。獲得B機的IP 地址的方法主要有兩種:資訊回饋和IP掃瞄。我們重點來介紹IP掃瞄,因為B機裝有木馬程式,所以它的木馬埠7626是處於開放狀態的,所以現在A機只要掃瞄IP位址段中7626埠開放的主機就行了,假設B機的IP位址是202.102.47.56,當A機掃瞄到這個IP時發現它的7626埠是開放的,那麼這個IP就會被添加到列表中,這時A機就可以通過木馬的控制端程式向B機發出連接信號,B機中的木馬程式收到信號後立即作出回應,當A機收到回應的信號後,開啟一個隨即埠1031與B機的木馬埠7626建立連接,到這時一個木馬連接才算真正建立。值得一提的要掃瞄整個IP位址段顯然費時費力,一般來說控制端都是先通過資訊回饋獲得服務端的IP位址,由於撥號上網的IP是動態的,即用戶每次上網的IP都是不同的,但是這個IP是在一定範圍內變動的,B機的IP是202.102.47.56,那麼B機上網IP的變動範圍是在202.102.000.000---202.102.255.255,所以每次控制端只要搜索這個IP位址段就可以找到B機了。

六、遠程式控制制

木馬連接建立後,控制端埠和木馬埠之間將會出現一條通道。

控制端上的控制端程式可藉這條通道與服務端上的木馬程式取得聯繫,並通過木馬程式對服務端進行遠端控制。下面我們就介紹一下控制端具體能享有哪些控制野i權,這遠比你想像的要大。

(1)竊取密碼:一切以明文的形式,*形式或緩存在CACHE中的密碼都能被木馬偵測到,此外很多木馬還提供有擊鍵記錄弁遄A它將會記錄服務端每次敲擊鍵盤的動作,所以一旦有木馬入侵, 密碼將很容易被竊取。

(2)檔操作:控制端可藉由遠端控制對服務端上的檔進行刪除,新建,修改,上傳,下載,運行,更改屬性等一系列操作,基本涵誘FWINDOWS平臺上所有的檔操作弁遄C

(3)修改註冊表:控制端可任意修改服務端註冊表,包括刪除,新建或修改主鍵,子鍵,鍵值。有了這項弁鈺惆蹎搥N可以禁止服務端軟盤機,光碟機的使用,鎖住服務端的註冊表,將服務端上木馬的觸發條件設置得更隱蔽一系列高級操作。

(4)系統操作:這項內容包括重啟或關閉服務端作業系統,斷開服務端網路連接,控制服務端的滑鼠,鍵盤,監視服務端桌面操作,查看服務端進程等,控制端甚至可以隨時給服務端發送資訊,想像一下,當服務端的桌面上突然跳出一段話,不嚇人一跳才怪。



我是好色美妹如覺得不錯請來虧我回個文吧! 謝謝

TOP

發新話題

本站所有圖文均屬網友發表,僅代表作者的觀點與本站無關,如有侵權請通知版主會盡快刪除。