利用rundll32執行程式的函式執行程式

2022-06-19 20:21:14 字數 939 閱讀 3067

** 

無意間發現hexacorn這個國外大佬,給出了很多通過rundll32執行dll中的函式執行程式的方法,思路很靈巧。

用法:

rundll32 , 

引數代表傳入dll的匯出函式名,在dll中定義如下:

void callback entrypoint(hwnd hwnd, hinstance hinst, lpstr lpszcmdline, int ncmdshow);

引數對應dll匯出函式中的lpstr lpszcmdline

也就是說通過rundll32能控制dll匯出函式的lpstr lpszcmdline引數

列舉%windir%/system32下所有dll的匯出函式,篩選出包含匯出函式openurl的dll。

也就是在系統自帶的dll中找到存有利用函式的方式。

在這個**的基礎上,新增列舉dll的功能,分別獲得匯出函式,對可以執行程式的函式進行判斷。

rundll32 url.dll, openurl file://c:\windows\system32\calc.exe

rundll32 url.dll, openurla file://c:\windows\system32\calc.exe

rundll32 url.dll, fileprotocolhandler calc.exe

rundll32 zipfldr.dll, routethecall calc.exe

關於利用rundll32執行程式的分析

running programs via proxy & jumping on a edr-bypass trampoline

命令執行系列

**********=== end

rundll32 呼叫帶字串指標的函式

rundll32呼叫函式的規則為 rundll32 dll path,func param 1 param 2 param 3 假設param 1 是乙個字串指標,首先 rundll32會去尋找名稱是func 的匯出函式,如果找到了,則直接呼叫,並且傳遞給func 函式的指標是乙個char 型別的指...

qmail的執行程式

qmail是乙個模組化設計的郵件系統,每乙個子功能都是由乙個執行程式來實現的,而每個程式的屬性以及執行方式由乙個或多個配置檔案和環境變數來控制的。在qmail安裝成功和啟動以後,qmail的相關程序一直在記憶體中駐留,qmail會不斷掃瞄郵件佇列,並且把郵件投遞到正確的目的位址。qmail所有的執行...

qmail的執行程式

qmail是乙個模組化設計的郵件系統,每乙個子功能都是由乙個執行程式來實現的,而每個程式的屬性以及執行方式由乙個或多個配置檔案和環境變數來控制的。在qmail安裝成功和啟動以後,qmail的相關程序一直在記憶體中駐留,qmail會不斷掃瞄郵件佇列,並且把郵件投遞到正確的目的位址。qmail所有的執行...