0x00 前言– 最近看了一篇文章《VSTO: The Payload Installer That Probably Defeats Your Application Whitelisting Rules》,介紹了利用VSTO實(shí)現(xiàn)Office后門的方法,我在之前的文章《Use Office to maintain persistence》和《Office Persistence on x64 operating system》曾對Office的后門進(jìn)行過學(xué)習(xí),本文將結(jié)合自己的研究心得,對該方法進(jìn)行復(fù)現(xiàn),分析利用思路,分享實(shí)際利用方法,最后介紹如何識別這種后門。 文章地址: https:///2018/01/31/vsto-the-payload-installer-that-probably-defeats-your-application-whitelisting-rules/ 0x01 簡介本文將要介紹以下內(nèi)容:
0x02 VSTO的編寫方法1、VSTO簡介全稱Visual Studio Tools for Office 用來定制Office應(yīng)用程序,能夠同office控件交互 集成在Visual Studio安裝包中 如下圖
2、VSTO開發(fā)本節(jié)內(nèi)容是對《VSTO: The Payload Installer That Probably Defeats Your Application Whitelisting Rules》的復(fù)現(xiàn) (1) 新建工程
如下圖
(2) 添加代碼添加引用 添加彈框代碼: 如下圖
(3) 編譯設(shè)置對應(yīng).Net版本,編譯,生成如下6個文件:
(4) 安裝插件執(zhí)行WordAddIn2.vsto 彈框提示無法驗(yàn)證發(fā)行者,如下圖
選擇安裝 查看 #### (5) 打開word.exe,自動加載插件 彈框,如下圖
查看Word加載項(xiàng),能夠看到加載插件WordAddIn2,如下圖
至此,成功實(shí)現(xiàn)Office后門的安裝 0x03 實(shí)際利用思路對于實(shí)際利用,首先需要滿足安裝過程無界面,所以要繞過彈框提示無法驗(yàn)證發(fā)行者,需要做如下改進(jìn): (1) 命令行安裝VSTO插件使用VSTOInstaller.exe 系統(tǒng)安裝Office后包含,默認(rèn)路徑 參數(shù)說明: /i: 安裝 /u: 卸載 /s: 靜默操作,如果需要信任提示,將不會安裝或更新自定義項(xiàng) 安裝參數(shù)如下: 由于信任提示,無法驗(yàn)證發(fā)行者,所以安裝失敗 (2) 繞過驗(yàn)證發(fā)行者VSTO插件提供簽名功能,如下圖
手動生成一組簽名證書,使用如下工具
來自于Windows SDK,可供參考下載的地址: https://github.com/3gstudent/signtools 生成命令: 執(zhí)行后生成Root.cer、Root.pfx、Root.pvk、Root.spc四個文件 替換插件WordAddIn2的證書,如下圖
證書注冊(管理員權(quán)限): 注: 需要將證書同時添加到 再次安裝VSTO插件,不會被攔截 (3) 遠(yuǎn)程安裝VSTOInstaller.exe支持遠(yuǎn)程安裝 可以將VSTO插件放在遠(yuǎn)程Web服務(wù)器上 安裝參數(shù)如下: 綜上,實(shí)際利用過程如下:
0x04 后門檢測1、查看 注: VSTO插件并不會在注冊表卸載配置的位置( 2、查看Office的COM加載項(xiàng) 注: 禁用宏并不會阻止VSTO插件的加載 0x05 小結(jié)本文測試了利用VSTO實(shí)現(xiàn)Office后門的方法,結(jié)合實(shí)際利用思路,分析檢測方法 |
|
|