電腦病毒結(jié)構(gòu)介紹
電腦病毒結(jié)構(gòu)介紹
從鬼影病毒開(kāi)始,最近利用MBR手法的病毒逐漸普及,而想分析此類病毒,難免需要用到MBR和磁盤(pán)引導(dǎo)等基礎(chǔ)知識(shí)。因此利用休息時(shí)間整理了一點(diǎn)東西,希望對(duì)想研究或了解該手法的同學(xué)有些幫助。以下就是學(xué)習(xí)啦小編為大家整理到關(guān)于電腦病毒結(jié)構(gòu)的相關(guān)知識(shí),大家一起來(lái)看看吧!!!
電腦病毒結(jié)構(gòu)介紹知識(shí)一:
計(jì)算機(jī)病毒是由三個(gè)部分構(gòu)成:感染部分,表現(xiàn)破壞部分,激發(fā)部分。
計(jì)算機(jī)病毒(Computer Virus)是編制者在計(jì)算機(jī)程序中插入的破壞計(jì)算機(jī)功能或者數(shù)據(jù)的代碼,能影響計(jì)算機(jī)使用,能自我復(fù)制的一組計(jì)算機(jī)指令或者程序代碼。
計(jì)算機(jī)病毒具有傳播性、隱蔽性、感染性、潛伏性、可激發(fā)性、表現(xiàn)性或破壞性。計(jì)算機(jī)病毒的生命周期:開(kāi)發(fā)期→傳染期→潛伏期→發(fā)作期→發(fā)現(xiàn)期→消化期→消亡期。
計(jì)算機(jī)病毒是一個(gè)程序,一段可執(zhí)行碼。就像生物病毒一樣,具有自我繁殖、互相傳染以及激活再生等生物病毒特征。計(jì)算機(jī)病毒有獨(dú)特的復(fù)制能力,它們能夠快速蔓延,又常常難以根除。它們能把自身附著在各種類型的文件上,當(dāng)文件被復(fù)制或從一個(gè)用戶傳送到另一個(gè)用戶時(shí),它們就隨同文件一起蔓延開(kāi)來(lái)。從而感染其他程序,對(duì)計(jì)算機(jī)資源進(jìn)行破壞,所謂的病毒就是人為造成的,對(duì)其他用戶的危害性很大。
電腦病毒結(jié)構(gòu)介紹知識(shí)二:
先簡(jiǎn)單介紹一下硬盤(pán)上相關(guān)結(jié)構(gòu):
1、MBR(主引導(dǎo)記錄)
硬盤(pán)第一個(gè)物理扇區(qū)為MBR,當(dāng)我們選擇從硬盤(pán)啟動(dòng)時(shí),由 bois從該扇區(qū)讀入引導(dǎo)代碼。MBR關(guān)鍵數(shù)據(jù)可分為3部分:
(1) 引導(dǎo)代碼
(2) 分區(qū)表
(3) 結(jié)束標(biāo)志(55AA)
分區(qū)表用以管理整個(gè)磁盤(pán)空間的劃分。它從MBR的0x1BE偏移開(kāi)始,有4個(gè)表項(xiàng),每項(xiàng)16個(gè)字節(jié),因此最多只能可以建立4個(gè)主分區(qū)。(微軟為了克服這個(gè)數(shù)量限制,設(shè)計(jì)了擴(kuò)展分區(qū)的方式,所謂擴(kuò)展分區(qū)就是分區(qū)表中指向的一個(gè)普通分區(qū)而已,只是在它自己分區(qū)內(nèi)部又有特殊的結(jié)構(gòu),使得我們可以分出多個(gè)邏輯分區(qū),我們平時(shí)看到的d、e、f等驅(qū)動(dòng)器實(shí)際上都是擴(kuò)展分區(qū)內(nèi)部劃分的邏輯分區(qū),你可以用winhex查看你的分區(qū)表,會(huì)發(fā)現(xiàn)里面只有兩項(xiàng),一項(xiàng)代表C盤(pán)分區(qū),另外一項(xiàng)就是代表其他所有驅(qū)動(dòng)器之和的擴(kuò)展分區(qū)了,當(dāng)然如果自己分了其他主分區(qū)的情況除外)
分區(qū)表項(xiàng)結(jié)構(gòu)列出如下,以便查閱:
2、DBR
每個(gè)主分區(qū)的第一個(gè)扇區(qū)存放著另一個(gè)引導(dǎo)扇區(qū)DBR,“分區(qū)引導(dǎo)扇區(qū)”或叫“DOS引導(dǎo)扇區(qū)”。該扇區(qū)的目的就是讀入ntldr,以進(jìn)行進(jìn)一步分引導(dǎo)。該扇區(qū)也是以”55AA”標(biāo)志結(jié)束。
3、擴(kuò)展分區(qū)
詳細(xì)講一下擴(kuò)展分區(qū)的結(jié)構(gòu),我們平時(shí)能分多個(gè)邏輯磁盤(pán)出來(lái)都是它的功勞。
前面說(shuō)了擴(kuò)展分區(qū)內(nèi)部有著自己特殊的結(jié)構(gòu)以實(shí)現(xiàn)多分區(qū),它和普通的主分區(qū)一個(gè)明顯的差別就是它的第一個(gè)扇區(qū)存放的就不是DBR了,而是一個(gè)叫虛擬MBR的扇區(qū)。叫虛擬MBR是因?yàn)樗蚆BR結(jié)構(gòu)很像。結(jié)構(gòu)也為3部分:
(1) 全0
(2) 分區(qū)表
(3) 55AA
它沒(méi)有引導(dǎo)代碼,以全0代替。分區(qū)表偏移也在0x1BE處,為4項(xiàng)。只是它只會(huì)用前兩項(xiàng)。后面兩項(xiàng)全0。第一項(xiàng)指向一個(gè)邏輯驅(qū)動(dòng)器(邏輯分區(qū))比如d盤(pán)。第二項(xiàng)指向下一個(gè)虛擬MBR(如果還有邏輯分區(qū)的話)。如此就形成了一個(gè)鏈,突破了分區(qū)個(gè)數(shù)限制。擴(kuò)展分區(qū)本身沒(méi)有DBR,它的DBR在它的每個(gè)孩子即邏輯分區(qū)的第一個(gè)扇區(qū)。你可以把擴(kuò)展分區(qū)想象成一個(gè)獨(dú)立的硬盤(pán),只是分區(qū)的組織方式變成鏈表了,這樣可能好理解點(diǎn)。忘了一點(diǎn),記得曾經(jīng)有過(guò)硬盤(pán)邏輯鎖的概念,其原理就是把邏輯分區(qū)的鏈表修改成了一個(gè)環(huán),這樣在系統(tǒng)遍歷這個(gè)鏈表時(shí)就死循環(huán)了。
以上文字描述的比較亂,下面給大家整理成一個(gè)結(jié)構(gòu)圖,以方便理解。圖中以硬盤(pán)分了2個(gè)主分區(qū)+一個(gè)擴(kuò)展分區(qū)畫(huà)的。
windows系統(tǒng)從MBR開(kāi)始的引導(dǎo)過(guò)程簡(jiǎn)單描述為:MBR->活動(dòng)分區(qū)DBR->Ntldr->boot.ini啟動(dòng)菜單->加載系統(tǒng)。