2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩46頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、合肥工業(yè)大學(xué)計(jì)算機(jī)與信息學(xué)院 張仁斌,,計(jì)算機(jī)病毒與反病毒技術(shù),主要內(nèi)容,計(jì)算機(jī)病毒的防范措施計(jì)算機(jī)病毒的檢測(cè)技術(shù)與原理啟發(fā)式查毒技術(shù)虛擬機(jī)查毒技術(shù)實(shí)時(shí)監(jiān)控技術(shù)引導(dǎo)型病毒的清除文件型病毒的清除計(jì)算機(jī)病毒的免疫方法,第9章 計(jì)算機(jī)病毒的檢測(cè)、清除與免疫,9.1.1 反病毒技術(shù)的產(chǎn)生與發(fā)展簡(jiǎn)介,反病毒技術(shù)應(yīng)運(yùn)而生,并在與病毒對(duì)抗的過(guò)程中不斷發(fā)展 從“消毒軟件”到“防毒卡”“查殺防三合一”實(shí)時(shí)反病毒軟件的誕生反病毒

2、技術(shù)的發(fā)展歷程第一代反病毒技術(shù)采用單純的病毒特征代碼分析,清除染毒文件中的病毒第二代反病毒技術(shù)采用靜態(tài)廣譜特征掃描技術(shù)檢測(cè)病毒,可以檢測(cè)變形病毒,但是誤報(bào)率高第三代反病毒技術(shù)將靜態(tài)掃描技術(shù)和動(dòng)態(tài)仿真跟蹤技術(shù)結(jié)合起來(lái),將查找病毒和清除病毒合二為一第四代反病毒技術(shù),9.1 反病毒技術(shù)綜述,9.1.1 反病毒技術(shù)的產(chǎn)生與發(fā)展簡(jiǎn)介,基于病毒家族體系的命名規(guī)則、基于多位CRC校驗(yàn)和掃描機(jī)理、啟發(fā)式智能代碼分析模塊、動(dòng)態(tài)數(shù)據(jù)還原模

3、塊(能查出隱蔽性極強(qiáng)的壓縮加密文件中的病毒)、內(nèi)存解毒模塊、自身免疫模塊等先進(jìn)的解毒技術(shù),較好的解決了以前防毒技術(shù)顧此失彼、此消彼長(zhǎng)的狀態(tài),能夠較好地完成查毒、解毒的任務(wù),9.1 反病毒技術(shù)綜述,9.1.2 計(jì)算機(jī)病毒防治技術(shù)的劃分,計(jì)算機(jī)病毒的防治技術(shù)分成四個(gè)方面病毒預(yù)防技術(shù)病毒檢測(cè)技術(shù)病毒消除技術(shù)病毒免疫技術(shù)除了免疫技術(shù)因目前找不到通用的免疫方法而進(jìn)展不大之外,其他三項(xiàng)技術(shù)都有相當(dāng)?shù)倪M(jìn)展,9.1 反病毒技術(shù)綜述,9.

4、2.1 計(jì)算機(jī)病毒防范的概念,計(jì)算機(jī)病毒防范,是指通過(guò)建立合理的計(jì)算機(jī)病毒防范體系和制度,及時(shí)發(fā)現(xiàn)計(jì)算機(jī)病毒侵入,并采取有效的手段阻止計(jì)算機(jī)病毒的傳播和破壞,恢復(fù)受影響的計(jì)算機(jī)系統(tǒng)和數(shù)據(jù)計(jì)算機(jī)病毒能利用讀寫(xiě)文件進(jìn)行感染,利用駐留內(nèi)存、截取中斷向量等方式能進(jìn)行傳染和破壞。預(yù)防計(jì)算機(jī)病毒就是要監(jiān)視、跟蹤系統(tǒng)內(nèi)類似的操作,提供對(duì)系統(tǒng)的保護(hù),最大限度地避免各種計(jì)算機(jī)病毒的傳染破壞,9.2 計(jì)算機(jī)病毒的防范策略,9.2.2 必須具有的安全

5、意識(shí),對(duì)計(jì)算機(jī)病毒應(yīng)持有如下態(tài)度:承認(rèn)計(jì)算機(jī)病毒的客觀存在應(yīng)該具有安全意識(shí),積極采取預(yù)防措施,堵塞計(jì)算機(jī)病毒的傳染途徑不懼怕病毒,樹(shù)立必勝的信念;發(fā)現(xiàn)病毒,冷靜處理,9.2 計(jì)算機(jī)病毒的防范策略,9.2.3 預(yù)防計(jì)算機(jī)病毒的一般措施,計(jì)算機(jī)病毒的預(yù)防措施可概括為兩點(diǎn)勤備份嚴(yán)防守,9.2 計(jì)算機(jī)病毒的防范策略,9.3.1 病毒檢測(cè)方法綜述,檢測(cè)計(jì)算機(jī)病毒的方法有兩種手工檢測(cè)利用Debug、PCTools、SysInf

