第32章:计算器显示中文数字-修改IAT(略)

需要明确自己要修改的功能对应的API函数,这个需要经验积累.

IAT钩取通过修改IAT中保存的API地址来钩取某个API.

大致流程如下:

1. 通过InjectDll 将自己写的DLL文件注入目标进程.

2. 在自己写的Dll Main函数中获取本进程中的 SetWindowTextW 的函数地址,再调用 hook_iat 函数.

3. hook_iat 首先找到目标进程的IDT,通过比较,使用IID结构体的Name字段找到对应的DLL.

4. 从对应的DLL中找到IAT地址,依次遍历IAT,从中找到 SetWindowTextW 的函数地址,修改内存节区属性为可读写后,修改其地址为自己的DLL中的函数地址.

 

注意:自己DLL中函数的参数类型和个数需要和Hook的函数一样.同样需要自己理解传入的参数是怎么样的,是如何使用这个参数的.

 

此实验中,将缓冲区地址修改后再调用原来的函数.

posted @ 2020-08-02 21:34  Rev_omi  阅读(268)  评论(0编辑  收藏  举报