本文講的是<b>利用xwizard.exe加載dll</b>,在之前的文章介紹了利用Excel.Application object’s RegisterXLL()加載dll的技巧。本文繼續,介紹最近學習到的一種更為通用的方法——利用xwizard.exe加載dll。
該方法最大的特點是xwizard.exe自帶微軟簽名,在某種程度上說,能夠繞過應用程式白名單的攔截。
0x01 簡介
本文将要介紹以下内容:
· xwizard.exe簡介
· 利用思路
· 實際測試
0x02 xwizard.exe簡介
應該為Extensible wizard的縮寫,中文翻譯可擴充的向導主機程序,暫時無法獲得官方資料
· 支援Win7及以上作業系統
· 位于%windir%system32下
輕按兩下運作,彈出操作說明,如下圖

支援參數如下:
· xwizard processXMLFile
· xwizard RunWizard
· xwizard RunPropertySheet
示例:
· xwizard processXMLFile 1.txt
· xwizard RunWizard /u {11111111-1111-1111-1111-111111111111}
· xwizard RunPropertySheet /u {11111111-1111-1111-1111-111111111111}
注:
參數中的GUID長度固定,否則彈框報錯,如下圖
0x03 利用思路
xwizard.exe的同級目錄存在一個特别的檔案xwizards.dll
使用IDA檢視xwizards.dll的導出函數,如下圖
我們可以看到,xwizards.dll的導出函數名稱同xwizard.exe支援的參數名稱十分接近
猜測xwizard.exe的功能是通過調用xwizards.dll實作的
使用IDA逆向xwizard.exe來驗證我們的判斷,如下圖
對于函數LoadLibraryEx,由于未指定dll的絕對路徑,使用相對路徑,是以搜尋順序為:
1、程序目前目錄
2、通過SetDllDirectory所設定的路徑
3、Windows系統目錄+PATH,即c:windowssystem32
4、16位系統目錄,即c:windowssystem
5、Windows目錄,即c:windows
6、PATH環境變量中所列目錄
也就是說,如果将xwizard.exe複制到另一任意目錄,在該同級目錄再儲存一個自己編寫的xwizards.dll,那麼執行xwizard.exe時會優先調用同級目錄的xwizards.dll,不再加載%windir%system32下的xwizards.dll
這就實作了利用xwizard.exe加載我們自己編寫的dll
0x04 實際測試
測試系統: Win7 x86
1、複制xwizard.exe至新目錄C:x
2、編寫dll
使用vc 6.0,建立dll工程,在<code>case DLL_PROCESS_ATTACH</code>下添加彈框代碼
該dll成功加載後會彈框
3、測試
直接執行xwizard.exe,沒有彈出幫助對話框
使用Process Monitor監控系統,檢查xwizard.exe是否正常執行
如下圖
xwizard.exe正常執行,但是沒有嘗試加載xwizards.dll
再次測試,通過指令行執行,參數如下:
<code>xwizard processXMLFile 1.txt</code>
檢視Process Monitor輸出結果
xwizard.exe首先嘗試加載<code>C:xxwizards.dll</code>,加載失敗後再嘗試加載<code>C:windowssystem32xwizards.dll</code>(再次印證了對dll加載順序的判斷)
接下來,将msg.dll重命名為xwizards.dll,儲存在<code>C:x</code>
指令行執行:
成功加載C:xxwizards.dll,彈出對話框
測試成功
0x05 補充
64位系統:
<code>%windir%system32</code>對應64位xwizard.exe,隻能加載64位xwizards.dll
測試如下圖
<code>%windir%SysWOW64</code>對應32位xwizard.exe,隻能加載32位xwizards.dll
0x06 小結
本文介紹了利用xwizard.exe加載dll的技巧,特别的地方在于xwizard.exe包含微軟簽名,是以在某種程度上說,能夠繞過應用程式白名單的攔截。
原文釋出時間為:2017年8月24日
本文作者:3gstudent
本文來自雲栖社群合作夥伴嘶吼,了解相關資訊可以關注嘶吼網站。
<a href="http://www.4hou.com/technology/6969.html" target="_blank">原文連結</a>