發新話題

[分享] WinXP SP2的DEP技術揭秘

WinXP SP2的DEP技術揭秘

眾所周知,Windows XP SP2中增加了一項安全新功能--DEP(Date Execution Prevention資料執行保護),可以保護電腦免受病毒的破壞。為了配合微軟的DEP技術,LNTE和AMD都開發了相應的防病毒CPU

  DEP的防病毒原理

  如果你的系統升級到了SP2,啟用SP2的DEP功能即可防範病毒破壞,這是因為DEP能夠對各種程式進行監視,阻止病毒在受保護的記憶體位置運行有害代碼。DEP通過處理器的NX(No eXecute)功能,查找記憶體中沒有明確包含可執行代碼的資料(這些資料有時會是病毒的源代碼),找到這些資料後,NX將它們都標記為「不可執行」。以後如果某程式在記憶體中,試圖執行這些帶「不可執行」標記的代碼,SP2將會自動關閉該程式。因此,假如你運行了一個已經染毒的軟體,DEP就會把病毒代碼標記為「不可執行」,這樣就能阻止病毒在記憶體中運行,保護電腦中的檔免受蠕蟲、病毒的傳染破壞。

  如果你想充分發揮DEP的保護功能,除了要把系統升級到SP2之外,你的CPU還必須支援DEP技術。目前常見的32位處理器(例如P4 Northwood等)並不支援NX,支援該技術的CPU主要有AMD的64位處理器(Athlon 64、AMD Opteron),以及Intel的安騰系列CPU、J系列的P4 Prescott,據說nVIDIA、VIA、全美達等公司也計劃在其晶片中加入NX技術,不過這些廠商更新NX的步伐過於緩慢,正式推出還有待時日。

  啟用或禁用DEP的方法

  默認情況下,SP2僅對基本 Windows 程式和服務啟用了DEP。不過你也可以自己設置,讓電腦上的所有程式都啟用DEP,以便防範病毒。

  例如除了Acrobat Reader5.0之外,要讓所有的程式和服務都啟用DEP,操作方法是:以管理員許可權帳戶登錄SP2,然後單擊「開始→「控制台」,雙擊「系統」,單擊「進階」→「性能」下的「設定」。

單擊「資料執行防止」選項卡,選中「為所有Windows程式和服務啟用DEP,除我選擇的這些」單擊「添加」。

導航到「Program Files」檔夾,選擇該程式(Acrobat Reader 5.0)的可執行檔,最後單擊「確定」完成。

這樣就除了Acrobat Reader 5.0外所有的程式都受到了DEP的保護,但以後該程式就很容易受到攻擊,病毒能夠潛入該程式中,然後再傳染給電腦上的其他程式及Outlook中的聯繫人,並且破壞你的個人檔。如果有的程式啟用 DEP 後無法正常運行,你可以向軟體廠商索取相容DEP的程式版本,如果沒有這樣的版本則禁用DEP。

  為了支援DEP,P4 Prescott採用了EDB 技術

  為了配合微軟的DEP功能,Intel為自己的CPU開發了「Execute Disable Bit」(EDB)記憶體保護技術。目前Intel P4 Prescott(mPGA478與LGA775封裝)為C0或D0步進核心,最新的J系列P4 Prescott採用E0步進核心。其中只有J系列P4 Prescott具備防病毒功能,只有它才真正支援EDB技術,能夠配合SP2的DEP防毒功能,讓針對緩衝區溢出(buffer overrun)漏洞設計的病毒失效,預防它們複製並散播到其他系統。

  如果你使用了P4 Prescott/Celeron D(C0步進核心)的處理器,升級到SP2之後,就會發現Windows XP作業系統鎖死在啟動畫面,但換上P4 Northwood卻不會出現這個問題。這是因為SP2能夠開啟P4 Prescott (C0步進核心)內含的EDB 功能,但是這種型號的CPU並沒有EDB的執行能力,其內部EDB部分的電晶體不會加電運作,因此會導致系統鎖死。為了解決這個問題,微軟已在9月14日發佈了相關修正檔,大家可以到微軟的官方網站去下載。

  為了支援DEP,AMD的64位CPU使用EVP技術

  AMD 64位處理器最先支援微軟的DEP技術。為了配合DEP,AMD與微軟一起設計研發了AMD的新晶片功能「Enhanced Virus Protection」(EVP增強病毒保護)。AMD 64位處理器(包括Athlon 64/Athlon 64 FX/Athlon 64移動版本/Sempron移動版本等)都將具有EVP功能。EVP功能可以和SP2的DEP技術配合,防範「緩存溢出」這一常見攻擊手段,打擊一些病毒和蠕蟲,對收發電子郵件、下載檔等日常工作進行更好的保護。

  不過在AMD 64位處理器的機器上安裝SP2之後,只要你的電腦啟動了DEP功能、並且配置了要求名為Mpegport.sys驅動程式檔的硬體設備,當你使用Sigma設計公司的Realmagic Hollywood Plus DVD解碼軟體時,就會與DEP發生衝突。這是因為比較老的驅動程式會進行一些與病毒類似的操作,於是SP2就誤認它為病毒,從而啟動DEP,導致電腦反覆地重新啟動。為了解決這個問題,微軟建議用戶更新這個較老的驅動程式,或者為這個解碼軟體禁用DEP,關掉SP2的病毒防護功能。

TOP

感謝大大熱心分享,增加對電腦的瞭解知識!

TOP

發新話題

本站所有圖文均屬網友發表,僅代表作者的觀點與本站無關,如有侵權請通知版主會盡快刪除。