★我要吧★

 找回密码
 注册[Register]
搜索
qq空间相册密码查看为什么登陆后需要激活无法注册?

硬碟及記憶體檢測病毒 四種查病毒絕招

[复制链接]
发表于 2011-7-18 08:44:55 | 显示全部楼层 |阅读模式
病毒要進行傳染,必然會留下痕跡。生物醫學病毒如此,電腦病毒也是一樣。檢測電腦病毒,就要到病毒寄生場所去檢查,發現異常情況,並進而驗明“正身”,確認電腦病毒的存在。電腦病毒靜態時存儲於硬碟中,被激活時駐留在記憶體中,因此對電腦病毒的檢測可以分為對硬碟的檢測和對記憶體的檢測。
  一般對硬碟進行病毒檢測時,要求記憶體中不帶病毒,因為某些電腦病毒會向檢測者報告假情況。例如“4096”病毒在記憶體中時,查看被它感染的文件,不會發現該文件的長度已發生變化,而當在記憶體中沒有病毒時,才會發現文件長度已經增長了4096位元組;又例如,“DIR2”病毒在記憶體中,用Debug程序查看被感染文件時,根本看不到“DIR2”病毒的代碼,很多檢測程序因此而漏過了被感染的文件;還有引導區型的“巴基斯坦智囊”病毒,當它活躍在記憶體中時,檢查引導區就看不到病毒程序而只看到正常的引導扇區。因此,只有在要求確認某種病毒的類型和對其進行分析、研究時,才能在記憶體中帶毒的情況下作檢測工作。從原始的、未受病毒感染的DOS系統軟式磁碟機啟動,可以保證記憶體中不帶病毒。啟動必須是上電啟動而不是按鍵盤上的“Alt+Ctrl+Del”三鍵的那種熱啟動,因為某些病毒可以通過截取鍵盤中斷,將自己駐留在記憶體中。檢測硬碟中的病毒,啟動系統軟式磁碟機的DOS版本號應該等於或高於硬碟內DOS系統的版本號。如果硬碟上使用了硬碟管理軟體DM、ADM,硬碟壓縮存儲管理軟體Stacker、DoubleSpace等,啟動系統軟式磁碟機時應把這些軟體的驅動程序包括在軟式磁碟機上,並把它們寫入config.sys文件中,否則用系統軟式磁碟機引導啟動后,將不能訪問硬碟上的所有分區,使躲藏在其中的病毒逃過檢查。

  檢測硬碟中的病毒可分成檢測引導區型病毒和檢測文件型病毒。這兩種檢測的原理上相同,但由於病毒的存儲方式不同,檢測方法還是有差別的。主要是基於下列四種方法:比較被檢測對象與原始備份的比較法;利用病毒特征代碼串進行搜尋的搜索法;搜索病毒體內特定位置的特征字識別法;運用反匯編技術分析被檢測對象,確證是否為病毒的分析法。

  比較法

  這是用原始備份與被檢測的引導扇區或被檢測的文件進行比較的方法,可以用打印的代碼清單(比如Debug的D命令輸出格式)進行比較,也可用程序來進行比較(如DOS的DISKCOMP、COMP或PCTOOLS等其它軟體)。比較法不需要專用的查病毒程序,只要用常規DOS軟體和PCTOOLS等工具軟體就可以進行,而且還可以發現那些尚不能被現有的殺毒軟體發現的電腦病毒。因為病毒傳播得很快,新病毒層出不窮,而目前還沒有能查出一切病毒的通用程序,或通過代碼分析,可以判定某個程序中是否含有病毒的查毒程序,所以只有靠比較法和分析法,或這兩種方法相結合來發現新病毒。 對硬碟的主引導區或對DOS的引導扇區作檢查,用比較法能發現其中的程序源代碼是否發生了變化。由於要進行比較,因此保留好原始備份是非常重要的。制作備份時必須在無電腦病毒的環境里進行,制作好的備份必須妥善保管,寫好標簽,貼好寫保護。比較法的好處是簡單、方便,不用專用軟體;缺點是無法確認病毒的種類名稱。另外,造成被檢測程序與原始備份之間差別的原因尚需進一步驗證,以查明是電腦病毒造成的,還是DOS資料被偶然原因,如突然停電、程序失控、惡意程序等破壞的。這些要用到以后講的分析法,查看變化部分代碼的性質,以此來確認是否存在病毒。

  搜索法

  這種方法主要是對每一種病毒含有的特定字符串進行掃瞄,如果在被檢測對象內部發現了某一種特定位元組串,就表明發現了該位元組串所代表的病毒。國外稱這種按搜索法工作的病毒掃瞄軟體為“Scanner”。這種病毒掃瞄軟體由兩部分組成:一部分是病毒代碼庫,含有經過特別選定的各種電腦病毒的代碼串;另一部分是利用該代碼庫進行掃瞄的掃瞄程序,病毒掃瞄程序能識別的電腦病毒的數目完全取決於病毒代碼庫內所含病毒種類的多少。病毒代碼串的選擇是非常重要的,短小的病毒代碼只有一百多個位元組,長的也只有10KB位元組。一定要在仔細分析程序之后選出最具代表特性的,足以將該病毒區別於其它病毒和該病毒的其它變種的代碼串。一般情況下,代碼串是由連續若干個位元組組成的,但是有些掃瞄軟體採用的是可變長串,即在串中包含有一個到幾個“模糊”位元組。掃瞄軟體遇到這種串時,只要除“模糊”位元組之外的字串都能完好匹配,就也能夠判別出病毒。另外,特征串還必須能將病毒與正常的非病毒程序區,不然就會出現“假報、誤報”。

