Re: [問題] 關於hook特定api的問題
※ 引述《stellvia7 (stellvia)》之銘言:
: 請問假若我要Hook某一特定的API, 是先創建DLL檔,再用createRemoteThread將自己的DLL
: 藉由 LoadLibraryA()load到target的memory space.
: 而我們的DLL中的function會查出我們要Hook api的address, 再將此address做backup,在
: jump到我們DLL中的其他function?
從敘述來看這 DLL 是自己建立的,所以..
: 假若是這樣那請問. 我們怎麼知道我們要hook那特定api的function name?
"function name"?
要 hook 哪個 API 也是自己決定的不是嗎
比如你想 hook 開檔的動作
可能就會去攔 kernel32.dll 的 CreateFileW 這個 API
那要取得 CreateFileW API 的實際位址可以用
GetProcAddress(GetModuleHandle("kernel32"),"CreateFileW")
所以原本你對想 hook 的相關 API(s) 就要熟悉了
不然也不知道該 hook 哪個 API、或者是有所遺漏
: 再來要jump到我們要replace 的function 的address該怎麼查詢?(ps.replace functino 已經load到taget的
: memory space 中了).
假設你已經注入自己的 DLL 到 target process 了
那 replace function 也在自己 DLL 內吧,所以位址自己也知道呀
不知道這邊說的查詢是由哪一方進行查詢?
: 感恩 假若第一段有錯 請指正
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.53.23
※ 編輯: UNARYvvv 來自: 140.115.53.23 (06/11 17:48)
推
06/11 23:18, , 1F
06/11 23:18, 1F
→
06/11 23:19, , 2F
06/11 23:19, 2F
→
06/11 23:20, , 3F
06/11 23:20, 3F
→
06/12 00:48, , 4F
06/12 00:48, 4F
→
06/12 00:48, , 5F
06/12 00:48, 5F
→
06/12 00:51, , 6F
06/12 00:51, 6F
→
06/12 00:52, , 7F
06/12 00:52, 7F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章