文章目录
一、通过修改 GOT 全局偏移表拦截函数
二、通过在实际被调用的函数中添加跳转代码实现函数拦截
一、通过修改 GOT 全局偏移表拦截函数
----
使用 GOT 全局偏移表 拦截函数 , 只需要将...;
该方法存在弊端 , 如果使用 dlopen 函数打开动态库 , 可以直接拿到函数地址执行该函数 , 此时根本就不会向 GOT 表中存放函数地址 , 这样就拦截不到函数了 ;
参考之前的博客 【Android...逆向】Android 进程注入工具开发 ( 注入代码分析 | 获取注入的 libbridge.so 动态库中的 load 函数地址 并 通过 远程调用 执行该函数 ), 使用 dlopen 函数直接加载...libbridge.so 动态库 , 然后调用 dlsym 函数 , 获取 libbridge.so 动态库中的 load 函数地址 , 根据该函数地址 , 可以直接调用函数 , 这样就完美的避开了...GOT 全局偏移表 , 而执行函数 ;
因此 , 使用 GOT 表拦截函数并不能保证 100% 成功 ;
二、通过在实际被调用的函数中添加跳转代码实现函数拦截
----
在 实际的被调用的函数 中 ,