查看單個文章
舊 2006-05-09, 01:03 AM   #2 (permalink)
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設

電腦硬體防病毒原理

DEP由於直接關係到緩衝攻擊的效果,所以轉次帖.供大家參考。

眾所周知,Windows XP SP2中增加了一項安全新功能——DEP(Date Execution Prevention資料執行保護),可以保護電腦免受病毒的破壞。為了配合微軟的DEP技術,Intel和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,然後按下「開始→設定→ 控制台」,雙按「系統」,按下「進階」選擇項,按下「效能」下的「設定」,按下「資料執行保護」選擇項,選「為除下列程序之外的所有程式和服務啟用 DEP」(如圖),按下「增加」,瀏覽到「Program Files」資料夾,選項該程序(Acrobat Reader 5.0)的可執行文件(副檔名為.exe),最後按下「確定」完成。

如果你要為某程式(例如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日發怖了相關修正文件,大家可以到微軟的官方網站去下載。Windows XP英文版用戶下載位址是 http://download.microsoft.com/downlo...a5f5398-2391-4 2e6-8b40-f6ec4db31c88/WindowsXP-KB885626-v2-x86-enu.exe ,Windows XP簡體中文版用戶下載位址 http://download.microsoft.com/downlo...b75ebbf-ce4c-4 595-8ddf-4d45e4c1ca18/WindowsXP-KB885626-v2-x86-chs.exe

為了支持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的病毒防護功能。

補充:資料執行保護 (DEP) 有助於防止來自病毒和其他安全威脅的損壞,這些安全威脅可以通過在僅應該由 Windows 和其他程序使用的記憶體位置上執行(執行)惡意程式碼來發起攻擊。這種威脅可以通過接管由程序正在使用的一個或多個記憶體位置而造成破壞。然後,它會傳播和損害其他程序、文件甚至電子郵件聯繫人。

與防火牆或防病毒程序不同,DEP 不會防止有害的程序安裝在電腦中。然而,它會監視程序以確定程序是否安全地使用系統記憶體。為此,DEP 軟體可以獨立工作,也可以與相容的微處理器協同工作,從而將某些記憶體位置標記為「不可執行」。如果某個程序嘗試從受保護的位置執行惡意或非惡意程式碼, DEP 會關閉該程序並通知您。

DEP 可以利用軟體和硬體支持。要使用 DEP,電腦必須執行帶有 Service Pack 2 (SP2) 的 Microsoft Windows XP、帶有 Service Pack 1 (SP1) 的 Microsoft Windows Server 2003 或者關於 x64 的 Windows Server 2003 或 Windows XP 作業系統版本。單獨使用 DEP 軟體即可有助於防止特定檔案類型的惡意程式碼攻擊,但要充分利用 DEP 所提供的保護功能,處理器必須支持「執行保護」。這是一種關於硬體的技術,目的在於將記憶體位置標記為「不可執行」。如果您的處理器不支持關於硬體的 DEP,那麼最好昇級到可提供執行保護功能的處理器。

如果 DEP 已關閉程序,再次執行該程序是否安全?

安全,但是要保持對該程序開啟 DEP。Windows 可以繼續檢測那些從受保護的記憶體位置執行程式碼的嘗試,這樣有助於防止受到攻擊。如果 DEP 開啟時程序不能正常執行,可以從軟體發行商那裡獲得相容 DEP 的程序版本來降低安全風險。
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次