惡意宏劫持桌面快捷方式傳播後門
宏文件是一種比較古老的技術了,但黑客還在使用惡意宏文件來傳播惡意軟體,只不過傳播的方式更加高效也更加創新了。最近的一起案例中,攻擊者就以一種間接的方式使用了宏文件,首先在用戶系統中搜索特定的快捷方式文件,然後用下載的惡意軟體的位置去替換該快捷方式。當用戶點擊修改的桌面快捷方式時,下載的惡意軟體就會執行。
惡意軟體執行後,會恢復原始的快捷方式文件來打開正確的應用。然後,惡意軟體會組合其payload。惡意軟體會從互聯網上,下載常用的工具如WinRAR、Ammyy Admin來收集信息並通過SMTP發送回伺服器。
宏和下載的惡意軟體並不複雜,攻擊者使用的方法也有一些繼續的標記,可能是還沒有開發完成。
圖1. 惡意軟體感染鏈
文檔
攻擊的感染鏈是以一個俄語寫的惡意文檔開始的,文中還有一個房子的圖片。文檔會提示用戶開啟宏來打開完整文檔。
圖2. 惡意文檔片段
Word默認是未啟用宏的,來防止一些潛在的安全風險,所以用戶需要啟用宏來使其工作。啟用宏可能會讓用戶計算機受到一些潛在的惡意代碼的攻擊。
工作原理
一旦用戶啟用宏,就會嘗試在用戶桌面搜索快捷方式文件來替換對應的鏈接文件。目標主要有5個,Skype、Google Chrome、Mozilla Firefox、Opera和Internet Explorer。一旦找到匹配的快捷方式,就會根據名稱和運行的環境從Google Drive和GitHub下載惡意軟體。目前,惡意軟體文件已經被刪除了。
具體細節是,如果在用戶桌面找到了Google Chrome的快捷方式,那麼接下來會進行下面的動作:
1.如果不存在,就在%AppData%Google下創建一個目錄;
2.下載payload到%AppData%Googlechrome_update.exe;
·如果.NET框架不存在,hxxps://raw[.]githubusercontent[.]com/microsoftstorage/vsto/master/chrome_update;
·如果.NET框架存在,hxxps://raw[.]githubusercontent[.]com/microsoftstorage/vsto/master/dotnet/chrome_update。
圖3. 指向不同payload下載路徑的宏截圖
3. 找到目標快捷方式,刪除該鏈接;
4. 創建新的鏈接(新下載的payload)來替換原來的目標鏈接:.TargetPath = %AppData%Googlechrome_update.exe
圖4. 指向惡意軟體的新快捷方式文件
5.惡意軟體還會改變快速啟動欄的鏈接:
在%AppData%MicrosoftInternet ExplorerQuick LaunchUser PinnedTaskBar中與Google或Google Chrome相關的鏈接。
6.然後會再次將快捷方式圖標的鏈接執行惡意軟體。
執行以上的步驟後,當用戶點擊桌面或快速啟動欄的快捷方式時,惡意軟體就會執行。
惡意軟體如何運行惡意服務?
惡意軟體執行後,首先會根據Windows的版本在釋放WpmPrvSE.exe,然後啟動WPM Provider Host service,該服務的描述是System-mode WPM Provider Framework Host Process(系統模式WPM提供程序框架主機進程)。
圖5. WPM Provider Host service截圖
還會在system32或SysWoW64中釋放rar.exe和註冊表。最後,恢復之前替換掉桌面和快速啟動欄的快捷方式。
惡意服務工作原理
惡意軟體工作時,惡意軟體激活的惡意服務會下載最終的payload。首先,該服務每次會為從Google Drive和GitHub下載惡意軟體包設定一個1小時的時間間隔。然後使用之前釋放的WinRAR工具來打開還有安裝文件、配置文件和其他工具的壓縮文件包。
圖6. Rar包的內容
該服務會從RAR壓縮包中運行installer.exe文件。Installer.exe會使用Windows Certificate Services自帶的certutil命令行程序。Windows Certificate Services可以進行Base 64編碼和解碼。Certutil會解碼壓縮包中的wsvchost.key到wsvchost.exe中。Wsvchost.exe其實是遠程管理工具Ammyy Admin 3.5,會在C:/ProgramData/Ammyy文件夾下創建一個含有Ammy Admin設置的文件夾,並把setting3.bin文件放在文件夾中,該文件會改變Ammyy Admin的許可權設定,允許特定的Ammyy Admin ID完全訪問感染的系統。
圖7. 有完全訪問許可權的ID
接著惡意軟體會運行shell腳本stop_ammmyy.ps1,腳本可以讓攻擊之前就運行的Ammyy進程停止運行。
Installer文件又開啟了另一個叫做WSVCHost的服務,WSVCHost服務會運行wsvchost.exe,繼續用procdump從內存中備份WSVCHost相關的進程。
圖8. WSVCHost截圖
圖9. procdump嘗試備份的兩個相關進程
在完成上述步驟後,惡意程序會繼續使用certutil來編碼備份的文件,然後使用WinRAR來把備份的文件壓縮到treasure文件夾的兩個文件中。
圖10. treasure文件夾截圖
這兩個文件和系統信息以及執行日誌會以附件的形式通過SMTP發回給惡意軟體的運營者,具體是通過465埠連接到郵件伺服器rambler.ru和meta.ua。惡意軟體作者選擇發給兩個不同的郵件伺服器,可能是想確保信息的成功傳遞。SMTP的憑證是硬編碼的,但也可以通過下載的壓縮包中的mails.ini文件進行更新。
圖11. 連接到465埠的惡意軟體截圖
備份文件中的信息
分析備份的文件可以發現路由器的IP地址和Ammyy Admin ID。手動安裝Ammyy Admin可以查看設置窗口,並且可以確認系統的ID與備份文件中的ID是匹配的。在知道了目標系統的Ammyy Admin ID,並通過惡意軟體對攻擊者ID進行授權後,攻擊者就可以通過Ammyy Admin訪問目標系統了。
圖12. 路由器IP 地址和Ammyy Admin ID
圖13. 手動安裝的Ammyy Admin窗口
除了用戶的Ammyy Admin ID外,備份文件的其他內容看起來暫時沒什麼用。攻擊者可能只是想收集額外的信息。在分析過程中,研究人員注意到一些下載文件的改變和更新的方式,這說明惡意軟體還在開發中。惡意軟體可能仍處在PoC階段,未來會出現更多的版本。
結論
該惡意軟體是在安裝時使用了宏文件,研究人員相信該惡意軟體並未廣泛傳播,截止目前受害者比較少。但這種攻擊的方式是值得注意的,未來該惡意軟體的更新版本也需要注意。
因為Microsoft意識到攻擊者可能利用嵌入的代碼,所以默認是不啟用宏文件的。了解系統宏文件的設定可以幫助我們在過濾攻擊的同時使用宏文件,但在日常工作中還是建議不要啟用從未知來源下載的文件中的宏。
※基於非瀏覽器的跨域HTTP請求攻擊
※嵌入式系統的安全技術分析(一)
TAG:嘶吼RoarTalk |