MS09-002 IE7 漏洞原理分析
微軟公司在北京時間2月11日發布了MS09-002漏洞的安全更新程序,安天實驗室反病毒監測網發現利用此漏洞的攻擊代碼已經被發布到互聯網上,如果用戶沒有及時安裝補丁,則存在漏洞的IE7浏覽器可能會在浏覽網頁時被病毒入侵,安天實驗室提醒用戶在上網時務必安裝微軟MS09-002漏洞補丁,以免遭受惡意病毒攻擊。
安天實驗室在第一時間對MS09-002 IE7漏洞進行了原理分析,分析報告如下。
MS09-002漏洞與去年的MS08-069漏洞原理類似,同時該漏洞也是發生在IE7使用的MSHTML.dll中,當文檔對象釋放掉後,內存指針沒有被釋放,繼續利用,而這個指針被人爲指向了一段堆地址,而如果這段地址被 ShellCode 覆蓋過的話,調用這個指針就會導致有溢出。
攻擊利用代碼
從代碼中看到創建了對象O1,cloneNode從文檔層次中複制對象的引用給O2,這時O1.clearAttributes從對象中刪除全部標簽屬性和值。再次調用click屬性指針,該指針被指向到Shellcode的位置導致溢出發生。
這是從調試器中看mshtml.dll中釋放對象後再次利用這個對象的指針EAX,該ECX中的值爲0x0B0BFFFF,即跳轉到shellcode的地址。由於文檔對象已經被銷毀,接下來執行call dword ptr [ecx+4]後,將跳轉到一個0x0B0BFFFF+4位置執行,該位置被設置成shellcode的代碼,這個位置是被釋放文檔對象原來所在內存位置。
說明:
當安裝有IE7的用戶浏覽被攻擊者特殊構造的網頁時,係統有可能會自動從惡意網站上下載並運行惡意程序。被感染病毒的用戶係統可能被遠程控制,盜取用戶敏感信息。甚至導致死機。
漏洞信息:
1.未初始化的內存損壞漏洞 – CVE-2009-0075
Internet Explorer訪問已被刪除的對象的方式中存在一個遠程執行代碼漏洞。攻擊者可以通過構建特制的網頁來利用該漏洞。當用戶查看網頁時,該漏洞可能允許遠程執行代碼。成功利用此漏洞的攻擊者可以獲得與登錄用戶相同的用戶權限。
2.CSS 內存損壞漏洞 - CVE-2009-0076
Internet Explorer處理級聯樣式表(CSS)的方式中存在一個遠程執行代碼漏洞。攻擊者可以通過構建特制的網頁來利用該漏洞。當用戶查看網頁時,該漏洞可能允許遠程執行代碼。成功利用此漏洞的攻擊者可以獲得與登錄用戶相同的用戶權限。
關於MS09-002漏洞的詳細信息參照:
http://www.microsoft.com/china/techne...in/MS09-002.mspx 更新補丁地址:
http://support.micros...b/961260