GDI+漏洞介紹
近日,微軟爆出有史以來最大的安全漏洞。通過該漏洞,攻擊者可以將木馬藏於圖片中,網民無論是通過瀏覽器瀏覽、還是用各種看圖軟體打開、或者在即時聊天視窗、電子郵件、Office文檔里查看這些圖片,只要看了就會中招!哪怕只是看了一個QQ表情!其危害程度遠遠超過以往微軟公布過的任何安全漏洞。
據安全專家介紹,此次微軟爆出的GDI+圖片漏洞非常嚴重,有點類似以前的“游標漏洞”和“wmf漏洞”,但涉及的圖片格式更多,包括bmp、wmf、gif、emf、vml等,因此漏洞涉及面廣,影響網民數眾多,危害程度特別巨大,堪稱“微軟有史以來最大的安全漏洞”。
GDI+漏洞(MS08-052)將影響常見的圖片檔案格式GIF、EMF、WMF、VML、BMP,也就是說機器上有該漏洞的系統一旦打開(甚至不需要用戶打開,只要程式解析該檔案)包含有漏洞的利用代碼的檔案就會執行其中的任意代碼。對於該漏洞黑客可以通過在網路上掛馬、BBS社區中上傳圖片、QQ等聊天工具中傳送圖片或者表情來利用,一旦機器上有漏洞的用戶看到該圖片就會執行黑客指定的任意代碼,比如下載執行木馬、格式化硬碟等。由於很多第三方軟體也含有該漏洞,所以簡單的為系統打上補丁並不能徹底補上該漏洞,因此我們建議大家使用超級巡警GDI+漏洞(MS08-052)修復程式來進行漏洞修補。目前已有黑客開始注意該漏洞並研究利用方法。
存在GDI+漏洞的檔案
檔案名稱稱:gdiplus.dll
檔案版本:5.1.3102.2180
檔案名稱稱:VGX.dll
檔案路徑:%CommonProgramFiles%MicrosoftSharedVGX
檔案版本:7.00.6000.20628 7.00.6000.16386 6.00.2900.3051 6.00.2900.2997
漏洞相關描述
GDI+VML緩衝區溢出漏洞-CVE-2007-5348
GDI+處理漸變大小的方式中存在一個遠程執行代碼漏洞。如果用戶瀏覽包含特製內容的網站,該漏洞可能允許遠程執行代碼。成功利用此漏洞的攻擊者可以完全控制受影響的系統。攻擊者可隨後安裝程式;查看、更改或刪除數據;或者創建擁有完全用戶許可權的新帳戶。那些帳戶被配置為擁有較少系統用戶許可權的用戶比具有管理用戶許可權的用戶受到的影響要小。
GDI+EMF記憶體損壞漏洞-CVE-2008-3012
GDI+處理記憶體分配的方式中存在一個遠程執行代碼漏洞。如果用戶打開特製的EMF圖像檔案或瀏覽包含特製內容的網站,則此漏洞可能允許遠程執行代碼。成功利用此漏洞的攻擊者可以完全控制受影響的系統。攻擊者可隨後安裝程式;查看、更改或刪除數據;或者創建擁有完全用戶許可權的新帳戶。那些帳戶被配置為擁有較少系統用戶許可權的用戶比具有管理用戶許可權的用戶受到的影響要小。
GDI+GIF分析漏洞-CVE-2008-3013
GDI+分析GIF圖像的方式中存在一個遠程執行代碼漏洞。如果用戶打開特製的GIF圖像檔案或瀏覽包含特製內容的網站,則此漏洞可能允許遠程執行代碼。成功利用此漏洞的攻擊者可以完全控制受影響的系統。攻擊者可隨後安裝程式;查看、更改或刪除數據;或者創建新帳戶。
GDI+WMF緩衝區溢出漏洞-CVE-2008-3014
GDI+為WMF圖像檔案分配記憶體的方式中存在一個遠程執行代碼漏洞。如果用戶打開特製的WMF圖像檔案或瀏覽包含特製內容的網站,則此漏洞可能允許遠程執行代碼。成功利用此漏洞的攻擊者可以完全控制受影響的系統。攻擊者可隨後安裝程式;查看、更改或刪除數據;或者創建擁有完全用戶許可權的新帳戶。那些帳戶被配置為擁有較少系統用戶許可權的用戶比具有管理用戶許可權的用戶受到的影響要小。
GDI+BMP整數溢出漏洞-CVE-2008-3015
GDI+處理整數計算的方式中存在一個遠程執行代碼漏洞。如果用戶打開特製的BMP圖像檔案,該漏洞可能允許遠程執行代碼。成功利用此漏洞的攻擊者可以完全控制受影響的系統。攻擊者可隨後安裝程式;查看、更改或刪除數據;或者創建擁有完全用戶許可權的新帳戶。那些帳戶被配置為擁有較少系統用戶許可權的用戶比具有管理用戶許可權的用戶受到的影響要小。
GDI+漏洞的影響
受此漏洞影響,幾乎所有瀏覽器、即時聊天工具、Office程式以及看圖軟體等第三方軟體都可能成為木馬傳播的渠道。網民即便沒有點擊運行任何程式,只要瀏覽了BBS、部落格、電子郵件或即時聊天視窗裡帶木馬的圖片,就會立即中招。一旦網民查看了這些帶木馬的圖片,或瀏覽了帶木馬圖片的網站,攻擊者就能利用這一GDI+圖片漏洞遠程執行代碼和安裝程式,隨意查看、更改或刪除用戶的電腦數據,或者創建能完全訪問用戶電腦的新帳戶。也就是說,攻擊者可以利用該漏洞完全控制住你的電腦!
漏洞影響:
Microsoft產品中所使用的GDI+庫(GdiPlus.dll)通過基於類的API提供對各種圖形方式的訪問。
GDI+庫在解析特製的BMP檔案時存在整數溢出漏洞,如果檔案中包含有畸形的BitMapInfoHeader的話,就會導致錯誤的整數計算,最終觸發可利用的記憶體破壞。成功利用此漏洞的攻擊者可完全控制受影響的系統。如果用戶使用受影響的軟體查看特製圖像檔案或瀏覽包含特製內容的網站,則這些漏洞可能允許遠程執行代碼。
攻擊者可隨後安裝程式;查看、更改或刪除數據;或者創建擁有完全用戶許可權的新帳戶。那些帳戶被配置為擁有較少系統用戶許可權的用戶比具有管理用戶許可權的用戶受到的影響要小。
受影響的圖片格式:
此次gdi+漏洞非常嚴重,類似以前的游標漏洞和wmf漏洞,涉及的格式更廣(bmp\wmf\gif\emf\vml)
漏洞影響的系統和軟體:
MicrosoftWindowsServer2003DatacenterEdition
MicrosoftWindowsServer2003EnterpriseEdition
MicrosoftWindowsServer2003StandardEdition
MicrosoftWindowsServer2003WebEdition
MicrosoftWindowsServer2008
MicrosoftWindowsStorageServer2003
MicrosoftWindowsVista
MicrosoftWindowsXPHomeEdition
MicrosoftWindowsXPProfessional
微軟軟體:
Microsoft.NETFramework1.x
Microsoft.NETFramework2.x
MicrosoftDigitalImage200611.x
MicrosoftForefrontClientSecurity1.x
MicrosoftOffice2003ProfessionalEdition
MicrosoftOffice2003SmallBusinessEdition
MicrosoftOffice2003StandardEdition
MicrosoftOffice2003StudentandTeacherEdition
MicrosoftOffice2007
MicrosoftOfficeExcelViewer
MicrosoftOfficeExcelViewer2003
MicrosoftOfficePowerPointViewer2003
MicrosoftOfficePowerPointViewer2007
MicrosoftOfficeProject2002
MicrosoftOfficeWordViewer
MicrosoftOfficeXP
MicrosoftPlatformSDKRedistributable:GDI+
MicrosoftSQLServer2005
MicrosoftSQLServer2005CompactEdition3.x
MicrosoftSQLServer2005ExpressEdition
MicrosoftVisio2002
MicrosoftVisio2003Viewer
MicrosoftVisio2007Viewer
MicrosoftVisualFoxPro9.x
MicrosoftVisualStudio2005
MicrosoftVisualStudio2008
MicrosoftWordViewer2003
MicrosoftWorks8.x
SQLServer2000ReportingServices
其他引用了含有漏洞的GdiPlus.dll的應用程式。
GDI+漏洞答疑
此漏洞的影響範圍有多大?
這是一個遠程執行代碼漏洞。成功利用此漏洞的攻擊者可以完全控制受影響的系統。攻擊者可隨後安裝程式;查看、更改或刪除數據;或者創建擁有完全用戶許可權的新帳戶。
造成漏洞的原因是什麼?
漏洞是由於GDI未正確處理特製的EMF或WMF圖像檔案中的格式錯誤的標題時緩衝區溢出造成的。
什麼是GDI?
MicrosoftWindows圖形設備接口(GDI)允許應用程式在視頻顯示和印表機上使用圖形和格式化文本。基於Windows的應用程式不直接訪問圖形硬體。而是GDI代表應用程式與設備驅動程式進行互動。有關GDI的詳細信息,請訪問WindowsGDI起始頁。
什麼是Windows圖元檔案(WMF)和增強型圖元檔案(EMF)圖像格式?
WMF圖像是一種16點陣圖元檔案格式,其中可以同時包含矢量信息和點陣圖信息。它非常適合Windows作業系統。
EMF圖像是一個32位格式,其中可以同時包含矢量信息和點陣圖信息。此格式是對Windows圖元檔案格式的改進,加入了一些擴展功能。
有關圖像類型和格式的詳細信息,請參閱Microsoft知識庫文章320314。有關這些檔案格式的其他信息,請訪問MSDN技術資源庫網站。
攻擊者可能利用此漏洞執行什麼操作?
成功利用此漏洞的攻擊者可以運行任意代碼。攻擊者可隨後安裝程式;查看、更改或刪除數據;或者創建擁有完全用戶許可權的新帳戶。
攻擊者如何利用此漏洞?
此漏洞要求用戶打開特製圖像檔案。
在電子郵件攻擊情形中,攻擊者可以通過向用戶傳送特製的EMF或WMF圖像檔案或者其中嵌入EMF或WMF圖像檔案的Office文檔,並誘使用戶打開文檔或查看內含特製圖像檔案的電子郵件來利用此漏洞。
在基於Web的攻擊情形中,攻擊者必須擁有一個網站,其中包含用於嘗試利用此漏洞的EMF或WMF圖像檔案。另外,接受或宿主用戶提供的內容的網站以及受到破壞的網站可能包含可能利用此漏洞的特製內容。攻擊者無法強迫用戶訪問特製的網站。相反,攻擊者必須說服用戶訪問該網站,方法通常是讓用戶單擊電子郵件或InstantMessenger訊息中的連結以使用戶連結到攻擊者的網站。
受此漏洞威脅最大的系統有哪些?
所有當前支持的Windows系統均受到威脅。WindowsXPServicePack3不受此漏洞的影響。
此更新有什麼作用?
此更新通過修改GDI執行整數計算以阻止堆溢出的方式來消除此漏洞。
發布此安全公告時,此漏洞是否已公開披露?
否。Microsoft通過可靠的披露渠道了解到有關此漏洞的信息。在最初發布此安全公告時,Microsoft未收到任何表明此漏洞已公開披露的信息。此安全公告解決了秘密披露的漏洞以及通過內部調查發現的其他問題。
在發布此安全公告時,Microsoft是否收到任何有關此漏洞已被利用的報告?
否。在最初發布此安全公告時,Microsoft未收到任何表明此漏洞已被公開用於攻擊客戶的信息,也沒有看到任何發布的概念代碼證明示例。
我是第三方應用程式開發人員,我的應用程式使用gdiplus.dll。我的應用程式是否容易受到攻擊,如何進行更新?
重新分發gdiplus.dll的開發人員應該確保他們通過下載本公告中提供的更新來更新隨其應用程式安裝的gdiplus.dll版本。鼓勵開發人員按照使用共享組件的推薦最佳方案執行操作。有關使用共享組件的最佳做法的詳細信息,請參閱關於獨立應用程式的Microsoft知識庫文章835322。
我正在開發包含可重新分發檔案gdiplus.dll的軟體。應該怎樣做?
您應該為您的開發軟體安裝本公告中提供的安全更新。如果已經隨您的應用程式重新分發了gdiplus.dll,您應該使用為您的開發軟體下載此安全更新時獲得的此檔案更新版本向您的客戶發布您的應用程式的更新版本。
如果第三方應用程式使用或安裝受影響的gdiplus.dll組件,那么安裝所有需要的Microsoft安全更新之後是否仍然容易受到攻擊?
否,此安全更新替換並重新註冊隨作業系統提供的受影響的組件。如果第三方應用程式遵循建議的最佳方案,即將共享組件用作並列組件,那么它們也不會受到影響。如果第三方應用程式沒有遵循推薦的最佳方案,而是隨其應用程式一起重新分發了gdiplus.dll的舊版本,則客戶可能受到威脅。Microsoft知識庫文章954593也包含面向希望手動檢查已註冊的受影響OLE組件的說明。鼓勵客戶聯繫第三方解決方案開發商以獲取其他信息。