一位安全專家找到解決微軟地址空間層隨機化的方法,能夠突破這種用于保護操作系統免受內存類攻擊的手段。
由于此次在地址空間布局隨機化(簡稱ASLR)機制中發現的新漏洞,目前廣泛在用的微軟Windows主流版本面臨嚴重的安全威脅。
卡耐基梅隆大學CERT-CC高級漏洞分析師Will Dormann(威爾·多曼)發現并報告了這項漏洞。他解釋稱,由于通過EMET在系統內強制啟用的ASLR具有零熵(非隨機,本應是隨機分配內存地址,但實際上地址是固定的),因此各受影響系統“無法受到任何有效保護”。
這意味著攻擊者將能夠輕松利用Windows 8及后續更新系統中的內存損壞漏洞,并導致ASLR保護無效化。ASLR的預期作用在于能夠更好地解決內存損壞類錯誤,但事實上并不能真正實現這一效果。
ASLR地址空間布局隨機化(ASLR)支持作為一個系統加固技術,被大多數主要的桌面和移動操作系統所支持。
ASLR自Windows Vista時期起正式亮相,通過將系統可執行程序隨機裝載到內存里,可防止代碼復用類攻擊,例如緩沖溢出攻擊。ASLR還能通過讓那些正受攻擊的系統文件崩潰來誤導惡意軟件。iOS、Android、Windows、MacOS和Linux都使用ASLR,以便讓系統更安全。
自Windows 8開始,微軟公司開始提供系統級強制ASLR功能。即使對于不支持ASLR的應用程序,管理員同樣能夠實現程序位置隨機化。
EMET則是一款免費工具,微軟公司此前利用其保護未啟用ASLR以及其它漏洞利用解決工具的應用程序。管理員可通過EMET界面啟用這些功能。而到Windows 10 Fall Creators Update版本,其將EMET的關鍵功能整合到了Windows Defender Exploit Guard當中。
漏洞影響范圍此項安全漏洞會影響到通過微軟增強緩解體驗工具包(簡稱EMET)或者Windows Defender Exploit Guard啟用ASLR功能的Windows 8、Windows 8.1以及Windows 10系統。Exploit Guard能夠選擇自下而上為整個系統啟用ASLR。
正如Dormann的發現,Windows 8、Windows 8.1以及Windows 10中的ASLR實際上并沒有對內存位置進行隨機化處理。如果Exploit Guard中的默認GUI顯示為“默認為開啟”,將導致程序被重新定位到可預測的地址。
美國國土安全部(DHS)的一位發言人表示,這可能會導致多種潛在的攻擊風險。
誤以為自己受到ASLR保護的用戶可能會遭遇多種潛在風險;例如在未經請求的消息中打開附件。在正常情況下,只要ASLR能夠順利起效,那么即使消息本身存在釣魚風險,用戶也不會受到影響。但由于事實證明ASLR無法真正起效,因此受害者的系統很可能被攻擊者所侵入,并導致其借此訪問更多其它系統。
不屬于“安全”缺陷?微軟公司指出,這一問題并不屬于安全缺陷。其解釋稱卡耐基梅隆大學CERT/CC發現并向US-CERT報告的這項問題的關鍵,在于使用Exploit Guard與EMET配置ASLR的非默認設置。該公司正在調查并解決這一配置問題。
微軟公司的一位發言人表示,“US CERT所描述的問題并不屬于安全漏洞。ASLR的運行方式與設計思路并無不同,運行Windows默認配置的客戶不會承受更高風險。”
CERT/CC目前還沒有找到這個問題的實際解決方案。
Dormann在其個人博文當中為管理員們提供了緩解措施。他建議大家利用特定的注冊表值在Windows 8或更高版本當中以自下而上方式強制啟用ASLR系統。
此外,企業則應利用縱深防御策略以保護自己的網絡、用戶及數據免受未授權訪問的侵擾。