6、o、WinHex等工具軟件進(jìn)行病毒的檢測(cè)這種方法比較復(fù)雜,費(fèi)時(shí)費(fèi)力可以剖析病毒、可以檢測(cè)一些自動(dòng)檢測(cè)工具不能識(shí)別的新病毒自動(dòng)檢測(cè)利用一些專業(yè)診斷軟件來(lái)判斷引導(dǎo)扇區(qū)、磁盤(pán)文件是否有毒的方法自動(dòng)檢測(cè)比較簡(jiǎn)單,一般用戶都可以進(jìn)行,但需要較好的診斷軟件可方便地檢測(cè)大量的病毒,自動(dòng)檢測(cè)工具的發(fā)展總是滯后于病毒的發(fā)展,9.3 計(jì)算機(jī)病毒的診斷方法及其原理,9.3.2 比較法診斷的原理,比較法是用原始的正常備份與被檢測(cè)的內(nèi)容(引導(dǎo)扇區(qū)

7、或被檢測(cè)的文件)進(jìn)行比較長(zhǎng)度比較法內(nèi)容比較法內(nèi)存比較法中斷比較法,9.3 計(jì)算機(jī)病毒的診斷方法及其原理,9.3.3 校驗(yàn)和法診斷的原理,根據(jù)正常文件的信息(包括文件名稱、大小、時(shí)間、日期及內(nèi)容),計(jì)算其校驗(yàn)和,將該校驗(yàn)和寫(xiě)入文件中或?qū)懭肫渌募?資料庫(kù))中保存在文件使用過(guò)程中,定期地或每次使用文件前,檢查文件現(xiàn)有信息算出的校驗(yàn)和與原來(lái)保存的校驗(yàn)和是否一致,因而可以發(fā)現(xiàn)文件是否已被感染運(yùn)用校驗(yàn)和法查病毒一般采用三種方式在

8、檢測(cè)病毒工具中納入校驗(yàn)和法,對(duì)被查的對(duì)象文件計(jì)算其正常狀態(tài)的校驗(yàn)和,將校驗(yàn)和值寫(xiě)入被查文件中或檢測(cè)工具中,而后進(jìn)行比較在應(yīng)用程序中,放入校驗(yàn)和法自我檢查功能,將文件正常狀態(tài)的校驗(yàn)和寫(xiě)入文件本身中,每當(dāng)應(yīng)用程序啟動(dòng)時(shí),比較現(xiàn)行校驗(yàn)和與原校驗(yàn)和值,實(shí)現(xiàn)應(yīng)用程序的自檢測(cè)將校驗(yàn)和檢查程序常駐內(nèi)存,每當(dāng)應(yīng)用程序開(kāi)始運(yùn)行時(shí),自動(dòng)比較檢查應(yīng)用程序內(nèi)部或其他文件中預(yù)先保存的校驗(yàn)和,9.3 計(jì)算機(jī)病毒的診斷方法及其原理,9.3.4 掃描法診斷的原

9、理,掃描法是用每一種病毒體含有的特定病毒碼(Virus Pattern)對(duì)被檢測(cè)的對(duì)象進(jìn)行掃描。如果在被檢測(cè)對(duì)象內(nèi)部發(fā)現(xiàn)了某一種特定病毒碼,就表明發(fā)現(xiàn)了該病毒碼所代表的病毒特征代碼掃描法特征代碼模糊掃描法,9.3 計(jì)算機(jī)病毒的診斷方法及其原理,9.3.5 行為監(jiān)測(cè)法診斷的原理,利用病毒的特有行為特性監(jiān)測(cè)病毒的方法,稱為行為監(jiān)測(cè)法,也稱為人工智能陷阱法通過(guò)對(duì)病毒多年的觀察、研究,人們發(fā)現(xiàn)病毒有一些行為,是病毒的共同行為,而且比較

10、特殊,在正常程序中,這些行為比較罕見(jiàn)。當(dāng)程序運(yùn)行時(shí),監(jiān)視其行為,如果發(fā)現(xiàn)了病毒行為,立即報(bào)警盜用截流系統(tǒng)中斷修改內(nèi)存總量和內(nèi)存控制塊(MCB)對(duì)可執(zhí)行文件做寫(xiě)入動(dòng)作病毒程序與宿主程序的切換搜索API函數(shù)地址,9.3 計(jì)算機(jī)病毒的診斷方法及其原理,9.3.6 感染實(shí)驗(yàn)法診斷的原理,這種方法的原理是利用了病毒的最重要的基本特征:感染特性檢測(cè)未知引導(dǎo)型病毒的感染實(shí)驗(yàn)法檢測(cè)未知文件型病毒的感染實(shí)驗(yàn)法,9.3 計(jì)算機(jī)病毒的診斷

11、方法及其原理,9.3.7 軟件模擬法診斷的原理,軟件模擬(Software Emulation)法(即后文中將詳細(xì)介紹的虛擬機(jī)對(duì)抗病毒技術(shù)),是一種軟件分析器,用軟件方法來(lái)模擬和分析程序的運(yùn)行:模擬CPU執(zhí)行,在其設(shè)計(jì)的虛擬機(jī)器(Virtual Machine)下假執(zhí)行病毒的變體引擎解碼程序,安全并確實(shí)地將多態(tài)病毒解開(kāi),使其顯露真實(shí)面目,再加以掃描主要用于檢測(cè)多態(tài)型病毒,9.3 計(jì)算機(jī)病毒的診斷方法及其原理,9.3.8 分析法診

12、斷的原理,使用分析法的人一般不是普通用戶,而是反病毒技術(shù)人員使用分析法的目的在于:確認(rèn)被觀察的引導(dǎo)扇區(qū)和程序中是否含有病毒確認(rèn)病毒的類型和種類,判定其是否是一種新病毒搞清楚病毒體的大致結(jié)構(gòu),提取特征識(shí)別用的字符串或特征字,并增添到病毒代碼庫(kù)供病毒掃描和識(shí)別程序使用詳細(xì)分析病毒代碼,為制定相應(yīng)的反病毒措施制定方案上述四個(gè)目的按順序排列起來(lái),正好大致是使用分析法的工作順序使用分析法要求具有比較全面的計(jì)算機(jī)體系結(jié)構(gòu)、操作系統(tǒng)以及

