2014年4月30日 星期三

電腦防禦─(EMET)對抗緩衝區漏洞工具

資料來源
http://www.manetic.org/index.php?option=com_content&view=article&id=639%3Aenhanced-mitigation-experience-toolkit-emet-&catid=66%3Ais-audit-a-security&Itemid=301&lang=en

電腦防禦─Enhanced Mitigation Experience Toolkit (EMET)

By Carol U, Senior Technical Consultant, MOCERT

對抗緩衝區漏洞工具

現今數碼年代,電腦的應用越來越廣泛;不論是娛樂、通訊或是透過網上學習或購物,電腦已成為日常生活的基本設備。在報章、雜誌或電視新聞,也經常提到不同類型的電腦案例,如個人或機構的資料外洩等,導致名譽或金錢損失。

作為用戶,除了加強自身的電腦保安意識,把電腦保安措施做好;如安裝防衛掃毒軟件,定期更新防毒軟件庫及掃瞄病毒,安裝並啟動個人防火牆等;更要定期更新軟件及補丁,防範軟件漏洞。


但以上所提及的防護,對於零時差攻擊 (Zero Day Attack─駭客利用軟件廠商尚未發現的安全漏洞所做的攻擊)。 不論是由軟件先天設計缺陷所引起或最近發現之軟體漏洞,用戶基本是“零防護”,連軟件廠商也束手無策。

軟件廠商開放軟件更新需時,時間可能是一日,十日,甚至是幾個月的時間。駭客可利用這個機會,發動零時差攻擊。

對於Windows操作系統,微軟公司推出一款名叫Enhanced Mitigation Experience Toolkit(EMET)的免費安全工具。它為Windows系統、應用程序,及由其他廠商開發之應用程序,提供安全方案和技術支援。

Adobe公司也曾於2010年10月份,因未能即時回應高危漏洞,而在Adobe公告上建議其用戶啟動EMET功能,防範“零時差”攻擊。

功能簡介

在新版本Emet2.0內,它整合了多種防止緩衝區漏洞功能,如ASLR(Address Space Load Randomization),DEP(Data Execution Prevention)以及SEHOP(Structured Exception Handling Overwrite Protection)等多項功能,並提供容易使用的界面。
  • ASLR(Address Space Load Randomization,記憶體位置編排隨機化)
    透過ASLR功能,能讓系統檔案及其他應用程序,儲存在不同的記憶體。 在開動ASLR的情況下,駭客難以使用慣性手法,利用Buffer Overflow (緩衝區溢出)漏洞─在操作系統或應用程序出現問題時,猜測出下一個會讀取的內存地址,並由此進行破壞或入侵系統。
  • DEP (Data Execution Prevention資料防止執行):
    是一種系統內置之內存保護機制。DEP可強制操作系統,把內存標示為非執行區塊(region of non-executable)。它可監視執行中的應用程序,阻止有問題的軟件,寫入非執行區塊。
  • SEHOP (Structured Exception Handling Overwrite Protection防止結構異常處理覆寫):
    對已使用Structured Exception Handling(SEH)之執行程序進行安全檢測,防止Structured Exception Handler覆寫攻擊。
  • 其他
    除了上述提到的保護機制外,EMET還包括Heapspary Allocations─把Heapspary常用之地址預先分配,防止地址被惡意程序利用 及EAF (Export Address Table Access Filtering)─檢查“導出地址表”之代碼是否存在;若否,終止可疑程序等功能。
支援操作系統:

Client Operation Systems用戶系統包括:
  • Windows XP service pack 3及以上版本
  • Windows Vista service pack 1及以上版本
  • Windows 7所有 service packs版本

Server Operation Systems 伺服器系統包括:
  • Windows Server 2003 service pack1及以上版本
  • Windows Server 2008 所有service packs版本
  • Window Server 2008 R2所有server packs版本

EMET適用於市面上大部份之操作系統及應用程序,詳情可參考以下表格: 
適用應用程序設置
MitigationXPServer 2003VistaServer 2008Win7Server 2008 R2
DEPYYYYYY
SEHOPYYYYYY
NULL PageYYYYYY
Heap SprayYYYYYY
Mandatory ASLRNNYYYY
EAFYYYYYY

適用系統設置
MitigationXPServer 2003VistaServer 2008Win7Server 2008 R2
DEPYYYYYY
SEHOPNNYYYY
ASLRNNYYYY

安裝指引:
p1.jpg
圖1: Microsoft軟件下載中心
      安裝步驟:

    • EMET V2.0可在Microsoft軟件下載中心下載。把安裝檔EMET Setup.msi下載到電腦,並雙擊檔案啟動安裝。
p2.jpg
圖2: 按”Next” 執行安裝
p3.jpg
圖3: 選擇安裝路徑及安裝的範圍,並按”Next”繼續安裝
  • 預設安裝路徑為硬碟: C:\Program Files\EMET\
  • 可選擇安裝EMET軟件到
    - 現時用戶界面或
    - 所有用戶界面p4.jpg
圖4: 選擇”I Agree”,並按”Next”繼續安裝
p5.jpg
圖5: EMET安裝完成

EMET使用簡介:

      啟動了軟件後,可透過主頁面上方的資訊,了解操作系統支援EMET之狀態。如圖6, 此操作系統只支援DEP功能;但不支援SEHOP及ASLR防護。


      主頁面按鈕功能:

    • Running Processes: 刷新正在運行的進程列表
    • Configure System: 系統整合設置
    • Configure Apps: 軟件整合設置
p6.jpg
圖6: EMET主頁面

Configure System:系統整合設定

p7.jpg
圖7: 系統整合設定界面

      EMET系統支援兩種安全級別:

    • Maximum Security Setting : 最高安全級別
    • Recommended Security Settings : 建議安全級別 
p8.jpg
圖8: EMET系統提示

      完成設置後,EMET會出現提示視窗-“電腦需重新啟動後,新的EMET設置才能生效”。


    • Configure Apps:軟件整合設置

      用戶可預先把不同的軟件及應用程序,加到EMET整合環境,讓EMET發揮作用,監控緩衝區漏洞或攻擊;再者用戶也可因應需要,使用不同的安全架構,如DEP, SEHOP 等等功能。


      主頁面按“Configure App”按鈕,即可進入,“Application Configuration”頁面


p9.jpg
圖9:軟件整合設置

    • 新增程序:
    • 按“Add”按鈕,出現“Add Application”頁面,選擇想加入之程序,並按 “Open”,


p10.jpg
圖10:選取應用程序

      新加的程序已加入EMET整合環境


p11.jpg
圖11:成功加入程序

    • 移除程序:
    • 選取想要多移除之程序以下,並按“Remove”按鈕。


p12.jpg
圖12: 移除程序

備註:對於不同版本的Windows系統,或會出現不兼容的情況。如在XP系統下運行Outlook Express 6,DEP會自動阻擋Outlook Express執行。用戶可考慮在“系統整合設定(System Configuration)”內暫停DEP的功能,及把其他需要監控之應用程序加到“軟件整合設置(Configure Apps)”。

總結:

Enhanced Mitigation Experience Toolkit(EMET)是多個安全技術之整合工具。通過EMET的整合,這些技術也能應用在舊版之Windows系統(如Windows XP)上,並有效防護常見之緩衝區攻擊手法,讓用戶免受軟件漏洞的影響,是一款對抗“零時差”漏洞的有效工具。

如果想更了解EMET V2.0之功能,最好就是立即安裝並啟動程序,進行實際操作試用。當然需要配合其他電腦保安措施,才能更有效地預防已知或未知的電腦漏洞。

沒有留言: