技術(shù)背景
引導(dǎo)型病毒是指專門感染硬盤主引導(dǎo)扇區(qū)(MBR)和軟盤引導(dǎo)扇區(qū)(DBR)的一種病毒,通常把引導(dǎo)型病毒都統(tǒng)稱為MBR病毒。MBR病毒感染的基本思想:MBR病毒會(huì)將正常的MBR或DBR數(shù)據(jù)備份到存儲(chǔ)設(shè)備的某一個(gè)位置;如果從感染了MBR病毒的存儲(chǔ)設(shè)備引導(dǎo),在執(zhí)行BIOS中斷服務(wù)器程序時(shí)會(huì)將帶有MBR病毒的MBR或DBR讀入內(nèi)存并執(zhí)行;病毒代碼過(guò)程中會(huì)從備份的位置將正常的MBR或DBR數(shù)據(jù)讀到內(nèi)存中并執(zhí)行,系統(tǒng)正常引導(dǎo)進(jìn)操作系統(tǒng)從而掩蓋病毒自身。同時(shí)病毒代碼執(zhí)行過(guò)程中還會(huì)完成兩個(gè)功能:
1、使病毒常駐常規(guī)內(nèi)存中常規(guī)內(nèi)存的最高端處;
2、病毒同時(shí)會(huì)HOOK INT 13H,這樣每次執(zhí)行INT13H時(shí)候就會(huì)先執(zhí)行病毒代碼。
由于病毒常駐內(nèi)存同時(shí)Hook了INT 13H中斷,當(dāng)從中MBR病毒的存儲(chǔ)設(shè)備引導(dǎo)時(shí)會(huì)感染連在電腦上的其他的存儲(chǔ)設(shè)備。進(jìn)入中有MBR病毒的系統(tǒng)后,在讀MBR信息時(shí)病毒會(huì)把正常的MBR信息傳給你,達(dá)到隱藏病毒自身的目的;如果想把自己手動(dòng)備份的正常MBR寫回時(shí),病毒會(huì)把MBR寫到備份的位置;在正常引導(dǎo)進(jìn)系統(tǒng)之后,病毒還可能會(huì)使系統(tǒng)出現(xiàn)類似藍(lán)屏、定時(shí)重啟等問(wèn)題,F(xiàn)有技術(shù)中,MBR病毒的清除通過(guò)上層殺毒軟件來(lái)實(shí)現(xiàn)的,由于病毒帶有隱藏功能,同時(shí)對(duì)寫入MBR有轉(zhuǎn)移到是寫入到備份位置的特性,所以上層殺毒軟件檢測(cè)MBR病毒時(shí)候比較困難;有的殺毒軟件能檢測(cè)到,也清除不了病毒。通常MBR病毒是通過(guò)專殺工具來(lái)實(shí)現(xiàn)的。
EVOC實(shí)現(xiàn)的BIOS清除MBR病毒技術(shù)方案,是在還沒(méi)有引導(dǎo)進(jìn)操作系統(tǒng)之前檢測(cè)MBR是否中毒,這時(shí)即使已經(jīng)中毒,由于病毒代碼還沒(méi)有執(zhí)行,病毒也無(wú)法通過(guò)返回正常的MBR信息來(lái)隱藏自身,這樣使得病毒的查殺更加的準(zhǔn)確。這種技術(shù)方案不需要添加額外花費(fèi),如不需要用硬件存儲(chǔ)設(shè)芯片備來(lái)備份MBR。
技術(shù)原理
BIOS清除MBR技術(shù)是在BIOS中添加一個(gè)檢查存儲(chǔ)設(shè)備是否中MBR病毒功能模塊,該功能模塊是在BIOS引導(dǎo)進(jìn)系統(tǒng)之前開(kāi)始遍歷檢測(cè)所有的存儲(chǔ)設(shè)備,查看是否中病毒,如果有種病毒則清除病毒;遍歷檢測(cè)完成后再引導(dǎo)進(jìn)系統(tǒng)。清除MBR病毒模塊功能添加的位置是在所有的硬件初始化完成后,在調(diào)用INT 19H中斷讀存儲(chǔ)設(shè)備的MBR信息引導(dǎo)進(jìn)系統(tǒng)之前實(shí)現(xiàn)。只有所有的硬件初始化完成后才能遍歷檢測(cè)存儲(chǔ)設(shè)備;同時(shí)要在引導(dǎo)設(shè)備的MBR執(zhí)行引導(dǎo)進(jìn)系統(tǒng)之前實(shí)現(xiàn),這時(shí)如果存儲(chǔ)設(shè)備已經(jīng)中毒,病毒代碼還沒(méi)有執(zhí)行,病毒就沒(méi)有辦法隱藏。實(shí)現(xiàn)BIOS清除MBR病毒方式如圖1。
圖1 BIOS清除MBR方式
其中引導(dǎo)類型病毒(MBR病毒)特征標(biāo)識(shí)相當(dāng)于一個(gè)小的MBR病毒庫(kù),如果發(fā)現(xiàn)有新的MBR病毒可以通過(guò)分析病毒代碼找到其特征標(biāo)識(shí)和備份正常MBR方式就可以實(shí)現(xiàn)功能擴(kuò)充,以達(dá)到清除更多MBR病毒。本技術(shù)方案可以添加到有的BIOS中,實(shí)現(xiàn)MBR病毒的清除功能,從而避免由于病毒引起異常。
其中引導(dǎo)類型病毒(MBR病毒)備份正常的MBR時(shí)候通常有兩種方式:1、將正常的MBR整個(gè)扇區(qū)的數(shù)據(jù)備份到存儲(chǔ)設(shè)備的某個(gè)扇區(qū);2、將正常MBR的部分或全部數(shù)據(jù)通過(guò)加密后備份到存儲(chǔ)設(shè)備的某個(gè)扇區(qū)。在清除MBR病毒的時(shí)候,通過(guò)分析病毒,如果發(fā)現(xiàn)是第一中備份方式,找到其正常MBR備份的位置讀出該扇區(qū)的數(shù)據(jù)后寫入MBR所在的位置即可;如果發(fā)現(xiàn)是第二種備份方式,需要找到加密后的數(shù)據(jù)位置以及解密算法得到正常的MBR數(shù)據(jù)并寫入MBR所在的位置。
技術(shù)優(yōu)勢(shì)
本技術(shù)是對(duì)BIOS功能的一種擴(kuò)充,目前還沒(méi)有通過(guò)BIOS實(shí)現(xiàn)清除MBR病毒的技術(shù)。與上層殺毒軟件相比,BIOS實(shí)現(xiàn)清除MBR病毒技術(shù)更加的精準(zhǔn)。同時(shí)該功能是由BIOS獨(dú)立完成的,不需要任何額外的輔助,也不依賴于任何操作系統(tǒng)。
- 查殺準(zhǔn)確:本技術(shù)是在病毒執(zhí)行之前開(kāi)始檢測(cè)查殺的,這時(shí)候病毒還不能執(zhí)行隱藏自身的功能,使得檢測(cè)病毒更加準(zhǔn)確;同時(shí)在還原MBR(或DBR)的時(shí)候,病毒也沒(méi)有辦法轉(zhuǎn)移到寫備份MBR(或DBR)扇區(qū)位置,從而可以正常的還原MBR(或DBR)。
- 無(wú)額外硬件成本:本技術(shù)是在BIOS中增加一個(gè)模塊,該模塊只占用很小的代碼空間,不需要更換更大的BIOS ROM芯片;也不需要增加額外的硬件設(shè)備來(lái)備份MBR等。同時(shí)本技術(shù)不需要其他的軟件技術(shù)輔助即可完成。
- 不依賴于操作系統(tǒng):本技術(shù)是通過(guò)BIOS來(lái)實(shí)現(xiàn)的,和實(shí)際使用的操作系統(tǒng)無(wú)關(guān)。