13、有關(guān)病毒技術(shù)的各種知識(shí),9.3 計(jì)算機(jī)病毒的診斷方法及其原理,簡(jiǎn)介,啟發(fā)式代碼掃描技術(shù)源于人工智能技術(shù),是基于給定的判斷規(guī)則和定義的掃描技術(shù),若發(fā)現(xiàn)被掃描程序中存在可疑的程序功能指令,則作出存在病毒的預(yù)警或判斷啟發(fā)式代碼分析掃描技術(shù)是對(duì)傳統(tǒng)的特征代碼掃描法查毒技術(shù)的改進(jìn)在特征代碼掃描技術(shù)的基礎(chǔ)上,利用對(duì)病毒代碼的分析,獲得一些統(tǒng)計(jì)的、靜態(tài)的啟發(fā)式知識(shí),形成一種靜態(tài)的啟發(fā)式代碼掃描分析技術(shù),9.4 啟發(fā)式代碼掃描技術(shù),9.4.1

14、 啟發(fā)式代碼掃描的基本原理,病毒和正常程序的區(qū)別可以體現(xiàn)在許多方面,比較常見(jiàn)的如通常一個(gè)應(yīng)用程序在最初的指令是檢查命令行輸入有無(wú)參數(shù)項(xiàng)、清屏和保存原來(lái)屏幕顯示等,而病毒程序則從來(lái)不會(huì)這樣做,它通常最初的指令是直接寫(xiě)盤(pán)操作、解碼指令,或搜索某路徑下的可執(zhí)行程序等相關(guān)操作指令序列這些顯著的不同之處,一個(gè)熟練的程序員在調(diào)試狀態(tài)下只需一瞥便可一目了然啟發(fā)式代碼掃描技術(shù)實(shí)際上就是把人類的這種經(jīng)驗(yàn)和知識(shí)移植到一個(gè)查病毒軟件中的具體程序體現(xiàn),9.

15、4 啟發(fā)式代碼掃描技術(shù),9.4.2 可疑程序功能及其權(quán)值與相應(yīng)標(biāo)志,可疑程序功能的權(quán)值與報(bào)警標(biāo)準(zhǔn)對(duì)以下可疑的程序代碼指令序列按照安全和可疑的等級(jí)進(jìn)行排序,根據(jù)病毒可能使用和具備的特點(diǎn)而授以不同的加權(quán)值格式化磁盤(pán)操作搜索和定位各種可執(zhí)行程序的操作實(shí)現(xiàn)駐留內(nèi)存的操作調(diào)用非常的或未公開(kāi)的系統(tǒng)功能子程序調(diào)用中只執(zhí)行入棧操作……如果一個(gè)程序的加權(quán)值的總和超過(guò)一個(gè)事先定義的閥值,那么,病毒檢測(cè)程序就可以聲稱“發(fā)現(xiàn)病毒”;僅僅一項(xiàng)

16、可疑的功能操作遠(yuǎn)不足以觸發(fā)“病毒報(bào)警”的裝置為了避免“狼來(lái)了”的謊報(bào)和虛報(bào),病毒檢測(cè)程序常把多種可疑功能操作同時(shí)并發(fā)的情況定為發(fā)現(xiàn)病毒的報(bào)警標(biāo)準(zhǔn),9.4 啟發(fā)式代碼掃描技術(shù),9.4.3 關(guān)于虛警(謊報(bào)),啟發(fā)式掃描技術(shù)有時(shí)也會(huì)把一個(gè)本無(wú)病毒的程序判斷為染毒程序,這就是所謂的查毒程序虛警或謊報(bào)現(xiàn)象減少和避免誤報(bào)(謊報(bào)) ,必須努力做好以下幾點(diǎn)準(zhǔn)確把握病毒行為,精確定義可疑功能調(diào)用集合,除非滿足兩個(gè)以上的病毒重要特征,否則不予報(bào)警

17、增強(qiáng)對(duì)常規(guī)正常程序的識(shí)別能力增強(qiáng)對(duì)特定程序的識(shí)別能力類似“無(wú)罪假定”的功能,首先假定程序和計(jì)算機(jī)是不含病毒的。許多啟發(fā)式代碼分析檢毒軟件具有自學(xué)習(xí)功能,能夠記憶那些并非病毒的文件并在以后的檢測(cè)過(guò)程中避免再報(bào)警,9.4 啟發(fā)式代碼掃描技術(shù),9.4.4 傳統(tǒng)掃描技術(shù)與啟發(fā)式掃描技術(shù)的結(jié)合,傳統(tǒng)的掃描技術(shù)基于對(duì)已知病毒的分析和研究,在檢測(cè)時(shí)能夠更準(zhǔn)確、減少誤報(bào);但如果是對(duì)待此前根本沒(méi)有出現(xiàn)過(guò)的新病毒,由于其知識(shí)庫(kù)并不存在該類(種)病

18、毒的特征數(shù)據(jù),則有可能產(chǎn)生漏報(bào)的嚴(yán)重后果基于規(guī)則和定義的啟發(fā)式代碼分析技術(shù)則可以使新病毒不至于成為漏網(wǎng)之魚(yú)傳統(tǒng)掃描技術(shù)與啟發(fā)式掃描技術(shù)的結(jié)合,可以使病毒檢測(cè)軟件的檢出率提高到前所未有的水平,而另一方面,又大大降低了總的誤報(bào)率,9.4 啟發(fā)式代碼掃描技術(shù),9.4.5 啟發(fā)式檢測(cè)技術(shù)與反病毒技術(shù)發(fā)展趨勢(shì),任何改良的努力都會(huì)有不同程度的質(zhì)量提高,但是不能企望在沒(méi)有虛報(bào)為代價(jià)的前提下使檢出率達(dá)到100%,或者反過(guò)來(lái)說(shuō),在相當(dāng)長(zhǎng)的時(shí)間里虛

