您好,登錄后才能下訂單哦!
這篇文章主要介紹“怎么使用Winstrument框架”,在日常操作中,相信很多人在怎么使用Winstrument框架問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么使用Winstrument框架”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
Winstrument是一款針對Windows應用程序的評估框架,Winstrument是一個基于Frida實現的模塊化框架,可以幫助廣大研究人員對Windows應用程序進行逆向工程分析,并尋找對應的攻擊面。
Winstrument是基于Frida實現的,而Frida是一個功能強大的動態檢測框架,它可以通過向進程中注入Javascript運行時來輔助逆向工程分析和調試,而注入的運行時提供了API來實現函數的掛鉤和修改。
雖然社區有很多基于Frida的工具,但是這些工具往往是一些小型的單功能腳本,很難找到一個可以用來完成逆向任務的工具。除此之外,Frida的結構可能需要我們使用大量的代碼來處理回調和數據,這也增加了腳本開發的難度。
Winstrument的目標是通過創建一個簡單的、模塊化的框架來解決這些問題,并輔助研究人員對Windows應用程序進行分析。
Winstrument的主要功能是通過其模塊來實現的,在該工具內置模塊的幫助下,研究人員可以完成下列任務:
查看文件的讀取和寫入,以及讀取或寫入的字節大小;
查看注冊表的讀取和寫入;
查看LoadLibrary()函數的調用,檢查相關的DLL加載以識別潛在的DLL劫持攻擊;
查看socket活動;
查看CreateProcess生成的子進程和參數;
審查命名管道相關的系統調用;
檢測注冊表中的CLSID鍵;
檢測偽造進程;
Winstrument易于擴展,雖然其內置模塊提供了最基本的功能,但研究人員也可以通過自定義模塊來擴展其功能。Winstrument還附帶了一個REPL用于管理模塊、生成和檢測目標進程。功能列表如下:
查看可用模塊;
動態加載所需的模塊;
配置設置信息并以TOML格式存儲;
使用所選的模塊對目標進行檢測,并將輸出結果存儲到SQLite數據庫中;
以各種格式查看和導出數據,包括table、JSON和grep-able輸出;
該項目支持Python v3.7環境,如果你已經安裝好了Python和pip的話,可以直接使用下列命令安裝、部署和配置該工具:
pip install winstrument
接下來,使用下列命令運行該工具:
winstrument
研究人員跟Winstrument的大多數交互都是通過REPL進行的,下面給出的是使用Winstrument的file_rw模塊來執行檢測的例子:
>winstrument > list Loaded Modules: Available Modules: dlls com_hijack file_rw process pipes impersonate registry socket > use file_rw > set target "C:\Windows\System32\mspaint.exe" > run Spawned 7720 instrumented process with pid: 7720 and path: C:\Windows\System32\mspaint.exe detached from 7720 for reason process-terminated module time target function fh path mode bytes -------- ------------------- ------------------ ---------- ------ ----------------------------------------------------------------------------------------------------------------------- ------------- ------- file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe ReadFile 0x4d4 C:\Windows\Fonts\staticcache.dat GENERIC_READ 60 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe ReadFile 0x60c C:\WINDOWS\Registration\R000000000001.clb GENERIC_READ 5941 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe ReadFile 0x6d4 C:\Users\oster\AppData\Local\IconCache.db GENERIC_READ 140547 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe ReadFile 0x75c \\.\MountPointManager 0x0 174 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe ReadFile 0x768 C:\Users 0x100081 504 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe ReadFile 0x798 C:\Users\oster\Desktop\desktop.ini GENERIC_READ 2070 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe ReadFile 0x7d8 C:\Users\oster\Pictures\Camera Roll\desktop.ini GENERIC_READ 570 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe ReadFile 0x87c C:\Users\Public\Desktop\desktop.ini GENERIC_READ 174 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe ReadFile 0x8d4 C:\Users\oster\Dropbox\desktop.ini GENERIC_READ 176 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe ReadFile 0x908 C:\ 0x100081 402 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe ReadFile 0x914 C:\ 0x100081 298 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe ReadFile 0xd28 C:\Users\oster\AppData\Roaming\Microsoft\Windows\Recent\AutomaticDestinations\f01b4d95cf55d32a.automaticDestinations-ms GENERIC_READ 294329 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe ReadFile 0xddc C:\Users\oster\AppData\Roaming\Microsoft\Windows\Recent\AutomaticDestinations\f01b4d95cf55d32a.automaticDestinations-ms GENERIC_READ 90728 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe ReadFile 0x5f4 C:\Users\oster\Pictures\Untitled.png GENERIC_READ 40 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe WriteFile 0x450 C:\WINDOWS\Debug\WIA\wiatrace.log GENERIC_WRITE 2940 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe WriteFile 0xebc \\.\MountPointManager 0x0 5941 file_rw 2020-07-10 20:57:30 C:/.../mspaint.exe WriteFile 0x1010 C:\Users\oster
下面給出的是Winstrument針對notepad檢測的輸出樣例:
Spawned 31076 instrumented process with pid: 31076 and path: C:\Windows\System32\notepad.exe Child removed: 31076 instrumented process with pid: 53004 and path: C:\Users\oster\AppData\Local\Temp\frida-69a0a581de60aa12d04f3bc2e3bde82d\frida-winjector-helper-32.exe Child removed: 53004 instrumented process with pid: 33820 and path: C:\Users\oster\AppData\Local\Temp\frida-69a0a581de60aa12d04f3bc2e3bde82d\frida-winjector-helper-32.exe Child removed: 33820 instrumented process with pid: 31092 and path: C:\Users\oster\AppData\Local\Temp\frida-69a0a581de60aa12d04f3bc2e3bde82d\frida-winjector-helper-64.exe Child removed: 31092 detached from 31076 for reason process-terminated module time target dll writeable_path -------- ------------------- ------------------------------------ ----------------------------------------------- ------------------------------------------------------------------------------------------------------ dlls 2020-07-10 22:54:48 C:/.../winstrument.exe ntdll.dll C:\Python38\Scripts dlls 2020-07-10 22:54:48 c:/.../python.exe pywintypes38.dll c:\python38\lib\site-packages\pywin32_system32\pywintypes38.dll dlls 2020-07-10 22:54:48 c:/.../python.exe pythoncom38.dll c:\python38 dlls 2020-07-10 22:54:48 c:/.../python.exe frida-winjector-helper-32.exe C:\Users\oster\AppData\Local\Temp\frida-69a0a581de60aa12d04f3bc2e3bde82d\frida-winjector-helper-32.exe dlls 2020-07-10 22:54:48 C:/.../frida-winjector-helper-32.exe iphlpapi.dll C:\Users\oster\AppData\Local\Temp\frida-69a0a581de60aa12d04f3bc2e3bde82d dlls 2020-07-10 22:54:48 C:/.../notepad.exe frida-agent.dll
本項目的開發與發布遵循GPL v3開源許可證協議。
到此,關于“怎么使用Winstrument框架”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。