91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Detours Hook

發布時間:2020-08-02 08:53:19 來源:網絡 閱讀:451 作者:博文視點 欄目:安全技術

 

Detours Hook
Detours是微軟開發的一個函數庫,主要用于動態Hook運行中的程序,其具體介紹參見http://research.microsoft.com/en-us/projects/detours/。
在游戲或外掛分析中,可以利用Detours庫提供的接口來動態Hook任意地址,截獲函數調用并輸出打印信息。
Detours Hook的3個關鍵概念
要理解Detours Hook,必須先理解Detours中的3個關鍵概念。
ØTarget函數:即要Hook的目標函數或目標地址。
ØTrampoline函數:即跳板函數,主要負責保存原始Target函數頭的若條指令,并加上一個跳轉指令以保持對原始Target函數調用的語義完整性。
ØDetour函數:即截獲Target函數的調用之后,所要執行的自定義函數。
在Detours Hook中,生成Trampoline函數與Target函數之間的關系如圖6-10所示。
Detours Hook
圖6-10 Trampoline函數與Target函數的關系
從圖6-10中可以看出,Trampoline函數是由Target函數頭加jmp指令組成的。
Target函數、Detour函數以及Trampoline函數之間的關系如圖6-11所示。
Detours Hook
圖6-11 Target函數、Detour函數和Trampoline函數間關系
從圖6-11中可知,一旦Target函數被執行,程序將按照1→2→3,即Traget→Detour→Trampoline的順序執行,最后再回到Target函數的執行過程。
Detours Hook引擎
Detours Hook引擎采用上面介紹的Detours Hook機制,經過精心的設計,使這個Hook引擎支持動態Hook幾乎任意地址,以方便管理,而不用為了Hook一個地址去增加代碼以及重新編譯代碼(注意:這里的“任意地址”在可以被修改的地址區域內)。
首先還是讓我們看看如圖6-12所示的這個引擎的概要設計,然后再詳細介紹一下每一塊的具體內容。
Detours Hook
圖6-12 Detours Hook引擎概要設計
如圖6-12所示的Detours Hook引擎,從涉及的內存結構上看,主要由4個塊組成,分別是JMP塊、HOOK_INFO塊、Trampoline塊和HKC塊,而從處理函數上看,主要由DispatchHook和ProcessHook組成。
具體細節見<<游戲外掛***藝術>>6.4節。
Detours Hook
電子工業出版社出版
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新晃| 常德市| 兴化市| 绥阳县| 绥滨县| 寻甸| 孝感市| 临猗县| 称多县| 兴义市| 呼玛县| 民乐县| 安庆市| 苗栗县| 星座| 牡丹江市| 定南县| 招远市| 嘉黎县| 额尔古纳市| 花莲市| 海淀区| 湟中县| 北京市| 申扎县| 合水县| 泸溪县| 惠安县| 耒阳市| 苏州市| 扶余县| 广德县| 天祝| 忻州市| 东光县| 蒲城县| 清新县| 乾安县| 濮阳县| 洪洞县| 枣庄市|