x64进程远程hook,x64远程调用函数

易语言 2021-05-07 12:38:44

x64进程远程hook,x64远程调用函数

在此要强调一个事情,我们封装这个hook源码并开源,初衷并不是让朋友去搞模拟器封包,只是为了更好弥补易语言对x64进程hook操作方面的资源,x64进程远程hook,x64远程调用函数开源。
1: hook通讯模式由消息模式 改为 线程模式,线程模式相比消息模式更自由,不存在堵塞的可能性,安装时没有了窗口句柄参数
2:远程hook64指令_安装()中 hook长度 参数 现在支持最小 5字节hook,且支持了不在模块区域的可执行代码中hook
3 回调接口 现在传回4个参数 必须为 可空 参考 分别是 control_寄存器;自定义回调值;目标进程句柄值;触发Hook线程ID,写的时候参考源码实例
4:新增 子程序 x64_申请指定内存()
该接口可以在目标进程指定地址处分配内存 如果该地址不可申请会在附近2G偏移内寻找一处申请 失败返回0 成功返回指针
5:修复hook过程中因自身进程意外关闭而导致目标进程卡住或崩溃的问题
6:修复 远程hook64指令_全部卸载()在调试模式调用时出现的系统报告异常问题
7:实例中 对 call_send()特殊处理了一下,这个调用可以根据设置是否绕过hook位置,如果参数四为真不会触发send回调
8:实例中 简单增加了几个子程序,封包寻找替换规则() call_API() call_WSASend()这几个给予参考,未用于实例应用,WSASend没有找到目标进程所以未经测试
9:提示:X64_取进程函数入口()这个调用返回是比较慢的,因为要在所有的DLL中寻找出对应的DLL然后再去找对应的函数,所以此接口在循环中慎用。正确的方式是:因为系统API接口 在每个进程的地址是一样的,所以只需取得一次保存地址给后续调用使用即可
10:实例中 多进程hook由原先的菜单方式 改为 高级表格 选择框快速操作。