天天看點

Word 0Day漏洞CVE-2017-0199攻擊執行個體與檢測響應

序言

在通常的攻擊場景下,使用者收到一個包含惡意代碼的Office檔案(不限于RTF格式的Word檔案,可能為PPT類的其他Office文檔),點選嘗試打開檔案時會從惡意網站下載下傳特定的 HTA程式執行,進而使攻擊者擷取控制。

攻擊步驟

首先,問題是使用OLE2嵌入式連結對象,其次在處理一個HTA檔案。

1 嵌入OLE2連結對象到一個檔案,打開微軟Word,單擊“插入對象”按鈕,如下面的截圖:

Word 0Day漏洞CVE-2017-0199攻擊執行個體與檢測響應

2 選擇從檔案建立,插入URL HTA檔案和刻度都連結到檔案和顯示為圖示。

Word 0Day漏洞CVE-2017-0199攻擊執行個體與檢測響應

3 将文檔儲存為docx,DOC或RTF檔案;所有這些處理ole2連結對象。

Word 0Day漏洞CVE-2017-0199攻擊執行個體與檢測響應

4 然而,圖示和文字可能看起來有點可疑的受過教育的使用者,是以,可以通過更換圖示和檔案名,并渲染對象的Word,以成功的可能性。這可以通過不選擇“顯示為圖示”複選框,實作服務文檔内容類型應用RTF或應用程式/檔案/:

Word 0Day漏洞CVE-2017-0199攻擊執行個體與檢測響應

5 這使得HTA要呈現如下:

Word 0Day漏洞CVE-2017-0199攻擊執行個體與檢測響應

6 然而,使用者互動仍然是必需的,使用者必須輕按兩下“Hello”文本這個時間或儲存檔案強制檔案執行連接配接更新的内容,并顯示它。然而FireEye的描述不明确,需要使用者互動并暗示載荷應自動運作打開文檔時。研究小組發現的activebreach如何能夠實作。經過更進一步的了解到RTF RFC”objupdate”控制被發現:

Word 0Day漏洞CVE-2017-0199攻擊執行個體與檢測響應

7 此控件的描述特别有趣,因為它暗示對象将在顯示自身之前更新:

Word 0Day漏洞CVE-2017-0199攻擊執行個體與檢測響應

例如,可以建立一個包含一個objupdate控制,最終将迫使它更新啟動檔案。這可以通過擷取先前建立的文檔并在文本編輯器中修改它來實作:

Original:

{\object\objautlink \rsltpict\objw9027\objh450{\objclass Word.Document.8}{\objdata

注射\ objupdate控制檔案:

{\object\objautlink\objupdate\rsltpict\objw9027\objh450{\objclass Word.Document.8}{\objdata

打開RTF檔案現在造成托管HTA檔案運作而無需使用者互動:

值得注意的是,我們的研究顯示,如果使用者沒有安裝微軟Office,問題仍然可以在寫字闆中然而利用的互動是必需的。

檢測和響應

一些公司已經公布的規則由響應社群檢測問題。在許多情況下,這些都是有點不準确,可能會産生誤報,他們依靠的對象包含一個ole2link RTF文檔檢測。這并不一定意味着惡意行為,可能是一個合法的嵌入對象。

為了有效地檢測cve-2017-0199,Yara規則應該識别\ objupdate控制添加條件。

備注

hta檔案建立:

https://gist.github.com/subTee/e126c6ee847a4d9fcfd7

參考連結:https://www.mdsec.co.uk/2017/04/exploiting-cve-2017-0199-hta-handler-vulnerability/