19、報(bào)和漏報(bào)的概率不可能達(dá)到0%,因?yàn)椴《驹诒举|(zhì)上也是程序,某些正常程序可能使用具有病毒特征的功能(可疑功能調(diào)用)反毒技術(shù)的進(jìn)步也會(huì)從另一方面激發(fā)和促使病毒制作者不斷研制出更新的病毒,具有某種反啟發(fā)式掃描技術(shù)的功能,從而可以逃避這類檢測(cè)技術(shù)的檢測(cè)結(jié)合特征值檢測(cè)技術(shù)、一般啟發(fā)式掃描技術(shù)、行為監(jiān)測(cè)技術(shù)、虛擬機(jī)技術(shù),構(gòu)成了新一代啟發(fā)式病毒掃描技術(shù),該技術(shù)也稱為動(dòng)態(tài)啟發(fā)式病毒掃描技術(shù),人工智能領(lǐng)域的研究成果也將被不斷引入其中,9.4 啟發(fā)式代

20、碼掃描技術(shù),9.5.1 虛擬機(jī)簡(jiǎn)介,查毒的虛擬機(jī)是一個(gè)軟件模擬的CPU,它可以象真正CPU一樣取指令、譯碼、執(zhí)行,可以模擬一段代碼在真正CPU上運(yùn)行得到的結(jié)果虛擬機(jī)的基本工作原理和簡(jiǎn)單流程給定一組機(jī)器碼序列,虛擬機(jī)會(huì)自動(dòng)從中取出第一條指令操作碼部分,判斷操作碼類型和尋址方式以確定該指令長(zhǎng)度,然后在相應(yīng)的函數(shù)中執(zhí)行該指令,并根據(jù)執(zhí)行后的結(jié)果確定下條指令的位置,如此循環(huán)反復(fù)直到某個(gè)特定情況發(fā)生以結(jié)束工作設(shè)計(jì)虛擬機(jī)查毒的目的是為了對(duì)抗

21、加密變形病毒虛擬執(zhí)行技術(shù)使用范圍遠(yuǎn)不止自動(dòng)脫殼(虛擬機(jī)查毒實(shí)際上是自動(dòng)跟蹤病毒入口的解密子將加密的病毒體按其解密算法進(jìn)行解密),它還可以應(yīng)用在跨平臺(tái)高級(jí)語(yǔ)言解釋器、惡意代碼分析、調(diào)試器,9.5 虛擬機(jī)查毒技術(shù),9.5.2 單步斷點(diǎn)跟蹤與虛擬執(zhí)行,目前有兩種方法可以跟蹤控制病毒的每一步執(zhí)行,并能夠在病毒循環(huán)解密結(jié)束后從內(nèi)存中讀出病毒體明文單步和斷點(diǎn)跟蹤法,和目前一些程序調(diào)試器相類似當(dāng)CPU在執(zhí)行一條指令之前會(huì)先檢查標(biāo)志寄存器,如

22、果發(fā)現(xiàn)其中的陷阱標(biāo)志被設(shè)置則在指令執(zhí)行結(jié)束后引發(fā)一個(gè)單步陷阱INT 1H虛擬執(zhí)行法,9.5 虛擬機(jī)查毒技術(shù),9.5.2 單步斷點(diǎn)跟蹤與虛擬執(zhí)行,單步斷點(diǎn)跟蹤的優(yōu)缺點(diǎn)用單步和斷點(diǎn)跟蹤法的唯一好處就在于它不用處理每條指令的執(zhí)行,這意味著它無(wú)需編寫(xiě)大量的特定指令處理函數(shù),因?yàn)樗械慕饷艽a都交由CPU執(zhí)行,調(diào)試器不過(guò)是在代碼被單步中斷的間隙得到控制權(quán)而已這種方法的缺點(diǎn)也是相當(dāng)明顯的容易被病毒覺(jué)察到,病毒只須進(jìn)行簡(jiǎn)單的堆棧檢查,或直

23、接調(diào)用IsDebugerPresent就可確定自己正處于被調(diào)試狀態(tài)由于沒(méi)有相應(yīng)的機(jī)器碼分析模塊,指令的譯碼、執(zhí)行完全依賴于CPU,所以將導(dǎo)致無(wú)法準(zhǔn)確地獲取指令執(zhí)行細(xì)節(jié)并對(duì)其進(jìn)行有效的控制單步和斷點(diǎn)跟蹤法要求待查可執(zhí)行文件真實(shí)執(zhí)行,即其將做為系統(tǒng)中一個(gè)真實(shí)的進(jìn)程在自己的地址空間中運(yùn)行,這當(dāng)然是病毒掃描所不能允許的單步和斷點(diǎn)跟蹤法可以應(yīng)用在調(diào)試器、自動(dòng)脫殼等方面,但不合適于查毒,9.5 虛擬機(jī)查毒技術(shù),9.5.2 單步斷點(diǎn)跟蹤與虛

