??當前樣本是一個RTF檔案,內嵌一個公式編輯器物件,該物件利用Office編輯器漏洞CVE-2018-0798執行shellcode,對EQNEDT32.exe進行代碼注入,執行惡意代碼,
??使用rtfobj查看檔案結構,可以看到攜帶了3個OLE物件,但是id為1的物件并未被使用,
??第二個是一個package物件,原路徑為” C:\Users\n3o\AppData\Local\Microsoft\Windows\INetCache\Content.Word\wd32PrvSE.wmf”,實際是一個經過加密的exe檔案,在漏洞觸發后,被Shellcode解密并注入新起的EQNEDT32.exe行程中;
??第三個為公式編輯器物件,其中 {0002CE02-0000-0000-C000-000000000046}即為Equation Editor 3.0關聯CLSID,該物件會觸發CVE-2019-0798漏洞,從而執行Shellcode,

??在EQNEDT32.exe中CVE-2018-0798漏洞函式sub_443E34處下斷點,打開RTF檔案,程式將中斷于斷點,
??在sub_443E34中,會對公式編輯器物件進行處理,其中sub_416352用于獲取控制資料,之后在sub_443F6C函式中會進行資料復制操作,而之前獲取的偏移0x1E、0x1F處的位元組將被用于控制資料復制的長度,

??sub_443F6C中,引數a1即為控制長度的位元組,計算值”(2*a1+9)>>3”,結果作為復制資料的長度值,該函式被連續呼叫兩次,完成目標的覆寫,

??覆寫前的堆疊:

??覆寫后的堆疊:

??接著呼叫sub_4428F0,利用之前覆寫的資料,構建一個Trampoline Shellcode片段,用于跳轉執行RTF本身攜帶的Shellcode,

??在sub_43A78F中控制程式再次呼叫漏洞函式sub_443E34,最終覆寫函式sub_443E34的回傳地址,通過構造并覆寫成功的ROP鏈跳轉到Trampoline Shellcode處,最終成功跳轉并執行自身攜帶的Shellcode,

??Shellcode進行異或自解密,并繼續執行解密后的代碼,

??讀取被釋放到

??使用Process Hollowing技術將解密后的EXE隱藏于EQNEDT32.exe行程中執行,



??解密出的EXE將會復制自身的執行檔案(即EQNEDT32.exe)到目錄,并以當前時間創建檔案名,接著訪問URL:https://internetcasinoweblog.com/wp-admin/js/xfn/joel.exe(已失效),下載資源,寫入下被創建的時間命名的檔案,最終執行程式,
??如果下載失敗,執行的將是一開始復制過來的EQNEDT32.exe,只是名字被更改,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/299882.html
標籤:其他
上一篇:“XXXXX” is damaged and can’t be opened. You should move it to the Trash 解決方案
下一篇:淺談KMP模式匹配演算法
