首页
社区
课程
招聘
[原创]HOOK API 入门讲解, 高手请飘过
发表于: 2010-11-6 23:40 7871

[原创]HOOK API 入门讲解, 高手请飘过

2010-11-6 23:40
7871

本文主要讲解 HOOK API 的传统实现方式, 很多新手再玩HOOK的时候经常抄袭别人的代码,至于到底怎么实现的,可能看了半天没看明白。
所以高手请飘过~~~~~~~~~~~ 嘿嘿本人是搞破解的一直在加脱壳版里的,最近搞安全工作就来这里混了 请高手多多支持1
废话不说请看下文

注意:本文为了为了方便直接用 VirtualProtect 这个API的原型进行解释,而所有地址都只是为了方便讲解自行设定的,
你可以从 step1-9 个步骤看 jmp 的过程很容易就理解其真实原理,再不明白的话你只能改行了。


MyFunc:  00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
00401000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00401010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

type
  TVirtualProtect = function(lpAddress: Pointer; dwSize, flNewProtect: DWORD; lpflOldProtect: Pointer): BOOL; stdcall;

var
  PVirtualProtect: TVirtualProtect;

function HookVirtualProtect(lpAddress: Pointer; dwSize, flNewProtect: DWORD; lpflOldProtect: Pointer): BOOL; stdcall;
begin
  Result:= PVirtualProtect(lpAddress, dwSize, flNewProtect, lpflOldProtect);   -> step8 返回 00010005 (转移后的原API开始)
  {HOOK CODE}                                               -> step9 这里自然就是你自己要写的代码了
end;

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 7
支持
分享
最新回复 (1)
雪    币: 19
活跃值: (128)
能力值: ( LV9,RANK:146 )
在线值:
发帖
回帖
粉丝
2
还真就看不懂
2018-10-24 20:50
0
游客
登录 | 注册 方可回帖
返回