Windows
Windows Vista 安全

第 3 劑:ASLR 隨機記憶體編排

記憶體位置隨機配置,防堵惡意程式植入

史百誠表示,Vista 在核心層做的最大改變,除了 UAC 功能之外,另一個就是,藉助 Unix 系統的 ASLR (Address Space Load Randomization,位址空間配置隨機化) 功能。

ASLR 以前在 Unix 系統中就有,在電腦一開機時,就可以將一些重要的系統檔案下載到不同的記憶體位置。李倫銓指出,對於不同語言版本的 Windows XP 作業系統而言,其記憶體對應的位置都是一樣的,簡體中文版、英文版等,與正體中文版也都只有一小部分記憶體位置對應的差別。因此,以前駭客只要完成某一個語系作業系統的攻擊程式,就可以攻擊同一語系的電腦,對於其他語系電腦的入侵,有時候甚至也不需要多加修改即可適用。

不過,隨著 Vista 加入 ASLR 功能,讓每個作業系統記憶體空間位置編排隨機化,李倫銓說:「未來,Vista 很難出現蠕蟲,也很難有大規模的病毒擴散,「即使是緩衝區溢位攻擊的漏洞,也很難利用透過推論記憶體位置的手法,再次成功攻擊,」因為,「ASLR 的功能讓開發人員連除錯 (Debug) 都很難。」邱銘彰也同意這說法,「ASLR 功能讓駭客撰寫攻擊程式的難度變高,」ASLR 在 Vista 32 位元版本就具有這樣的功能,Nanika 說,但必須與處理器的 NX (No Execution,非執行技術) 功能配合,才能相得益彰。

目前有些惡意程式會採用緩衝區溢位的手法,注入記憶體中執行,為了確保電腦系統的安全,處理器晶片廠商不論是 AMD 或英特爾,都推出具有 NX 技術的處理器晶片,藉由保護記憶體中某一些片段,將記憶體設定為隔離區,讓處理器無法在這些片段執行指令,藉此阻止蠕蟲或其他惡意程式碼藉此執行。

不過,NX 保護對於針對特定系統函數的攻擊無效,此時若加上 ASLR 功能,因為難以確定系統函數的位址,兩者結合將可有效限制緩衝區溢位的危害程度。

                                                                                                                    下一頁



微軟對 Windows 愛用者誠摯的小叮嚀!
微軟對 Windows 愛用者誠摯的小叮嚀!
隨著電腦的普及化,面對軟硬體的推陳出新,您心裡一定有很多疑問,不要再 "聽說" 了,讓我們一次為您解惑。
尋求協助,取得解答
尋求協助,取得解答
從疑難排解的秘訣,到連絡 Microsoft 技術支援服務,取得您所需的協助。
在收件匣中取得 Windows 最新資訊
在收件匣中取得 Windows 最新資訊
搶先取得秘訣、新聞及下載。取得 Exploring Windows 電子報。

Microsoft
© 2009 Microsoft