電腦病毒是怎樣工作(2)
電腦病毒是怎樣工作
2、程序型電腦病毒是怎么傳播的。
電腦病毒傳播最主要的途徑是網(wǎng)絡(luò),還有軟盤(pán)和光盤(pán)。比如,我正在工作時(shí),朋友拿來(lái)一個(gè)帶電腦病毒的軟盤(pán),比如,該電腦病毒感染了磁盤(pán)里的A文件,我運(yùn)行了一下這個(gè)A文件,電腦病毒就被讀如內(nèi)存,如果你不運(yùn)行染毒文件,程序型電腦病毒是不會(huì)感染你的機(jī)器的(不要罵,我這里說(shuō)的是程序型電腦病毒,后面我會(huì)說(shuō)引導(dǎo)型電腦病毒,他只要打開(kāi)軟盤(pán)就會(huì)感染)當(dāng)染毒文件被運(yùn)行,電腦病毒就進(jìn)入內(nèi)存,并獲取了內(nèi)存控制權(quán),開(kāi)始感染所有之后運(yùn)行的文件。比如我運(yùn)行了WORD。EXE ,則該文件被感染,電腦病毒把自己復(fù)制一份,加在WORD.EXE文件的后面,會(huì)使該文件長(zhǎng)度增加1到幾個(gè)K。(不是所有電腦病毒都這樣,我舉這個(gè)離子只是想介紹電腦病毒感染過(guò)程)
好,接下來(lái),比如說(shuō)我關(guān)機(jī)了,則內(nèi)存中的電腦病毒被清除,我機(jī)子中所有的染毒文件只有WORD.exe。第二天,我又開(kāi)機(jī)時(shí),內(nèi)存是干凈的。比如我需要用WORD,于是,該染毒文件中的電腦病毒被讀如內(nèi)存,繼續(xù)感染下面運(yùn)行的程序,周而復(fù)始,時(shí)間越長(zhǎng),染毒文件越多。
到了一定時(shí)間,電腦病毒開(kāi)始發(fā)作(根據(jù)電腦病毒作者定義的條件,有的是時(shí)間,比如CIH,有的是感染規(guī)模等等)執(zhí)行電腦病毒作者定義的操作,比如無(wú)限復(fù)制,占用系統(tǒng)資源、刪除文件、將自己向網(wǎng)絡(luò)傳播甚至格式化磁盤(pán)等等。
但是,無(wú)論如何,電腦病毒只不過(guò)是一段代碼,他不可能破壞硬件(歡迎和我討論),就算是CIH也不是破壞硬件,他只是改寫(xiě)了BIOS中的數(shù)據(jù),實(shí)際上還是軟破壞。什么叫破壞硬件?就是電腦病毒發(fā)作時(shí),你的硬盤(pán)啪的一下裂成兩半,可能嗎?
所以,完全不必懼怕電腦病毒,他不會(huì)讓我門(mén)受到太大的經(jīng)濟(jì)損失,如果我們養(yǎng)成良好的工作習(xí)慣的話(huà)(比如自己的文檔不要保存在C盤(pán)等,后面我會(huì)細(xì)說(shuō))
3、引導(dǎo)型電腦病毒的工作原理
看了前面的電腦病毒傳染過(guò)程,大家很容易想到,只要我啟動(dòng)計(jì)算機(jī)后不運(yùn)行染毒程序,直接刪除不就可以了。實(shí)際上,現(xiàn)在的電腦病毒沒(méi)有那么弱智的,下面我門(mén)來(lái)看看其他的幾種傳染機(jī)制,首先看看引導(dǎo)型電腦病毒。剛才說(shuō)了,電腦病毒必須進(jìn)入內(nèi)存才可以繼續(xù)感染,只有被運(yùn)行他才可以進(jìn)入內(nèi)存,那么與等用戶(hù)來(lái)運(yùn)行,如果用戶(hù)長(zhǎng)期不用這個(gè)染度文件,豈不是等的花而也謝了。引導(dǎo)型電腦病毒感染的不是文件,而是磁盤(pán)引導(dǎo)區(qū),他把自己寫(xiě)入引導(dǎo)區(qū),這樣,只要磁盤(pán)被讀寫(xiě),電腦病毒就首先被讀取入內(nèi)存。這就是為什么殺毒要用干凈的啟動(dòng)盤(pán)啟動(dòng),為的就是防止引導(dǎo)型電腦病毒。下面我詳細(xì)的談一下磁盤(pán)引導(dǎo)區(qū),看不懂的可以跳過(guò)去。
4、引導(dǎo)型電腦病毒是如何傳播的
在計(jì)算機(jī)啟動(dòng)時(shí),必須讀取硬盤(pán)主引導(dǎo)區(qū)獲得分區(qū)信息,再讀取C:盤(pán)引導(dǎo)區(qū)獲取操作系統(tǒng)信息,這時(shí)候任何殺毒軟件都無(wú)法控制,這樣我先介紹一下計(jì)算機(jī)的啟動(dòng)順序,大家只要記住一點(diǎn)就是:任何程序都要被讀入內(nèi)存才會(huì)起作用。
計(jì)算機(jī)加電后,內(nèi)存是空的,首先從BIOS中讀取一些啟動(dòng)參數(shù)到內(nèi)存中,這些命令控制計(jì)算機(jī)去做下一步工作就是自檢。(BIOS就是在ROM中的基本輸入輸出系統(tǒng)的意思,ROM是只讀存儲(chǔ)器,因?yàn)橛?jì)算機(jī)是一個(gè)機(jī)電設(shè)備,他不會(huì)自己干什么事情,必須由軟件,也就是人事先寫(xiě)好的程序來(lái)控制他工作,而這些程序必須被讀入內(nèi)存才可以控制計(jì)算機(jī),哈哈越扯越遠(yuǎn)了,不說(shuō)了,在將就變成計(jì)算機(jī)基礎(chǔ)講座了,哈哈)
接下來(lái),計(jì)算機(jī)自檢,發(fā)現(xiàn)硬盤(pán),讀取硬盤(pán)主引導(dǎo)程序到內(nèi)存中,再讀取C盤(pán)的引導(dǎo)程序到內(nèi)存中,再讀取操作系統(tǒng)文件到內(nèi)存中,然后開(kāi)始由操作系統(tǒng)文件控制計(jì)算機(jī)開(kāi)始啟動(dòng)。啟動(dòng)完畢后,讀入各種自動(dòng)運(yùn)行的文件,比如天網(wǎng)放火墻、QQ、電腦病毒監(jiān)測(cè)軟件、等等,
前面說(shuō)過(guò),誰(shuí)先進(jìn)入內(nèi)存,誰(shuí)先占據(jù)系統(tǒng)控制權(quán),從上面的啟動(dòng)順序可以發(fā)現(xiàn),如果電腦病毒在引導(dǎo)區(qū),那么,他被讀入內(nèi)存的時(shí)候,殺毒軟件還不知道在那里呢。
舉個(gè)離子:比如我拿了一張染有引導(dǎo)型電腦病毒的軟盤(pán)用,當(dāng)我雙擊A盤(pán)圖標(biāo)后,計(jì)算機(jī)開(kāi)始讀軟盤(pán),首先讀入軟盤(pán)引導(dǎo)區(qū),電腦病毒隨之進(jìn)入內(nèi)存,并立即把自己寫(xiě)入硬盤(pán)引導(dǎo)區(qū)(如果開(kāi)了電腦病毒檢測(cè),則時(shí)可以檢測(cè)到并殺之)。如果沒(méi)有裝殺毒軟件,檢測(cè)布道,則下次開(kāi)機(jī)時(shí),計(jì)算機(jī)自檢之后,讀硬盤(pán)引導(dǎo)區(qū)時(shí)就會(huì)同時(shí)讀入電腦病毒,接下來(lái),電腦病毒獲得系統(tǒng)控制權(quán),改寫(xiě)操作系統(tǒng)文件,隱藏自己,然后計(jì)算機(jī)繼續(xù)啟動(dòng)進(jìn)入WIN200桌面,然后電腦病毒檢測(cè)才開(kāi)始運(yùn)行,電腦病毒完全可能已經(jīng)把自己偽裝起來(lái),讓殺毒軟件找不到。
所以這中電腦病毒一定要用啟動(dòng)盤(pán)啟動(dòng)后,再殺,就是為了跳過(guò)讀硬盤(pán)引導(dǎo)區(qū)那一段。在后面我會(huì)纖細(xì)介紹。
5、電腦病毒如何自動(dòng)把自身裝入內(nèi)存。
剛才介紹了現(xiàn)在的電腦病毒不會(huì)等待用戶(hù)去運(yùn)行染毒文件才進(jìn)駐內(nèi)存,他們都有自己的辦法運(yùn)行自己,進(jìn)駐內(nèi)存,但是有一個(gè)共同的特征就是,他必須把自己放在合適的位置,讓系統(tǒng)在啟動(dòng)的某個(gè)階段自動(dòng)去調(diào)用他。因?yàn)橛?jì)算機(jī)剛剛加電的時(shí)候,系統(tǒng)控制權(quán)是在BIOS手里的(因?yàn)樗钤缪b入內(nèi)存),而B(niǎo)IOS是保存在只讀的ROM中的,所以這時(shí),系統(tǒng)是無(wú)毒的,所以引導(dǎo)型電腦病毒要做的就是在BIOS向操作系統(tǒng)交權(quán)之前也就是讀取啟動(dòng)盤(pán)時(shí)截取之。
那么程序型電腦病毒怎么把自身裝如內(nèi)存呢?他沒(méi)有截取控制權(quán)的這個(gè)能力,BIOS會(huì)順利的把控制權(quán)交給操作系統(tǒng),這時(shí),用戶(hù)看到的就是開(kāi)始啟動(dòng)WIN200,由于操作系統(tǒng)在啟動(dòng)時(shí)會(huì)讀取大量的動(dòng)態(tài)聯(lián)結(jié)庫(kù)文件,電腦病毒就可以把自己放在一個(gè)合適的位置上,然后告訴WIN2000啟動(dòng)時(shí)把自己讀如內(nèi)存,這一步很好實(shí)現(xiàn),比如大家都知道,QQ啟動(dòng)時(shí)會(huì)被自動(dòng)運(yùn)行,實(shí)際上,程序型電腦病毒自動(dòng)運(yùn)行自己的辦法和QQ從本質(zhì)上是相同的。就是讓系統(tǒng)在啟動(dòng)的某個(gè)階段自動(dòng)去調(diào)用而已。