當前位置:編程學習大全網 - 網站源碼 - hook是什麽意思

hook是什麽意思

HOOK技術是Windows消息處理機制的壹個平臺,應用程序可以在上面設置子程序以監視指定窗口的某種消息,而且所監視的窗口可以是其他進程所創建的。當消息到達後,在目標窗口處理函數之前處理它。鉤子機制允許應用程序截獲處理window消息或特定事件。

鉤子實際上是壹個處理消息的程序段,通過系統調用,把它掛入系統。每當特定的消息發出,在沒有到達目的窗口前,鉤子程序就先捕獲該消息,亦即鉤子函數先得到控制權。這時鉤子函數即可以加工處理(改變)該消息,也可以不作處理而繼續傳遞該消息,還可以強制結束消息的傳遞。

Hook原理

Hook技術無論對安全軟件還是惡意軟件都是十分關鍵的壹項技術,其本質就是劫持函數調用。

但是由於處於Linux用戶態,每個進程都有自己獨立的進程空間,所以必須先註入到所要Hook的進程空間,修改其內存中的進程代碼,替換其過程表的符號地址。在Android中壹般是通過ptrace函數附加進程,然後向遠程進程註入so庫,從而達到監控以及遠程進程關鍵函數掛鉤。

  • 上一篇:快手同城陌生人直播會推送給我嗎
  • 下一篇:Android音視頻開發——MediaCodec播放H264視頻
  • copyright 2024編程學習大全網