【转】利用SEH和INT3实现API HOOK

标 题: 【原创】利用SEH和INT3实现API
HOOK

作 者: weizehua
时 间:
2011-03-27,23:50:38
链 接:
http://bbs.pediy.com/showthread.php?t=131457

用SEH技术实现API Hook,网上已经有帖子了,可是那些帖子太老,太陈旧,只是适用于95、95时代。
在XP上,网上说的方法根本行不通。

小弟刚学API HOOK, 有幸发现在XP上*使用SEH链的方法,现在把成果公布出来大家一起分享^_^
各位大侠如果已经知道了,不要笑话小弟^_^

设置SEH链:
PVOID AddVectoredExceptionHandler(int 顺序,PVOID ErrorHander)

移除SEH链:
RemoveVectoredExceptionHandler(PVOID ErrorHander)

ErrorHander函数声明:
LONG WINAPI ErrorHandler(struct _EXCEPTION_POINTERS *ep)

好,我的方案是获得Debug权限(这样才能OpenProcess),然后把我的Dll绑到目标程序上。
Dll把SEH链设置好,就等着它上钩^_^

当然,因为SEH链是什么错误都处理的,上钩的不一定是我们想要的鱼,这时我们只要判断EIP就知道是不是我们要的鱼啦^_^

废话不多说,下面附上HOOK了DrawTextExW和TextOutW的程序,带源代码^_^

【转】利用SEH和INT3实现API HOOK

http://yunpan.cn/cyqFFqxYEyV8h  提取码 5104

 

【转】利用SEH和INT3实现API HOOK

上一篇:C#跟踪


下一篇:C#调用百度地图 api