24、擬執(zhí)行,虛擬執(zhí)行的缺點(diǎn)與優(yōu)點(diǎn)使用虛擬執(zhí)行法的唯一缺點(diǎn)就在于它必須在內(nèi)部處理所有指令的執(zhí)行,這意味著它需要編寫(xiě)大量的特定指令處理函數(shù)來(lái)模擬每種指令的執(zhí)行效果,這里根本不存在何時(shí)得到控制權(quán)的問(wèn)題,因?yàn)榭刂茩?quán)將永遠(yuǎn)掌握在虛擬機(jī)手中虛擬執(zhí)行的優(yōu)點(diǎn)也是很明顯的,同時(shí)它正好填補(bǔ)了單步和斷點(diǎn)跟蹤法所力不能及的方面不可能被病毒覺(jué)察到,因?yàn)樘摂M機(jī)將在其內(nèi)部緩沖區(qū)中為被虛擬執(zhí)行代碼設(shè)立專用的堆棧,所以堆棧檢查結(jié)果與實(shí)際執(zhí)行無(wú)差別(不會(huì)向堆棧中壓入單步

25、和斷點(diǎn)中斷時(shí)的返回地址)由于虛擬機(jī)自身完成指令的解碼和地址的計(jì)算,所以能夠獲取每條指令的執(zhí)行細(xì)節(jié)并加以控制最為關(guān)鍵的一條在于虛擬執(zhí)行確實(shí)做到了“虛擬”執(zhí)行,系統(tǒng)中不會(huì)產(chǎn)生代表被執(zhí)行者的進(jìn)程,因?yàn)楸粓?zhí)行者的寄存器組和堆棧等執(zhí)行要素均在虛擬機(jī)內(nèi)部實(shí)現(xiàn),因而可以認(rèn)為它在虛擬機(jī)地址空間中執(zhí)行,9.5 虛擬機(jī)查毒技術(shù),9.5.2 單步斷點(diǎn)跟蹤與虛擬執(zhí)行,虛擬機(jī)的設(shè)計(jì)方案自含代碼虛擬機(jī)(SCCE)自含代碼虛擬機(jī)工作起來(lái)象一個(gè)真正的CPU

26、。一條指令取自內(nèi)存,由SCCE解碼,并被傳送到相應(yīng)的模擬這條指令的例程,下一條指令則繼續(xù)這個(gè)循環(huán)緩沖代碼虛擬機(jī)(BCE)緩沖代碼虛擬機(jī)是SCCE的一個(gè)縮略版一條指令是從內(nèi)存中取得的,并和一個(gè)特殊指令表相比較。如果不是特殊指令,則它被進(jìn)行簡(jiǎn)單的解碼以求得指令的長(zhǎng)度,隨后所有這樣的指令會(huì)被導(dǎo)入到一個(gè)可以通用地模擬所有非特殊指令的小過(guò)程中。而特殊指令,只占整個(gè)指令集的一小部分,則在特定的小處理程序中進(jìn)行模擬有限代碼虛擬機(jī)(LCE)有

27、點(diǎn)象用于通用解密的虛擬系統(tǒng)LCE實(shí)際上并非一個(gè)虛擬機(jī),因?yàn)樗⒉徽嬲哪M指令,它只簡(jiǎn)單地跟蹤一段代碼的寄存器內(nèi)容,提供一個(gè)小的被改動(dòng)的內(nèi)存地址表,或是調(diào)用過(guò)的中斷之類的東西,9.5 虛擬機(jī)查毒技術(shù),9.5.3 虛擬機(jī)代碼剖析,不依賴標(biāo)志寄存器指令模擬函數(shù)的分析依賴標(biāo)志寄存器指令模擬函數(shù)的分析,9.5 虛擬機(jī)查毒技術(shù),9.5.4 反虛擬機(jī)技術(shù),任何一個(gè)事物都不是盡善盡美、無(wú)懈可擊的,虛擬機(jī)也不例外由于反虛擬執(zhí)行技術(shù)的出現(xiàn),

28、使得虛擬機(jī)查毒受到了一定的挑戰(zhàn)插入特殊指令技術(shù)結(jié)構(gòu)化異常處理技術(shù)入口點(diǎn)模糊(EPO)技術(shù)多線程技術(shù)元多形技術(shù),9.5 虛擬機(jī)查毒技術(shù),9.6.1 實(shí)時(shí)監(jiān)控技術(shù)背景,實(shí)時(shí)監(jiān)控技術(shù)其實(shí)并非什么新技術(shù),早在DOS編程時(shí)代就有之在Windows下要實(shí)現(xiàn)實(shí)時(shí)監(jiān)控決非易事,9.6 病毒實(shí)時(shí)監(jiān)控技術(shù),9.6.2 病毒實(shí)時(shí)監(jiān)控實(shí)現(xiàn)技術(shù)簡(jiǎn)介,病毒實(shí)時(shí)監(jiān)控會(huì)在文件打開(kāi)、關(guān)閉、清除、寫(xiě)入等操作時(shí)檢查文件是否是病毒攜帶者,如果是則根據(jù)用戶的

29、決定選擇不同的處理方案,如清除病毒、禁止訪問(wèn)該文件、刪除該文件或簡(jiǎn)單地忽略,從而有效地避免病毒在本地計(jì)算機(jī)上的感染傳播可執(zhí)行文件裝入器在裝入一個(gè)文件執(zhí)行時(shí)首先會(huì)要求打開(kāi)該文件,而這個(gè)請(qǐng)求又一定會(huì)被實(shí)時(shí)監(jiān)控在第一時(shí)間截獲到,它確保了每次執(zhí)行的都是干凈的不帶毒的文件從而不給病毒以任何執(zhí)行和發(fā)作的機(jī)會(huì)病毒實(shí)時(shí)監(jiān)控的設(shè)計(jì)主要存在以下幾個(gè)難點(diǎn)驅(qū)動(dòng)程序的編寫(xiě)不同于普通用戶態(tài)程序的編寫(xiě),其難度很大驅(qū)動(dòng)程序與Ring3下客戶程序的通信問(wèn)題驅(qū)動(dòng)

30、程序所占用資源問(wèn)題,9.6 病毒實(shí)時(shí)監(jiān)控技術(shù),9.6.3 Windows 9x下的病毒實(shí)時(shí)監(jiān)控,Windows 9x下病毒實(shí)時(shí)監(jiān)控的實(shí)現(xiàn)主要依賴于以下三項(xiàng)技術(shù)虛擬設(shè)備驅(qū)動(dòng)(VxD)編程可安裝文件系統(tǒng)鉤子(IFSHook)VxD與Ring3下客戶程序的通信(APC/EVENT)只有工作于系統(tǒng)核心態(tài)的驅(qū)動(dòng)程序才具有有效地完成攔截系統(tǒng)范圍文件操作的能力,VxD就是適用于Windows 9x下的虛擬設(shè)備驅(qū)動(dòng)程序,可以擔(dān)當(dāng)此重任Vx

