HOOK一个C函数

来源:互联网 发布:税务大开杀戒 知乎 编辑:程序博客网 时间:2024/06/15 23:24
hook一个C函数需要用到的开源库fishhook(fishhook只能hook系统自带的C函数,自定义的不可)

1, 在链接中下载第三方开源库fishhook  https://github.com/facebook/fishhook

2, 将fishhook.h 和 fishhook.c文件导入项目中, 引用头文件

3, 定义一个全局变量作为载体,防止循环调用替换方法 static void (*orig_close)();

4, 在指定位置调用fishhook方法 rebind_symbols ((struct rebinding[替换的函数个数]) {"需要替换的系统函数名", 自定义替换函数名, (void *)&载体名(orig_close))}, 替换的函数个数)

5, 替换函数的实现