hook技術又被稱為鉤子技術。
在系統沒有呼叫該函式之前,鉤子程式就先捕獲該訊息,鉤子函式先得到控制權,這時鉤子函式既可以加工處理(改變)該函式的執行行為,還可以強制結束訊息的傳遞。
簡單來說,hook是一種擷取資訊、更改程式執行流向、新增新功能的技術。
通俗來說,就是一條高速公路,我們去追擊乙個罪犯(要截獲的訊息或事件),然後在他要經過的地方提前埋下埋伏,等到罪犯到來時,實現截獲,並執行自己的操作。
因為鉤子機制允許應用程式截獲處理window訊息或特定事件。在程式的執行過程中,hook可以截獲我們關心的重要位址,根據需要進行修改。
ring3:
inline hook
iat hook
address hook
ring 0:
ssdt hook
ssdt inline hook
dpc_ssdt hook
iotimer_ssdt hook
hook的歷史地位那可是相當炸裂,是安全研究人員必備的一項技能。在某些書中被稱為「逆向分析之』花』」。
Hook技術 全域性鉤子
hook.cpp include stdafx.h include hook.h include hinstance g hinst const int keypres ask 0x80000000 鍵盤掩碼常量 char g prvchar pragma data seg shared stati...
Windows黑客基礎 1 Hook本程序的訊息
1.需要用到的函式 學過windows程式設計的應該都知道,windows的核心機制是訊息機制,訊息是作業系統告訴應用程式發生了什麼事情,比如當使用者移動了滑鼠或者按鍵後,作業系統會通知應用程式 實際上在windows下,我們可以監控作業系統傳送給另外乙個程序的訊息,然後決定對這個訊息怎麼處理,比如...
Hook技術簡介(有用SDK寫的例子)
鉤子 hook 是windows訊息處理機制的乙個平台,應用程式可以在上面設定子程以監視指定視窗的某種訊息,而且所監視的視窗可以是其他程序所建立的。當訊息到達後,在目標視窗處理函式之前處理它。鉤子機制允許應用程式截獲處理window訊息或特定事件。鉤子實際上是乙個處理訊息的程式段,通過系統呼叫,把它...