31、D的功能遠(yuǎn)不止由IFSMGR.vxd提供的攔截文件操作這一項(xiàng),系統(tǒng)的VxDs幾乎提供了所有的底層操作的接口(可以把VxD看成Ring0下的DLL)虛擬機(jī)管理器本身就是一個(gè)VxD,它導(dǎo)出的底層操作接口一般稱為VMM服務(wù),而其他VxD的調(diào)用接口則稱為VxD服務(wù),9.6 病毒實(shí)時(shí)監(jiān)控技術(shù),9.6.4 Windows NT/2000下的病毒實(shí)時(shí)監(jiān)控,Windows NT/2000下病毒實(shí)時(shí)監(jiān)控的實(shí)現(xiàn)主要依賴于以下三項(xiàng)技術(shù)NT內(nèi)核模式驅(qū)動(dòng)

32、編程Windows NT/2000下不再支持VxD攔截IRP驅(qū)動(dòng)與Ring3下客戶程序的通信(命名的事件與信號(hào)量對(duì)象),9.6 病毒實(shí)時(shí)監(jiān)控技術(shù),9.7.1 清除病毒的一般方法,發(fā)現(xiàn)病毒后,清除病毒的一般步驟是:先升級(jí)殺毒軟件病毒庫(kù)至最新,進(jìn)入安全模式下全盤(pán)查殺刪除注冊(cè)表中的有關(guān)可以自動(dòng)啟動(dòng)可疑程序的鍵值(可以重命名,以防誤刪,若刪除/重命名后按F5刷新,發(fā)現(xiàn)無(wú)法刪除/重命名,則可肯定其是病毒啟動(dòng)鍵值)若系統(tǒng)配置文件被更

33、改,需先刪除注冊(cè)表中鍵值,再更改系統(tǒng)配置文件斷開(kāi)網(wǎng)絡(luò)連接,重啟系統(tǒng),進(jìn)入安全模式全盤(pán)殺毒若Windows ME/XP系統(tǒng)查殺病毒在系統(tǒng)還原區(qū),請(qǐng)關(guān)閉系統(tǒng)還原再查殺若查殺病毒在臨時(shí)文件夾中,請(qǐng)清空臨時(shí)文件夾再查殺系統(tǒng)安全模式查殺無(wú)效,建議到DOS下查殺。,9.7 計(jì)算機(jī)病毒的清除,9.7.2 引導(dǎo)型病毒的清除,引導(dǎo)型病毒感染時(shí)常攻擊計(jì)算機(jī)的如下部位:硬盤(pán)主引導(dǎo)扇區(qū)硬盤(pán)或軟盤(pán)的BOOT扇區(qū)為保存原主引導(dǎo)扇區(qū)、BOOT扇區(qū),

34、病毒可能隨意地將它們寫(xiě)入其他扇區(qū),而徹底毀壞這些扇區(qū)中的信息引導(dǎo)型病毒發(fā)作時(shí),執(zhí)行破壞行為造成種種損失由于引導(dǎo)型病毒一般是常駐內(nèi)存的,因此,清除病毒之前必須先清除內(nèi)存中的病毒(或采用修復(fù)中斷向量表等方法將其滅活),否則難以清除干凈,9.7 計(jì)算機(jī)病毒的清除,9.7.2 引導(dǎo)型病毒的清除,硬盤(pán)主引導(dǎo)扇區(qū)染毒時(shí)的修復(fù)方法:(1)用無(wú)毒軟盤(pán)啟動(dòng)系統(tǒng) (2)尋找一臺(tái)同類型、硬盤(pán)分區(qū)相同的無(wú)毒計(jì)算機(jī),將其硬盤(pán)主引導(dǎo)扇區(qū)寫(xiě)入一張軟盤(pán)中

35、(3)將此軟盤(pán)插入染毒計(jì)算機(jī),將其中采集的主引導(dǎo)扇區(qū)數(shù)據(jù)寫(xiě)入染毒硬盤(pán)0柱面0磁頭1扇區(qū),即可修復(fù)修復(fù)硬盤(pán)主引導(dǎo)扇區(qū)時(shí),也可利用先前備份的本扇區(qū)尚未感染時(shí)的數(shù)據(jù),替代(2)中采集的數(shù)據(jù)。修復(fù)主引導(dǎo)扇區(qū)時(shí),一般不用FDisk/MBR命令,以免丟失硬盤(pán)信息,9.7 計(jì)算機(jī)病毒的清除,9.7.2 引導(dǎo)型病毒的清除,硬盤(pán)、軟盤(pán)BOOT扇區(qū)染毒時(shí)的修復(fù)方法:修復(fù)硬盤(pán)BOOT扇區(qū)最簡(jiǎn)單方便的殺毒方法是使用系統(tǒng)命令SYS,即:用與染毒盤(pán)相同

36、版本的無(wú)毒系統(tǒng)軟盤(pán)啟動(dòng)計(jì)算機(jī),然后執(zhí)行命令“SYS C:”,用正常的引導(dǎo)程序覆蓋硬盤(pán)的BOOT扇區(qū)修復(fù)軟盤(pán)BOOT扇區(qū)也可采用類似的覆蓋方法引導(dǎo)型病毒如果將原主引導(dǎo)扇區(qū)或BOOT扇區(qū)覆蓋式寫(xiě)入根目錄區(qū),被覆蓋的根目錄區(qū)完全損壞,不可能修復(fù)。如果引導(dǎo)型病毒將原主引導(dǎo)扇區(qū)或BOOT扇區(qū)覆蓋式寫(xiě)入第一FAT表時(shí),第二FAT表未破壞,則可以修復(fù),可將第FAT表復(fù)制到第一FAT表中一般而言,引導(dǎo)型病毒占用的其他部分存儲(chǔ)空間,只有采用“壞簇”

