




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第7章網絡病毒與防治7.1計算機病毒概述7.2計算機病毒的工作原理7.3病毒分類7.4計算機網絡病毒的開展7.5計算機網絡病毒的檢測、去除與防范7.6網絡病毒實例7.7本章小結練習題天馬行空官方博客:://;;QQ群:175569632計算機病毒從它誕生之日起到現在,已成為了當今信息社會的一個癌癥,它隨著計算機網絡的開展,已經傳播到信息社會的每一個角落,并大肆破壞計算機數據、改變操作程序、摧毀計算機硬件,給人們造成了重大損失。為了更好地防范計算機及網絡病毒,必須了解計算機病毒的機制,同時掌握計算機病毒的預防和去除方法。本章將學習以下主要內容:計算機病毒的定義;計算機病毒的工作原理;計算機病毒的分類;計算機網絡病毒及開展;病毒的去除方法和防護措施;著名的網絡病毒的介紹。天馬行空官方博客:://;;QQ群:175569632鬼不覺地進入了網絡和計算機系統。目前每天都有數十種新的病毒在網上發現。與此同時,各類病毒的變異品種也在網上四處橫行。如何發現和防治病毒在此時就變得尤為重要了。7.1.1病毒的定義美國計算機研究專家F.Cohen博士最早提出了“計算機病毒〞的概念。計算機病毒是一段人為編制的計算機程序代碼。這段代碼一旦進入計算機并得以執行,它就會搜尋其他符合其傳染條件的程序或存儲介質,確定目標后再將自身代碼插入其中,到達自我繁殖的目的。其特性在很多方面與生物病毒有著極其相似的地方。瘓,經濟損失達9000多美元,隨后一系列病毒事件的發生,才使人們對計算機病毒高度重視起來。計算機病毒的開展經歷了以下幾個主要階段:DOS引導階段;DOS可執行文件階段;混合型階段;伴隨、批次性階段;多形性階段;生成器、變體機階段;網絡、蠕蟲階段;視窗階段;宏病毒階段和互聯網階段。這些將在下面幾節中為大家進行穿插介紹。碼,與其所在環境相互適應并緊密配合,伺機到達它們的破壞目的。因此,這里所指的可控性并不是針對其散播速度和范圍的,而是對其產生根源的控制,也就是說是對人的控制。簡單地說,只要程序員和廣闊的計算機愛好者們不編寫那些流毒甚廣的病毒的話,那么也就無需為如何防治而絞盡腦汁了。當然此類說法純屬說笑,所以人們仍然需要深入了解計算機病毒的產生、傳染和破壞行為,以達知己知彼,由此方能百戰不殆。2.自我復制能力自我復制也稱“再生〞或“傳染〞。再生機制是判斷是不是計算機病毒的最重要依據。在一定條件下,病毒通過某種渠道從一個文件和一臺計算機傳染到另外沒有被感染的文件和計算機,輕那么造成被感染的計算機數據破壞和工作失常,重那么使計算機癱瘓。病毒代碼就是靠這種機制大量傳播和擴散的。攜帶病毒代碼的文件成為計算機病毒載體和帶毒程序。每一臺被感染了病毒的計算機,本身既是一個受害者,又是計算機病毒的傳播者,通過各種可能的渠道,如軟盤、光盤、活動硬盤、網絡去傳染其他的計算機。在染毒的計算機上曾經使用過的軟盤,很有可能已被計算機病毒感染,如果把它拿到其他機器上使用,病毒就會通過帶毒軟盤傳染這些機器。如果計算機已經聯網,通過數據和程序共享,病毒就可以迅速傳染與之相連的計算機,假設不加控制,就會在很短時間內傳遍整個世界。3.奪取系統控制權一般的正常程序由系統或用戶調用,并由系統分配資源。其運行目的對用戶是可見的和透明的。而就計算機病毒的程序性(可執行性)而言,計算機病毒與其他合法程序一樣,是一段可執行程序,但它不是一個完整的程序,而是寄生在其他可執行程序上,因此它享有一切程序所能得到的權力。當計算機在正常程序控制之下運行時,系統運行是穩定的。在這臺計算機上可以查看病毒文件的名字,查看或打印計算機病毒代碼,甚至拷貝病毒文件,系統都不會激活并感染病毒。病毒為了完成感染、破壞系統的目的必然要取得系統的控制權。計算機病毒一經在系統中運行,病毒首先要做初始化工作,在內存中找到一片安身之地,隨后將自身與系統軟件掛起鉤來執行感染程序,即取得系統控制權。系統每執行一次操作,病毒就有時機執行它預先設計的操作,完成病毒代碼的傳播和進行破壞活動。4.隱蔽性不經過程序代碼分析或計算機病毒代碼掃描,病毒程序與正常程序不易區別開。計算機病毒的隱蔽性表現在兩個方面:一是傳染的隱蔽性,大多數病毒在進行傳染時速度是極快的,一般不具有外部表現,不宜被人發現;二是病毒程序存在的隱蔽性,一般的病毒程序都夾在正常程序之中,很難被發現,而一旦病毒發作出來,往往已給計算機系統造成了不同程度的破壞。隨著病毒編寫技巧的提高,病毒代碼本身還進行加密和變形,使得對計算機病毒的查找和分析更為困難,容易造成漏查或錯殺。5.潛伏性一個編制精巧的計算機病毒程序,進入系統之后一般不會馬上發作,可以在幾周或者幾個月甚至幾年內隱藏在合法文件中,對其他系統進行傳染,而不被人發現。潛伏性愈好,其在系統中的存在時間就會愈長,病毒的傳染范圍就會愈大。只有在滿足其特定條件后才啟動其表現模塊,先是發作信息和進行系統破壞。其中一個例子就是臭名昭著的CIH病毒,它在平時會隱藏得很好,而只有在每月的26日發作時才會兇相畢露。使計算機病毒發作的觸發條件主要有以下幾種:(1)利用系統時鐘提供的時間作為觸發器,這種觸發機制被大量病毒使用。(2)利用病毒體自帶的計數器作為觸發器。病毒利用計數器記錄某種事件發生的次數,一旦計算器到達設定值,就執行破壞操作。這些事件可以是計算機開機的次數;可以是病毒程序被運行的次數;還可以是從開機起被運行過的程序數量等。(3)利用計算機內執行的某些特定操作作為觸發器。特定操作可以是用戶按下某些特定鍵的組合,可以是執行的命令,也可以是對磁盤的讀寫。被病毒使用的觸發條件多種多樣,而且往往是由多個條件的組合出發。大多數病毒的組合條件是基于時間的,再輔以讀寫盤操作,按鍵操作以及其他條件。其目的是破壞文件或系統。對于黑客軟件,它不能寄生,不可復制和感染文件,其目的是盜取密碼和遠程監控系統。7.2.3計算機病毒破壞行為計算機病毒的破壞性多種多樣。假設按破壞性粗略分類,可以分為良性病毒和惡性病毒。惡性病毒是指在代碼中包含有損傷、破壞計算機系統的操作,在其傳染和發作時會對系統直接造成嚴重損壞。它的損壞目的非常明確,如破壞計算機數據、刪除文件、格式化磁盤、破壞主板等,因此惡性病毒非常危險。良性病毒是指不包含立即直接破壞的代碼,只是為了表示其存在或為了說明某些事件而存在,如只顯示某些信息、播放一段音樂或沒有任何破壞動作(2)干擾系統運行,使運行速度下降。此類行為也是把戲繁多,如不執行命令、干擾內部命令的執行、虛假報警、打不開文件、內部棧溢出、占用特殊數據區、換現行盤、時鐘倒轉、重啟動、死機、強制游戲、擾亂串并接口等。病毒激活時,系統時間延遲程序啟動,在時鐘中納入循環計數,迫使計算機空轉,運行速度明顯下降。(3)占有磁盤空間和對信息的破壞。(4)搶占系統資源。(5)干擾I/O設備,篡改預定設置以及擾亂運行。(6)網絡病毒破壞網絡系統,非法使用網絡資源,破壞電子郵件,發送垃圾信息,占用網絡帶寬等。7.2.4計算機病毒的結構計算機病毒在結構上有著共同性,一般由引導局部、傳染局部、表現局部及其他局部組成。(1)引導局部也就是病毒的初始化局部,它隨著宿主程序的執行而進入內存,為傳染局部做準備。(2)傳染局部作用是將病毒代碼復制到目標上去。一般病毒在對目標進行傳染前,要判斷傳染條件,如CIH病毒只針對Windows95/98操作系統,判斷病毒是否已經感染過該目標等。(3)表現局部是病毒間差異最大的局部,前兩局部是為這局部效勞的。它破壞被傳染系統或者在被傳染系統的設備上表現出特定的現象。大局部病毒都是在一定條件下才會觸發其表現局部的。7.3病毒分類據最新統計,目前的病毒數量已超過了50000種。并以每月800個新病毒的速度遞增。按其攻擊類型來分,其中的大多數(74%)是寄生病毒(攻擊可執行文件),第二是宏病毒(19%),7%是引導扇區病毒。計算機病毒按照傳染方式分為引導型、文件型和混合型等3種病毒。下面將詳細介紹這3種病毒和Internet病毒。7.3.1引導型病毒1.引導記錄病毒引導記錄病毒攻擊用于引導計算機的程序。在軟盤上,一個引導記錄病毒可以感染軟盤引導記錄程序。而在硬盤上,一個引導記錄病毒可以感染活動分區引導記錄或主引導記錄的自舉程序。軟盤中的第一個扇區,0磁道、0磁頭、1扇區,保存為引導記錄使用,引導記錄中包括自舉例程,一種用于裝入操作系統的機器語言程序。之所以成為自舉程序是因為它讓計算機通過自舉讀取并執行一個短程序——引導代碼來裝入它自己,接下來再裝入操作系統的其余局部。并不一定是可引導的磁盤才能傳播引導記錄病毒。所有軟盤在格式化或硬盤引導時病毒就會被激活。甚至計算機不能從感染的磁盤啟動時(例如在軟盤中不包含相應的DOS系統文件時),它也要運行自舉例程,這正是病毒激活所需要的機制。就像駐留程序一樣,大多數引導記錄病毒在內存中安裝它自己,并且把它自己掛到計算機的BOIS和操作系統提供的各種系統效勞中。只要計算機是開著的,它在內存中就仍然是活動的,只要它們停留在內存中,就可以通過感染計算機訪問的軟盤來不斷傳播。引導記錄病毒在IBMPC病毒的總數中大約占5%,但是它們卻在每年報告的實際最終用戶感染中超過85%。2.軟盤引導記錄病毒病毒程序經常把軟盤引導記錄(FBR)作為攻擊目標,一個重要的原因是用戶經常錯誤地把軟盤留在軟驅中。這樣一個看起來無關痛癢的錯誤實際上為軟盤引導記錄病毒提供了惟一的進入方式。如果在驅動器中有一片磁盤,計算機從這里被配置進行引導,自舉程序此時會執行。病毒通過用它自己的程序來代替原來的自舉例程,同時病毒程序中也包括它自己的帶病毒的自舉例程,從而使得病毒能在其他程序運行前控制系統。然后病毒就可以感染硬盤了。軟盤引導記錄在系統重置期間獲取計算機的控制。在起動過程中,大多數PC中的BIOS都要確定軟驅中是否有軟盤以及計算機是否可以從這個軟盤中配置引導。如果BIOS在驅動器中找到軟盤,它就認定用戶想要從這個磁盤引導。在它定位磁盤之后,BIOS就會把軟盤引導記錄裝入計算機內存中,并執行它的自舉例程。在一塊感染的軟盤中,BIOS裝入的引導記錄是經過病毒感染的自舉例程,而不是通常的操作系統自舉例程。在引導期間,BIOS把對計算機的控制完全給與病毒程序而不是正常的自舉程序。當控制程序傳送給病毒之后,它就會得到對計算機上所有資源獨有的訪問權;如果在軟盤中有操作系統的話,就不會被裝入,也不會防止病毒的行為。大多數FBR病毒在引導過程中要在啟動操作系統之前把自己作為內存駐留驅動器裝入,通過這種方式,病毒就可以在計算機操作期間監視所有磁盤請求,并且任意感染其他軟盤。FBR病毒要完成其工作,就必須從軟盤上得到原來的FBR,并且啟動原來的引導過程,好似沒有病毒一樣。這非常重要,因為病毒要想存活下去就不能進行破壞。如果FBR病毒把自己安裝到內存中,感染了硬盤,并且導致軟盤啟動失敗,它很快就會被檢測去除。大多數病毒在軟盤最后的某一個扇區維護原來FBR的一份拷貝。在病毒把它自己安裝到內存之后,它就會把原來的FBR裝入內存,并執行原來的自舉例程,然后自舉例程正常的進行,完全意識不到病毒的存在。大多數軟盤包含數據,但是不帶有DOS操作系統文件。在病毒把控制傳送給原來的自舉例程后,它會顯示一個消息,如“Nonsystemdisk〞。這時,一般用戶就會認為是其錯誤地使用了數據盤引導,然后從驅動器取出磁盤重新引導。這就是為什么大多數FBR病毒在引導期間感染硬盤的MBR或活動分區引導記錄。這種感染確保即使軟盤沒有包含相應的操作系統文件,病毒仍然可以傳播到硬盤并且感染其他磁盤。最后,一小局部FBR病毒能夠維護他們的內存駐留狀態,即使在“熱〞重新啟動(即按<Ctrl>+<Alt>+<Del>組合鍵)時也是如此。如果計算機是熱啟動的,而病毒仍然駐留在內存中,病毒仍然可以感染其他磁盤,即使它未感染硬盤。當FBR病毒把它自己安裝到內存中并把它自己指定為代理磁盤效勞提供者之后,它還有時機進行感染。此后在DOS或它的程序要訪問軟盤(或硬盤)時,操作系統就會調用病毒。如果病毒不駐留在內存,僅訪問一塊被感染的軟磁盤不會引起計算機被感染。除非用戶從一塊被感染的軟盤引導,否那么FBR病毒絕對不會執行。如果它不能執行,它就不會感染硬盤和安裝自己作為駐留的效勞提供者。然而,如果計算機已經被感染而且病毒已經作為駐留的效勞提供者安裝,在病毒駐留時訪問未感染的軟盤肯定會使病毒傳播到軟盤上。當用戶或操作系統進行合法的磁盤請求時,幾乎所有的FBR病毒都會感染磁盤。磁盤請求通常會引起驅動器旋轉,并且會使驅動器的LED等亮起來。只有當用戶開始一些磁盤活動時,如文件和目錄的復制,軟盤才會旋轉。如果病毒要在某個任意時間傳播,用戶可能會注意到某些活動(通過雜音和LED等),并且疑心某件事做錯了。只有當用戶或操作系統請求磁盤活動時才感染新的軟盤,這樣做對病毒是有利的,有幾個原因是最重要的:如果用戶或操作系統請求使用磁盤,可能驅動器中實際上就有一個軟盤。其次,病毒可以在BIOS磁盤效勞提供者為正常的磁盤請求提供效勞前后立即暗中感染軟盤引導記錄。感染過程一般需要不到一秒鐘。因為用戶最可能請求磁盤活動,出現的驅動器旋轉就有了合理的解釋。通過這種方式,病毒就會有效地傳播到新的軟盤而不會暴露它的存在。在病毒要感染磁盤之前,它必須確定磁盤是否已經被感染。在大多數時候,病毒會把目標FBR裝入內存并與它自己的內容進行比較。如果FBR病毒確定目標軟盤沒有被感染過,它就會進行感染過程。大多數FBR病毒要把原來的FBR保存到軟盤中的另一個扇區,這樣如果用戶要從這個磁盤引導,病毒就可以啟動并駐留在內存中。FBR病毒總是把原來的引導記錄存儲在軟盤的一到兩處位置上:可能在被感染軟盤的最后或者在軟盤存儲根目錄結構的扇區。如果不細心的話,可能會造成存儲在這兩個位置的原來的FBR數據喪失。一般的1.44MB3.5吋軟盤在根目錄中可以存放224個文件。這個保存的目錄空間需要14個存儲扇區,其中大多數都沒有使用,因為很少有軟盤在根目錄中存放224個文件。許多FBR病毒認為根目錄的最后一個扇區沒有使用,把原來的引導記錄存放在這里。進而,如果用戶把一些文件復制到該磁盤中,可能要使用覆蓋的目錄條目,從而覆蓋已保存的FBR。這樣在以后用這個軟盤引導就會失敗。大多數FBR病毒會把原來的引導記錄存放在軟盤的最后某一個扇區中,也假定這些扇區是未經使用的。如果一個病毒用原來的引導記錄內容覆蓋其中的一個扇區,它可能恢復該磁盤中現有的文件數據,從而引起數據損壞。除此之外,許多病毒不會更新磁盤中的FAT以標識磁盤最后的扇區已被使用。如果一個用戶要向這個軟盤復制其他文件,原來的引導記錄就會被這些文件覆蓋,以后從這個軟盤引導時就會失敗。當FBR病毒把一個被病毒感染的自舉例程插入FBR,并且把原來的FBR的一份拷貝存儲在磁盤中的某個地方時,它能夠覆蓋一些數據。許多FBR病毒會覆蓋根目錄結構的最后一個扇區。如果這個扇區正在使用,存儲在這個扇區的任何文件目錄條目都會被損壞。幸而可以使用NortonDiskDoctor這類磁盤工具修復這種損壞。其他引導病毒把原來FBR的一份拷貝存儲在軟盤的最后。如果軟盤滿了,病毒就會覆蓋某個文件使用的一個扇區,從而至少損壞512字節的數據。不幸的是,在病毒覆蓋了軟盤上某個文件使用的扇區后,使用傳統的磁盤工具無法修復該扇區原來的內容。3.分區引導記錄病毒(1)分區引導記錄(PBR)可以把一個物理硬盤劃分成多個邏輯硬盤,每一個邏輯硬盤中都包含它自己的操作系統。結果每一個邏輯硬盤都需要它自己的分區引導記錄(PBR),用以裝入那個分區中特定的操作系統。PBR總是被存放在每個分區的第一個磁道、扇區和磁頭。PBR非常接近軟盤上的FBR,像FBR一樣,PBR有它自己的BIOS參數塊,這個參數塊描述它的邏輯硬盤的重要屬性。每個PBR還有它自己的自舉例程,用于裝入駐留在這個分區的操作系統。在系統啟動期間,主引導記錄(MBR)的自舉例程確定硬盤上哪一個分區是活動的。然后它通過讀取這個分區的第一個扇區裝入這個分區的PBR。如果這個PBR扇區包含一個有效的簽字,MBR自舉例程就會把控制傳送給PBR自舉例程。PBR自舉例程然后裝入這個分區中操作系統的其余局部。BIOS參數塊是PBR中惟一必須保持不動的局部(不像PBR后邊的簽字),這樣DOS和其他程序就能夠正確理解邏輯硬盤的布局。PBR經常成為攻擊的目標,因為在硬盤引導過程中,MBR自舉例程總是裝入并執行活動分區的引導記錄。如果一個病毒用它自己的PBR自舉例程代替原來的PBR自舉例程,可以肯定在硬盤引導期間它就會執行。(2)PBR病毒幾乎所有的軟盤引導記錄(FBR)病毒都會感染硬盤主引導記錄(MBR)或硬盤的活動分區引導記錄(PBR)。PBR病毒是另一種形式的FBR病毒,它駐留在邏輯硬盤分區的引導記錄中,而不是軟盤的引導記錄中。像FBR病毒一樣,PBR病毒也是一個程序,它駐留在PBR的自舉區域。要想使這個病毒激活,PBR必須在引導過程中被裝入并執行。很少有FBR病毒感染活動分區的PBR;大多數FBR病毒更愿意感染硬盤的MBR。PBR病毒并不比MBR病毒更差,但是創立它更困難,這就是這種病毒存在很少的原因。另一方面FormPBR病毒是今天世界上最普遍的病毒之一。PBR病毒不同于FBR病毒,當它執行時,它不會立即試圖感染其他軟盤。一般的FBR病毒在引導期間會感染硬盤,因為它要確保在將來從硬盤引導時允許病毒執行,并且能夠把它自己作為駐留驅動器安裝。而PBR病毒沒有這樣的需求,因為它已經駐留在硬盤中;它使用硬盤引導過程只是為了把它自己作為駐留驅動器安裝。引導過程中當PBR病毒執行并把自己安裝到內存后,它就會把原來PBR的一份拷貝裝入內存,并且把控制傳送給它的自舉程序。這個自舉程序然后裝入正常操作系統的其余局部,用戶最后會接受一個C:提示符。PBR病毒也像FBR病毒一樣,一旦它把自己安裝為內存駐留驅動器,所有磁盤系統效勞請求都要發送到病毒的處理程序。然后病毒檢查效勞請求,如果它選擇了這個效勞請求,就會去感染被訪問的磁盤。在病毒完成其破壞之后,它就會把請求重定向給原來的BIOS效勞器,這樣就可以提供正常的效勞了。PBR病毒把它自己安裝成為一個內存駐留的效勞提供者。完成這個任務之后,任何時候當用戶或操作系統要訪問某個軟盤時,病毒效勞提供者就會被激活并控制計算機。在大多數情況下,病毒會等待對軟驅的訪問,因此在任何時候使用軟盤時它都會感染軟盤。大多數PBR病毒把原來的引導記錄保存在被感染硬盤最后的某一個扇區中。因為幾乎沒有PBR病毒會去驗證目標病毒扇區是否被使用,它們可能會無意地覆蓋占據這個空間的某個文件的一局部。PBR病毒還會引起其他問題。即是病毒碰巧用原來的PBR覆蓋了硬盤最后的某個未使用的扇區,用戶以后仍然可以用它自己的數據覆蓋已保存的引導記錄。當用戶用其他數據覆蓋了保存的PBR后,原來的PBR就喪失了。以后從硬盤引導就會導致系統崩潰。這種崩潰是因為病毒裝入了它錯認為是原來PBR的數據,并且把控制傳送給了他自認為的自舉例程。如果PBR被覆蓋,病毒就會執行一堆垃圾機器代碼,而不是原來的自舉例程。有些PBR病毒會防止出現前面提到的情況。例如,它們可能會減少最后一個分區的大小把最后一個扇區留給自己使用,并且把原來的PBR記錄保存在這里。這樣,用戶就不會覆蓋原來的PBR分區記錄了。(3)分區引導記錄病毒的例子Form病毒是一種內存駐留的引導記錄感染病毒。它既不感染文件,也不像許多其他引導記錄病毒一樣,它感染活動分區的分區引導記錄,而不是硬盤上的主引導區記錄。當計算機從感染的軟盤或硬盤引導時,Form就駐留到內存中。當病毒駐留后,它會去感染訪問的所有非寫保護磁盤。Form占據系統內存頂端的2KB,并且在BDA的TotalmemoryinKbytes域增加2KB來擴大系統內存大小,從而為它自己保存空間。病毒截取BIOS磁盤系統效勞提供者以感染其他媒體。在病毒安裝到內存后,它檢查系統的日期,而且如果是這個月的18日,就會截取鍵盤系統效勞提供者。然后每次用戶按下一個鍵時,病毒就使PC揚聲器發出一個“單擊〞聲。如果鍵盤驅動程序直接安裝到計算機上,這種單擊聲可能不會出現,但是病毒仍然會適當傳染。病毒把原來的引導記錄和它的局部可執行代碼存放到硬盤的最后一個扇區或者軟盤中標記為損壞的簇。Form中包括以下文本:TheFORMVirussendsgreetingtoeveryonewho’sreadingthistext.FORMdoesn’tdestroydata!Don’tpanic!F*****SgotoCorinne.除了可能覆蓋原來的引導扇區之外,Form一般不會損壞文件和數據。4.主引導記錄病毒(1)硬盤主引導區記錄可以把一個物理的硬盤劃分成多個不同的邏輯盤,而且還可以為了組織數據的需要把一塊盤分成多個分區。例如,可以用一個分區存儲不同的操作系統或者在一個分區存儲字處理文件,而在另一個分區存儲程序,再用一個分區存儲游戲。主引導區記錄(MBR)是存儲于硬盤的第一個磁道、扇區、磁頭的一個結構,每個物理硬盤都包含正好一個MBR。MBR中包含一個分區表,它代表所有扇區及其各自分區的分配。程序需要用硬盤上的分區表(就像它們需要軟盤上的BIOS參數一樣)理解磁盤的特征。例如,硬盤上存在多少個分區(即邏輯盤)。MBR還包含一個以硬盤啟動時所使用的自舉程序。MBR的自舉例程類似于軟盤的自舉例程,它負責裝入默認的操作系統,并且把計算機引導到可用狀態。硬盤的MBR成為攻擊目標有兩個原因。首先,在所有PC硬盤的同一個物理位置上只包含一個硬盤主引導區記錄。因此,病毒編寫者可以方便地編寫出幾乎能夠在市場任何PC上起作用的病毒。其次,當計算機從硬盤引導時,MBR中的自舉例程總是要裝入執行的。如果病毒用它自己的MBR自舉例程代替原來的MBR自舉例程,在每次系統引導時它都會執行。在系統引導期間,在任何基于軟件的反病毒程序有時機裝入并保護系統之前,病毒會完全控制計算機。(2)主引導記錄區病毒絕大多數軟盤引導區記錄(FBR)病毒感染硬盤的主引導區記錄(MBR)。實質上MBR病毒是另一種形式的FBR病毒,它駐留在硬盤的主引導區記錄中而不是軟盤的引導區記錄中。就像FBR和PBR病毒一樣,在MBR病毒被激活以前,它要在引導時被裝入并執行。主引導區記錄病毒比分區引導記錄病毒更普遍。在PBR病毒感染前,它必須查找分區表找到活動分區,然后確定活動分區的引導扇區,并且感染引導扇區。MBR病毒的感染過程沒有這么復雜。在硬盤引導期間,ROMBIOS引導程序從連接到計算機的根本硬盤中裝入MBR。它然后驗證MBR在扇區的最后是否有正確的特征標記,如果是這樣的話,它就把控制傳送給MBR的自舉程序。在一個已感染的MBR中,病毒感染的自舉例程會代替原來的自舉例程。在ROMBIOS引導程序把控制傳送給MBR自舉程序的時候,病毒就得到了控制權。一般的MBR病毒把它自己安裝為內存駐留效勞提供者,就像FBR和PBR病毒一樣。大多數MBR病毒在帶毒的自舉例程中維護原來分區表的一份準確拷貝,因為DOS和許多應用程序需要這一信息來確定計算機上可用的邏輯盤。然而有些病毒可能不會在MBR中維護一份有效的分區表。任何時候當DOS和其他程序請求硬盤的MBR時,這種類型病毒安裝的駐留內存的效勞提供者就會隱藏感染,并且用原來有效的MBR和分區表的拷貝提供給請求的程序。一般的MBR病毒就像FBR和PBR病毒感染一樣,也需要把原來MBR的一份拷貝保存到硬盤的某個地方。以后,在計算機從已感染的硬盤引導并且病毒把它自己安裝為駐留的效勞提供者之后,病毒就要裝入原來的MBR并把控制傳送給這個MBR的自舉例程。原來MBR的自舉例程然后能夠裝入活動分區的PBR,會進行正常引導。有些病毒不會在磁盤的某個地方保存原來的MBR;在這種情況下,病毒會包含與原來的MBR相同的自舉功能。病毒完全憑自己把活動分區的PBR裝入,并把控制傳送給該PBR,完全越過了原來MBR的自舉程序。用于大多數硬盤的磁盤分區軟件(FDISK)在硬盤MBR之后會留下一個磁道的未用扇區。一般的MBR選擇其中的一個扇區存放原來的MBR,因為這些扇區在大多數系統中是不使用的。通常,一個種類的病毒會把原來的MBR存放在這一區域的同一位置。相應的病毒程序總是可以從這一區域的同一個扇區存放和取得MBR。MBR病毒以與FBR和PBR病毒同樣的方式把自己安裝成一個內存駐留的效勞提供者。作為磁盤效勞提供者,任何時候當用戶或操作系統要訪問某個磁盤時,病毒就能夠控制計算機。在最普遍的情況下,病毒會等待對軟盤的訪問,并且在對軟盤進行其他合法訪問時它就要感染軟盤。MBR病毒把原來的主引導記錄存放在硬盤第一個磁道的某個地方,因為病毒沒有檢查就假設這局部空間可以用于它自己的目標。不幸的是,并不總是這種情況。許多不同的磁盤管理和訪問控制包都把它們自己的自舉程序和數據存放在這一區域。如果病毒盲目地把原來MBR的一份拷貝保存到這里,它就可能會覆蓋磁盤驅動器,在以后的引導中引起系統崩潰。如果用戶從一塊未感染的軟盤引導并且要訪問硬盤,這樣做就不可能成功。病毒無法隱藏對分區表的修改,因為它沒有駐留在內存中。如果感染的MBR不包含相應的分區表,DOS就會拒絕它訪問硬盤。這種病毒不會以任何方式激活,但是它有時完成一系列隨機讀取。這種病毒能夠通過隨機讀、寫以及用原來的引導扇區/分區表覆蓋破壞數據。NYB病毒不像Form病毒,它不會在計算機屏幕上顯示文本信息。綜上所述,引導型病毒具有隱蔽性強、兼容性強等優點,作為一個成熟的病毒程序是不容易被發現的,其通用于DOS、Windows95操作系統。但它的缺點也很多,如傳染速度慢,一定要有帶毒軟盤啟動才能傳到硬盤;殺毒容易,只需改寫引導區即可,如使用命令:fdisk/mbr或kv3000/k。KV3000能查出所有引導型病毒,主板能對引導區寫保護,所以現在單純的引導型病毒已經很少了。7.3.2文件型病毒文件型病毒使用可執行文件作為傳播的媒介。它們使用DOS中3種根本的可執行文件格式:COM文件、EXE文件和SYS文件中的一種或多種格式作為攻擊目標。這種根本文件病毒通過把它自己的一份拷貝附加到一種未感染的可執行程序中,從而進行復制。然后它修改這種新的宿主程序,以便當程序執行時病毒能夠首先執行。大多數文件病毒都很容易為反病毒程序檢測和去除。首先,除了一局部例外,大多數文件病毒都在或接近可執行文件的入口點處感染。入口點是文件中操作系統開始執行程序的地方。感染入口點能夠保證當程序執行時病毒能夠控制計算機。(1)COM文件的感染COM文件格式是DOS可執行文件格式中最簡單的一種:COM文件的裝入過程也是最簡單的:DOS直接把程序讀入內存,然后跳到程序映射中的第一條指令(第一個字節)。當進行這個動作時,這個程序就完全控制了計算機,直到它最后終止時把控制返回給DOS。(2)前置型COM病毒文件型病毒通過在可執行文件映射的前部指令來感染COM文件。病毒能夠保證它至少能以4種不同的方式獲得控制,因為COM文件的執行必須從可執行文件映射的第一個字節開始。首先一種,病毒可以把它自己插入COM文件的前部,把原來的程序移到病毒代碼的后面。整個病毒就被放到可執行文件映射的前部,當程序裝入時它就會首先執行。這種感染方法稱為前置,因為病毒把它自己放到宿主COM程序的開始處,如圖7.1所示。圖7.1病毒可以在COM文件的可執行文件映射前不修改機器語言程序以便把控制傳送給病毒,這樣病毒就可以放到可執行文件的其他地方。病毒經常把它自己附加到被感染程序的最后,而只修改可執行文件映射到前面的幾條指令,這樣就可以把控制傳送給病毒代碼。在病毒改變程序的前幾條指令前,它必須記錄宿主程序的原來入口指令,這樣它完成后就可以修復宿主程序。如果不保存這些指令的話,當病毒把控制傳送給宿主程序時,PC很可能會崩潰和工作不正常,從而破壞病毒隱藏的企圖。這種感染方法稱為后置,因為病毒把它的代碼放到宿主程序的最后,如圖7.2所示。圖7.2(5)改進的覆蓋型COM病毒用于感染COM程序的最后一種方法稱為改進的覆蓋。假定病毒是V字節長,病毒會首先讀取宿主程序的前V個字節,然后把這一信息附加到宿主程序的最后。接下來病毒使用自己的V字節代碼覆蓋COM程序的前部,如圖7.4所示。在病毒完成其執行后會修復宿主程序并使之正常執行,因為未感染的宿主程序的信息已被保存。在這些方法中每一個都會在COM文件的入口點修改機器語言指令,以保證被感染的程序一經裝入執行就使病毒獲得對計算機的控制。它還意味著如果COM文件感染了病毒,病毒掃描程序只能掃描到它的有限局部(病毒掃描機制在“計算機網絡病毒的防范〞局部詳細介紹)。圖7.3圖7.4(6)EXE文件的感染盡管病毒使用多種方法感染COM文件,感染EXE格式文件只有一種方法。EXE文件有一個入口點變量,它通過程序頭標的代碼段(CS)和指令指針(IP)標識,如圖7.5所示。在EXE感染最一般的形式中,病毒完成以下操作序列。①在宿主程序中記錄宿主程序自己的原來入口點,這樣它以后就可以正常執行宿主程序。②把它自己的一份拷貝附加到宿主程序的最后。③在EXE文件的頭標改變入口點(使用CS和IP域)以指向病毒代碼。④在頭標中改變其他域,包括程序的裝入映射大小域以反映病毒的存在。注意映射大小如何被增加了病毒的大小V。還要注意CS和IP域指針現在指向病毒而不是指向原來的程序。這種感染方法保證一旦可執行文件映射裝入內存并執行,病毒就能得到控制。就像COM文件一樣,它也使得病毒的掃描更加方便。反病毒程序也可以方便地確定EXE文件的入口點,這樣就限制了掃描病毒的時間域范圍。圖7.5(7)SYS文件感染SYS文件格式很獨特,它有兩個入口點:Interrupt和Strategy。當操作系統在引導期間裝入文件時,這兩個入口點都獨立地執行。當用戶裝入感染的SYS文件時,病毒可以感染每一個入口點來控制計算機,如圖7.6所示。這兩個入口點都在設備驅動器文件的頭標中標識,因此SYS文件的感染過程類似于EXE文件的感染過程。圖7.6設備驅動器感染病毒要完成以下動作序列:①選擇它要修改的程序入口點:Strategy、Interrupt或者兩者都有。②在宿主程序中記錄宿主程序自己原來的入口點。這樣,它以后就可以執行原來的Strategy或Interrupt例程。③把它自己的一份拷貝附加到宿主程序的最后。④在SYS頭標中改變這兩個入口點中的一個或兩個,使之指向病毒代碼。簡單一點說,當用戶或操作系統執行被感染的程序時,SYS文件感染病毒就得到了計算機的控制。在大多數情況下,病毒會修改宿主程序,以便當程序執行時它能立即得到控制。當用戶執行一個被感染的程序時,DOS會把整個程序裝入內存,病毒也包括在內,并且從入口點開始執行程序。在被感染的文件中,病毒會修改入口點的位置或入口點的機器代碼以便病毒首先執行。在病毒的機器代碼開始執行后,它立即開始尋找并感染計算機中其他可執行程序或者它把自己建立為操作系統中的內存駐留的效勞提供者。作為一個效勞提供者,當操作系統或其程序由于某些原因執行、復制和訪問它們時,病毒就會感染這些可執行文件。文件感染病毒分為直接操作和內存駐留文件感染病毒兩種。被感染的文件已執行,直接操作文件感染病毒就會感染目錄上或硬盤上某個地方的其他程序文件。內存駐留文件感染病毒使用類似于引導感染病毒使用的方法把自己裝入計算機內存中。首先,這個病毒要檢查它是否已經作為系統效勞提供者把它自己插入到內存中了。用戶可能有許多已感染的程序,每一個程序都為病毒提供了不同的時機,使得病毒在計算時機話期間把自己裝入內存中(引導記錄病毒不關心這個問題,因為它們只在系統引導期間安裝一次。病毒不會成心地屢次把自己插入內存中作為效勞提供者)。如果病毒確定了計算機內存中沒有它自己的拷貝,它就會把自己安裝為駐留的效勞提供者。一旦一個已感染的程序和寫入這個程序的病毒啟動執行,直接操作文件感染病毒就會感染其他可執行程序。當病毒完成感染其他可執行程序后,它就會把控制傳送給宿主程序,并允許宿主程序執行。除了覆蓋型病毒以外的所有病毒都是這樣,覆蓋型病毒在感染期間會破壞宿主程序。用戶可能會注意到啟動被感染的程序時會增加的磁盤活動,因為被感染的程序一啟動直接操作病毒就必須搜索磁盤找到其他要感染的程序。用戶也可能注意到程序裝入和執行時比以前花費的時間更長了。隨著更多的文件被感染,病毒必須搜索越來越多的硬盤(或軟盤)以找到要感染的新文件。這有時可能要花幾分鐘,明顯表示出了問題。DOS提供了系統效勞,以便系統且有效地遍歷硬盤上的許多工程和目錄。直接操作病毒使用與文件查找程序定位特定文本串相同的方式并利用這些效勞定位要感染的新文件。直接操作病毒執行后,它會有效地把自己從內存中去除。因此,如果用戶在執行完感染的程序后再執行任何未感染的程序,這些程序不會被感染。內存駐留文件病毒的工作方式類似于相應的引導記錄病毒。當一個被感染的程序啟動時,病毒會把它自己安裝成操作系統中的內存駐留效勞提供者。從這時開始,任何時候當DOS或其他程序要讀、寫、執行或訪問一個程序時,病毒就會控制計算機。然后,當用戶引用程序文件時病毒就會感染它們。例如,每次用戶執行一個程序時,就會向DOS發出一個系統效勞請求,要求把程序裝入內存執行。如果病毒者實時內存駐留的,它就會在這個DOS請求時得到控制。在病毒了解了效勞請求后,它就會感染這個程序,并把原來的請求傳遞給DOS。然后DOS就會正常運行這個(新感染)程序??梢杂眠@樣的方法,修改INT8中斷,保存INT21中斷目前的地址,用INT8中斷效勞程序監測INT21中斷的地址是否改變,假設改變那么說明DOS已加載,那么可修改INT21中斷指向病毒感染段。以上是混合型病毒關鍵之處。7.3.4Internet病毒有關病毒和計算機網絡的好消息是網絡可以成為計算機病毒半滲透的障礙。一些最普遍的工作站病毒完全無法通過任何類型的網絡!然而,不同的網絡類型會受到不同類型病毒的感染。在Internet上的文件病毒可以毫無困難地發送。然而可執行文件病毒卻不能通過Internet在遠程站點感染文件。由于連接到Internet上的一臺計算機不能在另一臺連接到Internet的計算機上完成扇區級操作,所以引導型的病毒無法通過Internet傳播。另外,被宏病毒感染的文檔可以很容易地通過Internet以幾種不同的方式發送,如電子郵件、FTP或Web瀏覽器。宏病毒也像文件病毒一樣,無法通過Internet感染遠程站點上的文件。Internet只能作為被感染的數據文件載體。微型機上常見的某些計算機病毒,如感染磁盤系統區的引導型病毒和感染可執行文件的文件型病毒,也有專門攻擊計算機網絡的網絡型病毒,如特洛伊木馬病毒及蠕蟲病毒。在現階段,由于計算機網絡系統的各個組成局部、接口以及各連接層次的相互轉換環節都不同程度的存在著某些漏洞和薄弱環節,而網絡軟件方面的保護機制,通過感染網絡效勞器,進而在網絡上快速蔓延,并影響到各網絡用戶的數據平安以及機器的正常運行。所以計算機網絡一旦染上病毒,其影響要遠比單機染毒更大,破壞性也更大,計算機網絡必須要具備防范網絡病毒破壞的功能。對于基于DOS的計算機病毒,網絡可以分為以下3種類型:(1)基于文件效勞器的局域網,用戶可以把數據存儲到一個或多個中央文件效勞器,也可以從中取得數據。(2)端到端網絡,這里每一臺工作站都可以既作為效勞器又作為客戶機。在Windows95中默認情況下可以使用這種網絡模型。(3)對于信息高速公路網絡(意即Internet),數據從網絡中流過,但是不存放在網絡中,網絡的主要作用是作為數據導管。傳統型病毒的一個特點就是一定有一個“寄主〞程序,病毒就隱藏在這些程序里。最常見的就是一些可執行文件,像擴展名為.exe及的文件。但是,由于微軟的Word愈來愈流行,且Word所提供的宏命令功能又很強,使用Word宏命令寫出來的病毒也愈來愈多,于是就出現了以.doc文件為“寄主〞的宏病毒。另外,不需要寄主的病毒也出現了,它們就寄生在Internet上。如果Internet上的網頁只是單純用HTML寫成的話,那么要傳播病毒的時機可以說是非常小的。但是,為了讓網頁看起來更生動、更漂亮,許多語言也紛紛出籠,其中最有名的就數Java和ActiveX了。從而,它們就成為新一代病毒的溫床。Java和ActiveX的執行方式,是把程序碼寫在網頁上。當與這個網站連接時,瀏覽器就把這些程序碼讀下來,然后用使用者自己系統里的資源去執行它。這樣,使用者就會在神不知鬼不覺的狀態下,執行了一些來路不明的程序。對于傳統病毒來講,病毒是寄生在“可執行的〞程序代碼中的。新的病毒的機理告訴我們,病毒本身是能執行的一段代碼,但它們可以寄生在非系統可執行文檔里。只是這些文檔被一些應用軟件所執行。在德國漢堡一個名為ChaosComputer的俱樂部,其中某俱樂部成員完成了一種新型態的病毒——這種病毒可以找出Internet用戶的私人銀行資料,還可以進入銀行系統將資金轉出,不需要個人身份證明,也不需要轉賬密碼。當使用者在瀏覽全球網站時,這個病毒會自動經由ActiveX控制載入。ActiveX控制可搜尋使用者計算機的硬盤,來尋找IntuitQuicken這個已有全球超過九百萬使用者的知名個人理財軟件。一旦發現Quicken的檔案,這個病毒就會下轉賬指令。7.5計算機網絡病毒的檢測、去除與防范7.5.1計算機網絡病毒的檢測當一臺計算機染上病毒之后,會有許多明顯或不明顯的特征。例如,文件的長度和日期突然改變,系統執行速度下降或出現一些奇怪的信息或無故死機或更為嚴重的是硬盤已經被格式化了。常用的防毒軟件是如何去發現它們的呢?就是利用所謂的病毒碼(viruspattern)。病毒碼其實可以想象成是犯人的指紋,當防毒軟件公司收集到一個新的病毒時,就會從這個病毒程序中,截取一小段獨一無二足以表示這個病毒的二進制程序碼(binarycode),來當做掃毒程序識別此病毒的依據,而這段獨一無二的二進制程序碼就是所謂的病毒碼。在防,從防病毒、防黑客和災難恢復等幾個方面綜合考慮,形成一整套平安機制,才可最有效地保障整個網絡的平安。今天的網絡防病毒解決方案主要從以下幾個方面著手進行病毒防治。(1)以網為本,防重于治。防治病毒應該從網絡整體考慮,從方便減少管理人員的工作著手,透過網絡管理PC機。例如,利用網絡喚醒功能,在夜間對全網的PC機進行掃描,檢查病毒情況;利用在線報警功能,當網絡上每一臺機器出現故障、病毒侵入時,網絡管理人員都會知道,從而從管理中心處予以解決。(4)多層防御。多層防御體系將病毒檢測、多層數據保護和集中式管理功能集成起來,提供了全面的病毒防護功能,從而保證了“治療〞病毒的效果。病毒檢測一直是病毒防護的支柱,多層次防御軟件使用了3層保護功能:實時掃描、完整性保護、完整性檢驗。后臺實時掃描驅動器能對未知的病毒包括異形病毒和秘密病毒進行連續的檢測。它能對E-mail附加局部,下載的Internet文件(包括壓縮文件)軟盤及正在翻開的文件進行實時的掃描檢驗。掃描驅動器能阻止已被感染過的文件拷貝到效勞器或工作站上。完整性保護可阻止病毒從一個受感染的工作站擴散到效勞器。完整性保護不只是病毒檢測,實際上它能制止病毒以可執行文件的方式感染和傳播。完整性保護還可防止與未知病毒感染有關的文件崩潰和鏟除。完整性檢驗使系統無需冗余的掃描并且能提高實時檢驗的性能。集中式管理是網絡病毒防護最可靠、最經濟的方法。多層次防御病毒軟件把病毒檢測、多層數據保護和集中式管理的功能集成在同一產品內,因而極大地減輕了反病毒管理的負擔,而且提供了全面的病毒防護功能。(5)在網關、效勞器上防御。大量的病毒針對網上資源的應用程序進行攻擊,這樣的病毒存在于信息共享的網絡介質上,因而要在7.6網絡病毒實例7.6.1CIH病毒機制及防護CIH病毒屬文件型病毒,其別名有Win95.CIH,Spacefiller,Win32.CIH,PE_CIH,它主要感染Windows95/98下的可執行文件(PE格式,PortableExecutableFormat),目前的版本不感染DOS以及Windows3.X(NE格式,WindowsandOS/2,Windows3.1ExecuteFileFormat)下的可執行文件,并且在WindowsNT中無效。其開展過程經歷了v1.0,v1.1,v1.2,v1.3,v1.4總共5個版本,目前最流行的是v1.2版本。1.CIH病毒分析CIH病毒是迄今為止發現的最陰險的病毒之一。它加長度。CIH病毒本身的長度約為1KB左右。CIH1.2版的發作日期是每年的4月26日;CIH1.3版的發作日期是每年的6月26日;CIH1.4版的發作日期那么是每月的26日(有些變種是在27或28日發作)。所以在每月的26日之前,請務必備份自己的重要數據。這里所說的發作日是指病毒損壞硬盤和主板的日期。如果在某月的26日開機時,屏幕出現的提示是:DiskBootFailure,InsertSystemDiskAndPressEnter,然后您可能會插入系統軟盤啟動機器,但當需要轉到硬盤提示符時,卻得到InvalidDriveSpecification的信息,就說明硬盤的主引導區已經被改寫了,這極有可能說明CIH病毒已經成功地攻擊了你的系統了。2.CIH病毒發作現象CIH病毒發作時,將用凌亂的信息覆蓋硬盤主引導區和系統BOOT區,改寫硬盤數據,破壞FlashBIOS,用隨機數填充Flash內存,導致機器無法運行。CIH病毒對FlashBIOS的操作,僅在主板和芯片允許寫Flash存儲器時才有可能,所以該病毒發作時僅會破壞大多數可升級主板的FlashBIOS。一旦系統不幸遇到了這樣的情況,出了硬盤中的數據喪失外,很有可能主板也已經報廢,只能更換主板或請專業人員重新填寫FlashBIOS信息。CIH病毒有多個變種,只感染Windows95,Windows98的.EXE的.PE格式文件,病毒代碼分解為一個或多個不同大小的碎塊,潛伏在文件內部的不同的地方,文件總長度無變化。局部文件會產生各種各樣的不正常的特殊感染結果,例如在文件中的病毒體前部,執行文件在被執行中又被自身文件動態的覆蓋了一小局部代碼。但文件映像執行參數還首先指向病毒程序體,病毒有可能還會被執行或殘缺執行,有可能執行發作破壞指令,也有可能文件壞掉了不能再執行,造成某些查病毒軟件對此漏查。在某些文件中的病毒體,因為文件頭標格式特殊,CIH病毒躲藏在文件的后部,使某些查病毒軟件也會漏查漏殺。某些文件中的病毒,殘缺了一局部感染在文件內。某些殺毒軟件,沒有認真徹底研究透32位的PE文件格式,只查殺出大多數PE文件頭標前部潛藏的CIH病毒,而漏查了許多PE文件頭標深部感染的CIH病毒,這非常危險。有些殺毒軟件,只簡單地把文件中的CIH免疫程序安裝后,電腦就會對CIH系列的病毒產生免疫。以后不小心從網上下載含有CIH病毒的程序也大可放心的執行,其他所有沒中毒的程序也不會被感染。即使到了發作時,也不會發作,因為系統中根本沒常駐CIH病毒。安裝完畢后,可以將這3個疫苗文件刪除,然后,無論是開機、關機或重新進入Windows幾次,系統都有自動免疫功能,除非重裝Windows95/98系統,免疫才會失效。CIH病毒疫苗不常駐內存,每次開機,系統就會立刻自動執行C:\Windows\CIH.EXE一次,CIH病毒疫苗在系統的存儲器DR0作記號,然后結束程序執行。此后,即使再執行帶有CIH病毒的程序,病毒也不會常駐內存,因為,在內存常駐前,病毒會判斷免疫程序已經做的記號,病毒會認為自己已經掛在系統中。因此,CIH病毒不常駐內存,也不感染文件,更不會發作。任何時候當用戶翻開一個模板文件時,WordforWindows會檢查這個模板中是否包含局部宏。如果它包含一個特別的局部宏名字為AutoOpen,在文件翻開的時候WordforWindows就會執行局部宏中的指令。被Concept病毒感染的模板文件有一個特別編寫的“帶毒〞的AutoOpen宏。任何時候當用戶翻開一個被感染的模板文件時,WordforWindows就像對待正常的AutoOpen宏一樣自動執行帶有病毒的宏。當用戶翻開一個被感染的文件時,這個帶有病毒的宏就會被執行,并且把所有由Concept病毒組成的宏從模板文件的局部宏池移到WordforWindows的全局宏池。這些活動會自動進行,而不需要用戶的許可。在用戶完成字處理會話并退出WordforWindows后,WordforWindows自動把對全局宏池做的所有修改放到一個名為NORMAL.DOT的特殊文件中。NORMAL.DOT文件包含默認樣式信息,如默認啟動字體以及系統使用的所有默認全局宏。任何時候當這些信息在WordforWindows環境中被修改時(例如,通過添加新的全局宏),以及當用戶退出字處理器時,WordforWindows會自動把這些更新的信息保存到NORMAL.DOT中。不幸的是,這些修改未經與用戶交互就被保存起來,并且用戶沒有得到任何修改的通知。當用戶退出應用程序的時候,WordforWindows在保存NORMAL.DOT時會在屏幕上顯示正常的“Savingfile(保存文件)〞信息。然而,WordforWindows完成得如此之快以致大多數用戶不會注意它。在病毒更新全局池后,其中包括NORMAL.DOT文件,每次用戶啟動WordforWindows時,病毒就會自動裝入全局池。產生這種情況的原因是無論何時啟動WordforWindows,它都會自動從NORMAL.DOT模板文件自動裝入默認樣式設置和全局宏。在初始感染后,NORMAL.DOT文件中將包含所有Concept病毒宏,其中包括第一次感染計算機的AutoOpen宏的一份拷貝。當NORMAL.DOT在WordforWindows啟動期間翻開時,NORMAL.DOT中帶有病毒的AutoOpen宏就像在其他模板文件中一樣被執行。每次用戶啟動WordforWindows時,病毒就會自動執行,并且把它自己拷貝到全局宏池中。這使病毒在WordforWindows環境中獲得控制的第二種方式。圖7.7表示了宏病毒的感染過程。(2)病毒如何、何時感染新工程在“Concept〞病毒把它自己安裝到全局宏池中之后,對于進一步傳播到新的、未感染的文檔就不存在問題。除了病毒的AutoOpen宏以外,病毒還包含一個名為FileSaveAs的宏。在感染過程中病毒還可以把這個宏(從一個已感染的模板文件的局部池中)拷貝到全局宏池中。如果FileSaveAs宏在局部或全局宏池中存在,任何時候當用戶從File菜單中選擇SaveAs選項時,WordforWindows都要執行這個宏。在環境被感染后,如果用戶編輯一個未被感染的文檔,然后使用SaveAs選項保存一個拷貝,病毒的FileSaveAs宏就會被執行。這個帶病毒的宏要在文檔被保存之前把每一個帶病毒的宏(包括FileSaveAs和FileOpen)從全局宏池復制到文檔的局部宏池中。這個宏還把文件類型從一種標準文檔格式改變為容易感染的.DOT格式;然而,它不會更改文件名。最后,這個宏允許WordforWindows以通常的方式保存這個新感染的文件。WordforWindows會自動在文件的局部池中保存所有帶有病毒的宏,因為這個文件已經被內部轉化成一種模板格式。注意WordforWindows根據文件的內容而不是文件名確定文件類型(文檔還是模板)。因此,即使新感染的模板文件也有一個不正確的擴展名(.DOC),WordforWindows仍然可以正確地使用這個文件工作,如圖7.7所示。圖7.7(3)病毒可能做的潛在破壞為了進行傳播,宏病毒必須把標準文檔文件轉換成包含病毒宏的模板文件。一旦一個WordforWindows模板文件包含宏,它就只能被保存成模板文件;否那么,宏的內容就會喪失。WordforWindows不允許用戶把已感染的文件保存為文檔文件,因為文件感染后就包含宏了。宏病毒像任何其他病毒一樣,能夠惡毒地破壞計算機中的程序和數據;然而,宏病毒的感染不會帶來不成心的副作用。(4)臺灣No.1宏病毒1995年,當發現世界上第一個宏病毒以后不久,便在我國臺灣地區出現了第一個中文的“十三號臺灣這樣的題是用心算無法正常解決的。假設不幸病毒發作了,不能用一般的計算器程序如Windows自帶的計算器來算這個20位的計算式,因為這些程序在算高位數時會有誤差。正確的做法是,趕快利用另外一臺計算機上的Word宏程序來算,才能精確算出數值。例如:counter=int(7009×3261×1375×4262×91)如此算出來的值“才是正確的。當你輸入正確的數值,病毒會“恭賀你答對了〞,接著出現一份讓你哭笑不得的文件。如果你答錯了,病毒就會展現它所謂的“震撼教育〞,那就是開出20份新文件。你的計算機系統假設具有音效功能的話,還可以聽到嘩嘩聲。在開出的20份新文件中,最后一份文件會顯示出“宏病毒〞的字樣,而且又出現一道新的心算考試題。如果再答錯了,就再開20份文件,再來一道新的心算考試題……如此循環下去,不但占用了內存,當天無法使用Word,還會造成硬盤文件鏈喪失。要防治“十三號臺灣No.1宏病毒〞,也要從防和治兩方面著手:防的重要而有效的方法是安裝能防毒宏的防毒軟件。如果計算機未安裝具有防毒宏的防毒軟件,那么可以用更改系統日期的方法,將計算機系統的日期跳過13日。當翻開感染計算機病毒的文件之后,可在Normal.dot里面看到它含有AutoOpen宏,單擊“刪除〞鈕將它去除掉即可。但此法無法預防其他宏病毒,而且假設沒有將所有的宏病毒去除干凈的話,就算將Word整個刪除、重新安裝,計算機病毒依然會存在。宏病毒大都在Internet與BBS網絡上流傳,目前只有靠網絡上大家都來防宏病毒,才能真正鏟除網絡上的宏病毒。繼“十三號臺灣No.1宏病毒〞在臺灣掀起一陣波濤之后,“臺灣SuperNo.1宏病毒〞也悄然出現。這種計算機病毒不但會感染Word文件,最可怕的是還會自動格式化用戶的硬盤。這種計算機病毒主要感染MicrosoftWord6.0以上的版本,也是跨平臺病毒,發作日期在每月13日、25日、10月10日等;感染病毒的病癥有:出現猜數字對話框、出現音響、無條件格式化C盤、顯示信息等。顧名思義“臺灣SuperNo.1〞有超越取而代之的意思。事實上,它的破壞力確實超過了“十三號臺灣No.1宏病毒〞。(5)宏病毒的去除與防治雖然Word的宏功能為那些心懷叵測的人提供了一種簡單高效地制造新病毒的手段,但是防治這類病毒絕非像某些廣告或文章所說的那樣難,尤其是與那些用復雜的計算機編程語言編制的病毒相比,宏病毒的防治要容易得多!下面談談對該病毒的防治。當疑心系統帶有宏病毒時,首先應查看是否存在“可疑〞的宏。所謂可疑的宏是指用戶自己沒有編制過,也不是Word默認提供而新出現的宏。尤其對以“Auto〞開頭的宏,更應高度警惕。如果有這類宏,很可能就是宏病毒,最好將其刪去。查看宏的方法是在翻開某種模板的Word文檔后,用“工具〞菜單中的“宏〞選項,將當前模板使用的所有的宏調出進行查看。平時在沒有宏病毒的時候,不妨對系統已有的和自己編制的宏做一個文件清單,以便隨時對照!用戶在新安裝了Word后,可翻開一個新文檔,將Word的工作環境按自己的使用習慣進行設置,并將需要使用的宏一次編制好,做完后,保存新文檔,使Normal.dot模板改變。新的Normal.dot現在含有你需要的使用設置并絕對沒有宏病毒,可將這份干凈的Normal.dot備份下來,這樣你就有了一份絕對可靠的Normal.dot模板。在遇到有宏病毒感染或疑心感染了宏病毒的時候,可隨時用備份的Normal模塊來覆蓋當前的Normal.dot模板。Normal.dot在用戶沒有另外指定存放模板的路徑時,應該在Word(或Office)的Templates目錄下。如果用戶自己編制有Autoxxxx這類宏,建議將編制完成的結果記錄下來,即將其中的代碼內容打印或抄錄下來,放在手邊備查。這樣,當Word感染了宏病毒或疑心有宏病毒的時候,可以翻開該宏,與記錄的內容進行對照。如果其中有一處或多處被改變或者增加了一些原來沒有的語句,那么不管是否能看懂這些代碼,都應將這些語句統統刪除,僅保存原來編制的內容。如果你沒有編制過任何以“Auto〞開頭的Word宏,現在系統運行不正常,而又完全能排除是由其他硬件故障或系統軟件配置問題引起的。那么,在翻開“工具〞菜單的“宏〞選項后,如果看到有這類宏,最好執行刪除自動宏的操作。因為即便錯刪了,也不會對Word文檔內容產生任何影響,僅僅是少了相應的“宏功能〞。如果需要,還可以重新編制。如果要使用外來的Word文檔且不能判斷這些“外來客〞是否帶宏病毒,有兩個做法是有效的:如果必須保存原來的文檔編排格式,那么用Word。翻開文檔后,就需要用上述的幾種方法進行檢查,只有在確信沒有宏病毒后,才能執行保存該文檔的操作。另一個方法是,如果沒有保存原來文檔的排版格式的必要,可先用Windows提供的書寫器(對使用Windows3.x而言)或寫字板(對使用Windows95而言)翻開外來的Word文檔,將其先轉換成書寫器或寫字板格式的文件并保存后,再用Word調用。因為書寫器或寫字板是不調用也不記錄和保存任何Word宏的,文檔經此轉換后,所有附帶其上的宏都將喪失,當然,這樣做將使該Word文檔中所有的排版格式也一并喪失。在調用外來的Word文檔時,除了用書寫器或寫字板對Word宏進行“過濾〞外,還有一個簡單的方法,就是在調用Word文檔時先禁止所有的以Auto開頭的宏的執行。這樣能保證用戶在平安啟動Word文檔后,再進行必要的病毒檢查。為此,對于使用Word97以前版本的用戶,需要自行編制一個名為AutoExec的宏。這個宏在執行時,將關閉其他所有自動執行的Word宏。將AutoExec宏保存到一個另外命名的模板中。比方AV.dot,當要使用外來的Word文檔時,將含有AutoExec的AV模板改名為Normal.dot模板(應先備份原來的Normal.dot模板);如果不使用外來文檔,可以將原來備份的Normal.dot模板再改名拷貝回來。AutoExec宏的參考代碼如下。SubMAINDisableAutoMacrosEndSub對于使用Word97版本的用戶,Word97已經提供此項功能,將其激活或翻開即可。方法是,單擊“工具〞菜單→“選項〞→“常規〞,選擇“宏病毒防護〞選項,(1)CoderedCodered發現日期為:2001/7/18,別名:W32/Bady.worm?。該蠕蟲感染運行MicrosoftIndexServer2.0的系統或是在Windows2000IIS中啟用IndexingService(索引效勞)系統。該蠕蟲利用一個緩沖區溢出漏洞進行傳播(未加限制的IndexServerISAPIExtension緩沖區使Web效勞器變得不平安)。蠕蟲只存在于內存中,并不向硬盤中拷文件。蠕蟲的傳播是通過TCP/IP協議和端口80,利用上述漏洞,蠕蟲將自己作為一個TCP/IP流直接發送到染毒系統的緩沖區,蠕蟲依次掃描Web,以便能夠感染其他的系統。一旦感染了當前的系統,蠕蟲會檢測硬盤中是否存在c:\notworm,如果該文件存在,蠕蟲將停止感染其他主機。蠕蟲會改寫WWW站點,在Web頁中寫入包含下面的代碼:<html><head><metaequiv=″Content-Type″content=″text/html;charset=English″><title>HELLO!</title></head><body><hrsize=5><fontcolor=″red″><palign=″center″>Welcometo://worm!<br><br>HackedByChinese!</font></hr></body></html>該頁面的顯示結果為:Welcometo://worm!HackedByChinese!①病毒依賴的系統:WindowsNT/2000(安裝且運行了IIS效勞程序)。②病毒的感染:通過IIS漏洞,使IIS效勞程序處理請求數據包時溢出,導致把此“數據包〞當作代碼運行,病毒駐留后再次通過此漏洞感染其他效勞器。③病毒的發作:強行重新啟動計算機。④CodeRedII(紅色代碼2)是CodeRed(紅色代碼)的改進版。它不同于以往的文件型病毒和引導型病毒,只存在于內存,傳染時不通過文件這一常規載體,直接從一臺電腦內存到另一臺電腦內存。和CodeRed不同的是CodeRedII病毒體內還包含一個木馬程序,這使得CodeRedII擁有前身無法比較的可擴充性,只要病毒作者愿意,隨時可更換此程序來到達不同的目的。完畢后初始化病毒體內的一個隨機數發生器,此發生器產生用于病毒感染的目標電腦IP地址。每個病毒線程每100毫秒就會向一隨機地址的80端口發送一長度為3818字節的病毒傳染數據包。完成上述工作后病毒將系統目錄下的CMD.EXE文件分別復制到系統根目錄\inetpub\scripts和系統根目錄\progra~1\common~1\system\MSADC目錄下,并取名為root.exe。然后從病毒體內釋放出一個木馬程序,復制到系統根目錄下,并取名為explorer.exe,此木馬運行后會調用系統原來的explorer.exe,運行效果和正常explorer程序無異,但注冊表中的很多項已被修改。由于釋放木馬的代碼是個循環,如果在目的目錄下explorer.exe發現被刪,病毒又會釋放出一個。然后到以下鏈接,下載補丁修補漏洞:Release.asp?ReleaseID=30800?WindowsNTversion4.0需要升級到SP6,請到以下網站下載:ntserver/default.asp然后到以下鏈接,下載補丁修補漏洞:Release.asp?ReleaseID=308332.“尼姆達〞病毒2001年9月18日,網絡界再次拉響防空警報:一種被命名為“尼姆達〞(Nimda)的危險程度4級的電腦病毒開始肆虐網絡——這是迄今為止最高級別的病毒。只要想到CIH造成的危害,尼姆達的級別之高就令我們不寒而栗。“尼姆達〞病毒是一種網絡新型蠕蟲,也是一個病毒,它通過email、共享網絡資源、IIS效勞器傳播。同時,它也是一個感染本地文件的新型病毒。(1)“尼姆達〞病毒感染系統的類型Nimda蠕蟲病毒按字母的順序反過來讀就是admin,是系統管理員的意思。該病毒于2001年9月18日上午開始傳播,并迅速感染了互聯網上的電腦和效勞器。這種病毒還被稱作readme.exe和W32.Nimda,首次使用4種不同的方式不僅感染運行Windows95/98/Me/2000操作系統的計算機,而且還能感染運行Windows2000和WindowsNT操作系統的效勞器。(2)“尼姆達〞病毒傳染途徑尼姆達病毒的傳播可以通過4種方式:感染文件
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 行政管理過程中的案例分析試題及答案
- 軟考網絡工程師提升建議試題及答案
- 數據庫應用中的倫理討論試題及答案
- 網絡工程師在新時代的角色轉變試題及答案
- 測試流程中的角色分配與職責試題及答案
- 2025年信息系統項目管理師備考心得與試題及答案
- 行政組織中的社會網絡與合作關系分析試題及答案
- 制造業中數字孿生技術的財務效益分析
- 教育培訓中的數字化辦公模式創新
- 雜技表演國際交流企業制定與實施新質生產力項目商業計劃書
- 中石油加油站改造工程施工方案
- 2024年中級注冊安全工程師《安全生產專業實務(道路運輸安全)》真題及答案
- 形勢與政策(吉林大學)智慧樹知到答案2024年吉林大學
- 一般狀態評估(健康評估課件)
- β內酰胺類抗菌藥物皮膚試驗指導原則2024課件
- 中型水庫除險加固工程蓄水安全鑒定自檢報告
- 弱電機房工程報價清單
- 口腔醫院感染預防與控制
- 電弧增材制造工藝及其應用
- YALEBROWN強迫量表完全
- 醫療機構消毒記錄表清潔消毒日檢查記錄表
評論
0/150
提交評論