TC官方合作论坛

 找回密码
 立即注册
查看: 19303|回复: 68

[其他] Hook寄存器拦截想要的值

  [复制链接]
发表于 2015-3-13 21:32:39 | 显示全部楼层 |阅读模式
本帖最后由 如此美丽。 于 2015-10-9 20:21 编辑

                  {:soso_e103:}  潜水好久了 冒泡一下
                   小放个福利   让你做到  不学找基址  找到动态地址就能拦截数据

                  动态构建汇编代码  拦截8个寄存器的值    (eax, ecx, edx, ebx, esp, ebp, esi, edi)
                  比如: 二漠又来发帖子了!使用TC的消息路由功能实现了HOOK拦截技术。用一个游戏的血量数值拦截举例!                                    
                  当然 我这个没有用PostMessageA 来发送值  因为一次只能发送2个 所以我就放弃了 ..

                  (VB6编写的标准DLL)
                  函数原型:  
                  Function HookRegister(ByVal JmpAddr As Long, Optional ByVal JmpSize As Long = 5, Optional ByVal ProcessId As Long = -1) As Long
                  JmpAddr : hook地址
                  JmpSize : hook字节 (默认: 5个字节)
                  
                  77D507EA >  8BFF            mov edi,edi
                  77D507EC    55              push ebp
                  77D507ED    8BEC            mov ebp,esp                                                                                 [红色加粗   比如这种  几个整行行加起来  是5个字节  就填5]
                  77D507EF    833D BC14D777 0>cmp dword ptr ds:[0x77D714BC],0x0                              [紫色加粗   比如这种  一个整行行加起来  是6个字节  就填6]
                  反正是一整行计算就对了   要>=5个字节   因为E9 00000000  [Jmp 00000000]


                  ProcessId : 进程PID (默认: -1为自身进程)

                  返回 : 首寄存器的地址(eax的地址  以此类推 加4个字节为其他7个寄存器)  比如返回 #00160000 为eax的地址    #00160000+4  就为ecx的地址了


                  然后放个定时器 或者 开个线程一直读取 就能实现 一直拦截血、蓝、坐标等 你要拦截的值
                  要还原的话  你就在hook前先读取该地址的 5个字节 然后 重新写入 JmpAddr 就完成了还原  {:soso_e103:}   (我没写还原是 我怕多次hook后 不好还原其中一个   主要还是我懒得写) ..

                  
游客,如果您要查看本帖隐藏内容请回复

                  一点基础的小白都没有的 请无视 {:soso_e137:}
                  ..  最后抽个疯     你猜我疯没疯            有疑问请跟帖    但是我不会回 !~  {:soso_e103:}
                  附一个 我用VB写的 小例子  (test.exe  关闭的时候 不会直接关闭(VB标准dll的缺陷) 请在进程中强制结束   TC好像的退出就是强制退出 所以不存在这种现象)
                  
游客,如果您要查看本帖隐藏内容请回复
                  现在使用会直接退出  请把本机时间   设置低于  2015-05-01 即可使用   ..  该DLL 也只有一个UPX壳子  也可以自行脱壳 PJ  .. 任性 :)
                 新插件  :  http://bbs.tyuyan.com/thread-52806-1-1.html





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

 楼主| 发表于 2015-3-13 21:35:57 | 显示全部楼层
标题不长  能不能火  {:soso_e103:}
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-3-13 21:37:20 | 显示全部楼层
  1.     // TC调用例子   
  2.     JmpAddr = #00000000     // 这里填hook的地址
  3.     JmpSize = 5
  4.     ProcessId = -1
  5.     ret = dllcal("Ws.dll","int","HookRegister","int",JmpAddr,"int",JmpSize,"int",ProcessId)
  6.     window.setwindowcaption(window.getmyhwnd(),str.format("%x",ret))
复制代码
回复 支持 反对

使用道具 举报

发表于 2015-3-13 21:45:28 | 显示全部楼层
本帖最后由 zxw445 于 2015-3-13 21:47 编辑

支持。。。美丽。。做出贡献。。。

已经破了此软件。

我只留下名号。
回复 支持 反对

使用道具 举报

发表于 2015-3-13 21:49:48 | 显示全部楼层
感觉好厉害的样子,支持
回复 支持 反对

使用道具 举报

发表于 2015-3-13 21:57:09 | 显示全部楼层
很高级的样子
回复 支持 反对

使用道具 举报

发表于 2015-3-13 22:03:27 | 显示全部楼层
{:soso_e199:}
回复 支持 反对

使用道具 举报

发表于 2015-3-13 22:34:52 | 显示全部楼层
如此美丽!如此美丽?如此美丽。。。。。。
回复 支持 反对

使用道具 举报

发表于 2015-3-14 01:09:28 | 显示全部楼层
依赖插件不是我的作风
但我还是看看...
回复 支持 反对

使用道具 举报

发表于 2015-3-28 19:51:22 | 显示全部楼层
............................................
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-5-4 02:20 , Processed in 0.052340 second(s), 23 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表