37、技術(shù)和“文件結(jié)束簇”技術(shù)占用的空間需要收回,修改文件分配表即可,9.7 計(jì)算機(jī)病毒的清除,9.7.3 文件型病毒的清除,基于隱蔽病毒自身的目的,病毒一般都要保證原文件代碼還能正常地執(zhí)行。這就意味著原文件能被妥善保存,從而為清除病毒、恢復(fù)原文件提供了可能除了覆蓋型的文件型病毒之外,其他文件型病毒都可以被清除干凈用解毒軟件來(lái)解毒不保證能夠完全復(fù)原,有可能會(huì)越解越糟,殺完毒之后文件反而不能執(zhí)行。利用手工消毒也是如此。因此,用戶必須勤備

38、份自己的資料手工清除病毒之前,應(yīng)備份被感染文件,同時(shí)應(yīng)注意防護(hù)措施。任何清除病毒的動(dòng)作,都是危險(xiǎn)操作,9.7 計(jì)算機(jī)病毒的清除,9.7.3 文件型病毒的清除,清除.COM文件中的計(jì)算機(jī)病毒的方法以使用Debug為例,清除計(jì)算機(jī)病毒的方法和步驟如下:⑴用Debug調(diào)入需清除病毒的文件程序,通過(guò)計(jì)算機(jī)病毒程序查找合法程序的程序頭(對(duì)加密或經(jīng)過(guò)轉(zhuǎn)換的文件頭進(jìn)行還原,還原的方法也在計(jì)算機(jī)病毒程序中) ⑵對(duì)于鏈接于文件頭部的計(jì)算機(jī)病毒

39、,可用合法文件移到文件偏移0100H處后存盤(pán)的方法清除。若文件的長(zhǎng)度小于計(jì)算機(jī)病毒的長(zhǎng)度,則通過(guò)設(shè)置CX寄存器并存盤(pán)來(lái)清除⑶對(duì)于鏈接于文件尾部的計(jì)算機(jī)病毒,可以將正常的文件頭(通過(guò)分析病毒程序可得到)寫(xiě)入染毒的文件頭,并通過(guò)設(shè)置CX寄存器并存盤(pán)的方法去掉程序中的病毒部分⑷對(duì)內(nèi)存中的病毒進(jìn)行清除。病毒程序常駐內(nèi)存后,一般修改中斷向量,使系統(tǒng)調(diào)用中斷向量時(shí)激活病毒。所以清除內(nèi)存中的病毒可以將備份或同版本的中斷向量表取代內(nèi)存中的中斷向量表

40、,或直接關(guān)掉機(jī)器,用干凈系統(tǒng)重啟對(duì)于交叉感染或重復(fù)感染的.COM文件,一定要找出病毒感染的先后順序,按從后向前(或從內(nèi)向外)的順序逐個(gè)清除病毒,否則會(huì)損壞原文件,9.7 計(jì)算機(jī)病毒的清除,9.7.3 文件型病毒的清除,清除.EXE文件中的計(jì)算機(jī)病毒的方法清除.EXE文件病毒的方法與清除.COM文件中病毒的方法類似,只不過(guò)更繁瑣的是恢復(fù)原文件頭參數(shù)清除工作仍然要通過(guò)仔細(xì)分析病毒代碼,找到原文件頭參數(shù),寫(xiě)回并丟掉病毒程序代碼對(duì)于

41、交叉感染或重復(fù)感染的.EXE文件,只要找到最先感染的病毒代碼,從中找出原始文件頭參數(shù),可直接取出恢復(fù),而不必逐層解毒,恢復(fù)方法與單個(gè)病毒感染時(shí)的方法是一致的注:由于Debug程序拒絕寫(xiě).EXE文件,所以在清除.EXE文件中的病毒時(shí)應(yīng)首先將.EXE文件改名,然后再清除對(duì)于感染PE文件的病毒,可以用PEditor、LordPE等工具軟件刪除病毒體、恢復(fù)程序入口點(diǎn)(正常程序的入口一般是PE文件中的第一個(gè)節(jié).text),從而達(dá)到清除病毒的目

42、的。若病毒采用了EPO等技術(shù),清除工作將變得異常繁雜,9.7 計(jì)算機(jī)病毒的清除,9.8.1 重入檢測(cè)和病毒免疫,大部分駐留內(nèi)存的病毒會(huì)在加載病毒代碼之前,檢查系統(tǒng)的內(nèi)存狀態(tài),判斷內(nèi)存中是否有病毒,若存在(自身已被加載),則不再加載病毒代碼,否則,加載感染文件之前,查看文件的狀態(tài)(一般是查看感染標(biāo)志),檢查該文件是否已被感染,如果被感染了則不再重復(fù)感染病毒的這種重入檢測(cè)機(jī)制導(dǎo)致了一種反病毒技術(shù)的出現(xiàn),也就是形形色色的免疫程序:利用

43、免疫程序設(shè)置內(nèi)存的狀態(tài)、設(shè)置CPU的狀態(tài)或者設(shè)置文件的一些特征,從而防止某種特定的病毒進(jìn)入系統(tǒng),9.8 計(jì)算機(jī)病毒的免疫技術(shù),9.8.2 計(jì)算機(jī)病毒免疫的方法及其缺點(diǎn),從實(shí)現(xiàn)計(jì)算機(jī)病毒免疫的角度看病毒的傳染,可以將病毒的傳染分成兩種在傳染前先檢查待傳染的扇區(qū)或程序內(nèi)是否含有病毒代碼,如果沒(méi)有找到則進(jìn)行傳染,如果找到了則不再進(jìn)行傳染如小球病毒、CIH病毒在傳染時(shí)不判斷是否存在感染標(biāo)志(免疫標(biāo)志),病毒只要找到一個(gè)可傳染對(duì)象就進(jìn)行

