第二章 相關工作
2.1 惡意程式(malware)
『電腦病毒』單純指的是『Virus』,而『惡性程式』(Malware)則泛指所有不懷好意的程 式碼,包括電腦病毒(Virus)、特洛伊木馬(Trojan)程式、電腦蠕蟲(Worm)。在早期電腦病毒、
特洛伊木馬程式、電腦蠕蟲都是各自獨立的程式而且彼此不相干,但近幾年來單一型態的惡性 程式愈來愈少了,大部份都以『電腦病毒』加『電腦蠕蟲』或『特洛伊木馬程式』加『電腦蠕 蟲』的型態存在以便造成更大的影響力,而且比率以前者居多。例如:『梅莉莎』(MELISSA) 便 是結合『電腦病毒』及『電腦蠕蟲』的兩項特性。該惡性程式不但會感染 Word 的 Normal.dot
(此為電腦病毒特性),而且會透過 Outlook E-mail 大量散播(此為電腦蠕蟲特性)。例外一 個耳熟能詳的案例是結合了『特洛伊木馬程式』及『電腦蠕蟲』兩項特性的『探險蟲』
(ExploreZip)。探險蟲並不會感染任何檔案,但是會覆蓋掉(Overwrite)在區域網路上遠端電 腦中的重要檔案(此為特洛伊木馬程式特性),並且會透過區域網路將自己安裝到遠端電腦上
(此為電腦蠕蟲特性)。 在本論文特別把後門程式從特洛依木馬程式裡分出來,因為這一類數 目特別多,所以我們特別分開進行討論。
電腦病毒 電腦蠕蟲 木馬程式 後門程式
感染其他檔案 O X X X
被動散播自己 O X O O
主動散播自己 X O X X
造成程式 增加數目
一般隨電腦使 用率提高,受 染感檔案數目
則增加
視網路連結狀況 而定,連結範圍 愈廣,散佈的數
目多
不增加 不增加
破壞能力 視寫作者而定 X 視寫作者而定 視寫作者而定 對企業的
影響性 中 高 低 低
表 一 惡性程式比較表[11]
2.1.1 Virus
電腦病毒[11]是一段程式,會將本身複製到其他乾淨的檔案或開機區的惡性程式[12],猶 如一般的生物病毒,當電腦使用者在不自覺的情形下執行到已受病毒感染的檔案或磁片開機 時,這個惡性程式將以相同的方式繼續散播出去,而它的目地是破壞電腦系統與檔案,它具有 傳播性、隱蔽性、感染性、潛伏性或破壞性。至於電腦病毒是不是都會在某特定日期發作且破 壞電腦資料這就和病毒的寫作者如何設計程式有關,並不屬於電腦病毒的特性。以台灣有名的 CIH為例,由於 CIH 獨特的感染模式,受到 CIH 感染的檔案大小可能和原始檔案相同。此病 毒會搜尋檔案內未使用的空間。接下來,它會把自己分解成較小的片段,將程式碼插入這些未 使用的空間。隨機資料覆寫硬碟,使用無限迴圈從磁碟的起點 (磁區 0) 開始。會一直不斷地 覆寫磁區,直到系統當機為止。因此,電腦將無法從硬碟或軟碟開機。同時,硬碟上被覆寫的 資料非常難以復原,其實根本就不可能復原。您必須利用備份還原資料。
2.1.2 Worm
電腦蠕蟲(Worm)[13]的行為有點像病毒一樣會進行複製,但病毒必需依附在某些檔案上,
而蠕蟲會複製許多自己的分身,在電腦網路中爬行,從一台電腦爬到另外一台電腦,它具有非 常強的傳播性而且速度極快,可能在數小時內癱瘓掉幾萬台電腦,它最常用的感染方法是透過 區域網路(LAN)、網際網路(Internet)或是 E-mail 來散佈自己,如圖 2-1,在發垃圾郵件 的事件裡,前十大幾乎都為Worm 所為,也是因為如此,中了蠕蟲病毒時最常見的特徵是網路 速度變的極慢,因為整個電腦網路的頻寬都被蠕蟲用來進行感染行為。以W32.Netsky.P@mm為 例,它是一種會寄發大量郵件的病蟲,它會掃描硬碟與網路磁碟並使用自身的 SMTP 引擎將自 己傳送給找到的電子郵件位址。還會藉由將自身複製到不同的共用資料夾,以試圖透過各種檔 案共享程式散播。該電子郵件的「寄件者」行會加以偽裝,而且其「主旨」行與訊息內文也會 因人而異。 附件名稱會隨 .exe、.pif、.scr 或 .zip 等副檔名而有所不同。
圖 2 - 1 發送垃圾郵件前十大的蠕蟲
由圖 2-2 很明顯地顯示出Virus 與 Worm 的變種病毒越來越多的趨勢[14],這是由於現
今網路上充斥著各種病毒產生器,只要使用一些簡單的軟體,勾選一些想要的功能,就能產生 一個變種病毒,防毒軟體就沒有能力偵測到新的變種病毒,這更顯現出新型防毒軟體的重要性。
圖 2 - 2 變種病毒比例表
2.1.3 Trojan
木馬這個字是源自於希臘木馬屠城神話[15],木馬程式通常偽裝或嵌入正常軟體裡面,這 些軟體提供一些有用的功能供使用者使用,但這些有用程式背後還藏著由駭客所寫而且使用者 並不知情的特別功能,它有著極高的隱密性不易被發覺。另一種讓使用者上當的方法是利用一 些特別字眼的檔名吸引使用者執行這些木馬軟體,最常使用的都是一些情色或是賺錢的廣告檔 名,即所謂的社交工程social engineering。特洛伊木馬程式就不像電腦病毒一樣會感染其他 檔案,特洛伊木馬程式通常都會以一些特殊管道進入使用者的電腦系統中,然後伺機執行其惡 意行為(如格式化磁碟、刪除檔案、竊取密碼等),Back Orifice特洛伊木馬程式便是一個案 例,透過該程式電腦駭客便有機會入侵主機竊取機密資料。一個完整的特洛伊木馬程序包含了 兩部分:服務端(伺服器部分)和客戶端(控制器部分)[16]。植入對方電腦的是服務端,而 駭客正是利用客戶端進入運行了服務端的電腦。運行了木馬程序的服務端以後,會產生一個容 易迷惑用戶的名稱的行程(process),暗中打開一個對外的埠,向指定地點發送數據(如網路 遊戲的密碼,QQ密碼和用戶上網密碼等),駭客甚至可以利用這些打開的埠進入電腦系統。下 表是木馬程式技術發展非常迅速。主要是有些年輕人出於好奇,或是急於顯示自己實力,不斷 改進木馬程式的編寫。以JS.Fortnight.C為例,它是一個特洛伊木馬程式,它會丟棄一個檔案 然後該檔案會被插入 Microsoft Outlook Express 的預設簽章中。於是每次當您使用 Outlook Express 來傳送電子郵件時,訊息內容就會包含一個程式編碼,會在每次收件者開啟訊息時嘗 試連上特定的網站。JS.Fortnight.C 會使用 IFRAME 標籤來探測 Microsoft VM 弱點,其中 SRC 欄位會被設為特洛伊木馬撰寫者的位址。在一連串的轉送之後,編碼過的 JavaScript 便 會載入包含該探測程式的 Applet。在未安裝修補程式的系統上,很多不同的登錄鍵與 Web 瀏
覽器都會因此而遭到修改。至今木馬程式已經經歷了四代的改進:
z 第一代,是最原始的木馬程式。主要是簡單的密碼竊取,通過電子郵件發送信息等,
具備了木馬最基本的功能。
z 第二代,在技術上有很大的進步,冰河是中國木馬的典型代表之一。
z 第三代, 主要改進在數據傳遞技術方面,出現了ICMP(Internet Control Management Protocol)等類型的木馬,利用畸形報文傳遞數據,增加了掃毒軟體識別的難度。
z 第四代 在進程隱藏方面有了很大改動,採用核心插入式的嵌入方式,利用遠程插入執 行緒技術,嵌入DLL執行緒。或者掛接PSAPI,實現木馬程序的隱藏,甚至在Windows NT/2000 下,都達到了良好的隱藏效果。灰鴿子和蜜蜂大盜是比較出名的DLL木馬。
2.1.4 Backdoor
後門是木馬程式裡的一類,它跟木馬不同的地方在於它利用合法的途徑欺騙使用者,後門 程式通常跟一般的應用軟體很像,比如window 作業系統的登入畫面,使用者執行了後門程式 以後,當第二次開機時呈現需要使用者輸入帳號密碼的畫面同於平常所使用的登入畫面,其實 這就是之前已潛伏在電腦裡的後門程式,但使用者並不知情,取得進入電腦的帳號與密碼後,
駭客就可以在使用者電腦裡以合法的方式為所欲為,所以特洛依木馬與後門最大的不同為木馬 最主要偷取電腦裡的資料,而後門則假造類似使用者平常輸入密碼的畫面偷取密碼,從圖 2-3 可以明顯看出這樣的程式在惡意程式的比例有逐漸升高的趨勢[14],並且新種類的後門也出現 同樣的情況[14](圖 2-4),也因為這樣類型的惡意程式數目太多而且太過於危險,所以我們把 這一類從特洛依木馬程式裡分開討論。以Backdoor.Snowdoor為例,它會在受感染的電腦上打 開TCP埠 5,326 或 5,328。會允許未經授權的使用進入受感染的電腦。當Backdoor.Snowdoor 執行時,將會進行以下事項:
1. 將本身複製為:
z %System%\Swon6.exe z %Windir%\sk.exe
2. 將下列值:Snow %System%\swon6.exe 加入登錄鍵:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
3. 在 Windows 95/98/Me 電腦上修改 run= line of the Win.ini 為 run=%Windir%\sk.exe 4. 加 入 一 個 登 錄 鍵 建 立 C 磁 碟 機 共 享 : HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Network\LanMan\C$
5.在 5,326 或 5328 埠上等待進入連接允許駭客在您的電腦上進行活動。
圖 2 - 3 後門在惡意程式比率圖
圖 2 - 4 後門成長比率圖