特征字識別法

  這是基於特征串掃瞄法發展起來的一種方式,運行速度較快、誤報頻率較低。特征字識別法只須從病毒體內抽取很少的幾個關鍵特征字,組成特征字庫。由於需要處理的位元組很少,又不必進行串匹配,因此大大加快了識別速度,當被處理的程序很大時,用這種辦法比較合適。由於特征字識別法更注意電腦病毒的“程序活性”,因此減少了錯報的可能性。使用基於特征串掃瞄法的查病毒軟體方法與使用基於特征字識別法的查病毒軟體方法是一樣的,只要運行查毒程序,就能將已知的病毒檢查出來。這兩種方法的使用,都須要不斷地對病毒庫進行擴充,一旦捕捉到病毒,經過提取特征並加入到病毒庫,就能使查病毒程序多檢查出一種新病毒來。

  分析法

  這種方法一方面可以確認被觀察的磁盤引導區和程序中是否含有病毒,另一方面可以辨認病毒的類型和種類,判定是否為一種新病毒,另外還可以搞清楚病毒體的大致結構,提取用於特征識別的位元組串或特征字,增添到病毒代碼庫中供病毒掃瞄和識別程序使用。同時,詳細地分析病毒代碼,還有助於制定相應的反病毒方案。與前三種檢測病毒的方法不同,使用分析法檢測病毒,除了要具有相關的知識外,還需要使用Debug、Proview等分析工具程序和專用的試驗用電腦。因為即使是很精通病毒的技術人員,使用性能完善的分析軟體,也不能完全保證在短時間內將病毒代碼分析清楚;而病毒則有可能在被分析階段繼續傳染甚至發作,把軟式磁碟機、硬碟內的資料完全毀壞掉,所以分析工作必須在專門的試驗用PC機上進行,不怕其中的資料被破壞。不具備必要的條件,不要輕易開始分析工作。很多電腦病毒採用了自加密、抗跟蹤等技術,使得分析病毒的工作經常是冗長枯燥的。特別是某些文件型病毒的源代碼可達10KB以上,與系統的牽扯層次很深,使詳細的剖析工作十分復雜。病毒檢測的分析法是反病毒工作中不可或缺的重要技術,任何一個性能優良的反病毒系統的研制和開發都離不開專門人員對各種病毒詳盡、認真的分析。

  分析法分為靜態和動態兩種。靜態分析是指利用Debug等反匯程式化序將病毒代碼打印成反匯編后的程序清單進行分析,看病毒分成哪些模塊,使用了哪些系統調用,採用了哪些技巧,如何將病毒感染文件的過程翻轉為清除病毒、修復文件的過程,哪些代碼可被用做特征碼以及如何防御這種病毒等等。分析人員的素質越高,分析過程就越快,理解也就越深;動態分析則是指利用Debug等程序調試工具在記憶體帶毒的情況下,對病毒作動態跟蹤,觀察病毒的具體工作過程,以進一步在靜態分析的基礎上理解病毒工作的原理。在病毒編碼比較簡單的情況下,動態分析不是必須的。但是,當病毒採用了較多的技術手段時,就必須使用動、靜相結合的分析方法才能完成整個分析過程。

  綜上所述,利用原始備份和被檢測程序相比較的方法適合於不用專用軟體,可以發現異常情況的場合,是一種簡單、基本的病毒檢測方法;掃瞄特征串和識別特性字的方法更適用於廣大PC機使用者使用,方便而又迅速;但對新出現的病毒會出現漏檢的情況,須要與分析和比較法結合使用。

  通過採取技術上和管理上的措施,電腦病毒是完全可以防範的。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

QQ|手机版|小黑屋|☆我要吧☆ ( 豫ICP备13016831号-1 )

GMT+8, 2024-11-24 15:23 , Processed in 0.059705 second(s), 23 queries .

Powered by abc369 X3.4

© 2001-2023 abc369.

快速回复 返回顶部 返回列表