44、一次傳染例如黑色星期五病毒 (注:黑色星期五病毒的程序中具有判別傳染標(biāo)志的代碼,由于程序設(shè)計(jì)錯(cuò)誤,使判斷失敗,導(dǎo)致感染標(biāo)志形同虛設(shè)),9.8 計(jì)算機(jī)病毒的免疫技術(shù),9.8.2 計(jì)算機(jī)病毒免疫的方法及其缺點(diǎn),目前常用的免疫方法有兩種針對(duì)某一種病毒進(jìn)行的計(jì)算機(jī)病毒免疫一個(gè)免疫程序只能預(yù)防一種計(jì)算機(jī)病毒例如對(duì)小球病毒,在DOS引導(dǎo)扇區(qū)的1FCH處填上1357H,小球病毒檢查到該標(biāo)志就不再對(duì)它進(jìn)行感染優(yōu)點(diǎn)是可以有效地防止某一種特定

45、病毒的傳染,但缺點(diǎn)很嚴(yán)重,主要有以下幾點(diǎn):對(duì)于不設(shè)置感染標(biāo)識(shí)或設(shè)置后不能有效判斷的病毒,不能達(dá)到免疫的目的當(dāng)該病毒的變種不再使用這個(gè)免疫標(biāo)志、或出現(xiàn)新病毒時(shí),免疫標(biāo)志失去作用某些病毒的免疫標(biāo)志不容易仿制,若必須加上這種標(biāo)志,則需對(duì)原文件做大的改動(dòng),例如大麻病毒由于病毒的種類較多,再加上技術(shù)上的原因,不可能對(duì)一個(gè)對(duì)象加上各種病毒的免疫標(biāo)識(shí)能阻止傳染,卻不能阻止病毒的破壞行為,仍然放任病毒駐留在內(nèi)存中,9.8 計(jì)算機(jī)病毒的免疫技

46、術(shù),9.8.2 計(jì)算機(jī)病毒免疫的方法及其缺點(diǎn),基于自我完整性檢查的計(jì)算機(jī)病毒免疫目前這種方法只能用于文件而不能用于引導(dǎo)扇區(qū)原理是,為可執(zhí)行程序增加一個(gè)免疫外殼,同時(shí)在免疫外殼中記錄有關(guān)用于恢復(fù)自身的信息。執(zhí)行具有這種免疫功能的程序時(shí),免疫外殼首先得到運(yùn)行,檢查自身的程序大小、校驗(yàn)和、生成日期和時(shí)間等情況,沒(méi)有發(fā)現(xiàn)異常后,再轉(zhuǎn)去執(zhí)行受保護(hù)的程序這種方法不只是針對(duì)病毒的,由于其他原因造成的文件變化,在大多數(shù)情況下免疫外殼程序都能使文

47、件自身得到復(fù)原,但仍存在一些缺點(diǎn)和不足:每個(gè)受到保護(hù)的文件都要增加額外的存儲(chǔ)空間現(xiàn)在使用中的一些校驗(yàn)碼算法不能滿足防病毒的需要,被某些種類的病毒感染的文件不能被檢查出來(lái)無(wú)法對(duì)抗覆蓋方式的文件型病毒有些類型的文件不能使用免疫外殼的防護(hù)方法,否則將使這些文件不能正常執(zhí)行當(dāng)已被病毒感染的文件被免疫外殼包在里面時(shí),這將妨礙反病毒軟件的檢測(cè)清除,9.8 計(jì)算機(jī)病毒的免疫技術(shù),9.8.3 數(shù)字免疫系統(tǒng)簡(jiǎn)介,早在20世紀(jì)90年代初,IB

48、M公司的懷特和他的同事們就夢(mèng)想給計(jì)算機(jī)“接種”一種數(shù)字免疫系統(tǒng)(Digital Immune System,DIS)為了對(duì)抗利用Internet進(jìn)行傳播的病毒,IBM公司開(kāi)發(fā)了該數(shù)字免疫系統(tǒng)原型,9.8 計(jì)算機(jī)病毒的免疫技術(shù),IBM數(shù)字免疫系統(tǒng)示意圖,思考題,1. 熟悉各種殺毒軟件、病毒防火墻的安裝、配置和使用。2. 本章給出了一些病毒預(yù)防措施,在單機(jī)、網(wǎng)絡(luò)等特定環(huán)境下,如何預(yù)防病毒?3. 基于特征碼的靜態(tài)掃描技術(shù),適合于查殺

49、何種類型的計(jì)算機(jī)病毒?為什么?4.簡(jiǎn)述啟發(fā)式掃描技術(shù)的基本思想。5.查毒虛擬機(jī)與VmWare等虛擬軟件有何區(qū)別?病毒采用什么技術(shù)對(duì)抗虛擬機(jī)技術(shù)?我們又該如何查殺這類病毒?6.Windows 9x下的實(shí)時(shí)監(jiān)控,主要采用哪些技術(shù)?Windows NT/2000下的實(shí)時(shí)監(jiān)控,主要采用哪些技術(shù)?為什么會(huì)存在這些差別?7.清除計(jì)算機(jī)病毒的一般方法和步驟是什么?對(duì)清除計(jì)算機(jī)病毒,你有什么經(jīng)驗(yàn)和建議?,思考題,8.編程實(shí)現(xiàn)一個(gè)加殼程序,并測(cè)試

溫馨提示

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

評(píng)論

0/150

提交評(píng)論