在 Linux 库中查找静态函数地址
Finding static function address in linux library
我需要在 linux 库中找到静态函数的地址以进行钩接。
我尝试使用 dlopen() 和 dlsym(),但它不起作用。
有什么办法可以找到它吗?或者如何遍历库的内存以便我可以进行模式扫描?
除非库的导出表中有一个条目,否则你将不得不做一些逆向工程来发现它的位置(如果它被编译为可以识别为单个函数的内容,也就是说)。
不幸的是,似乎没有这样的条目。如果你有源代码,你可以尝试将该函数编译成一个单独的二进制文件,使用你对感兴趣的模块使用的任何选项的最佳猜测 - 至少你会有一个模式来尝试匹配。
相关文章:
- 给定一个C++嵌套的私有结构类型,是否有从文件范围静态函数访问它的策略
- 检查编译时是否存在静态函数
- 名称隐藏对静态函数继承的实例使用
- 为什么成员函数地址离自由函数这么远?
- 如果 C 函数仍然可以间接执行(通过回调函数),那么将它声明为静态函数是否是一种不好的做法?
- 类中静态函数C++意外结果
- 在工人类中使用不同类的静态函数进行实验
- 类 Referention 中C++回调函数引用非静态函数
- 指向模板上下文中的成员函数或静态函数的指针
- 如何检测 Clang AST C++中的静态函数
- 内联asm编译器屏障(内存阻塞器)是算作外部函数,还是算作静态函数调用
- 如何在静态函数中使用成员函数数组
- (2 问题)"类"类型重新定义(即使 #pragma 一次),以及静态函数内的静态成员对象初始化?
- 生成代码(在编译时)以调用模板的每个实例化的静态函数
- C++无法访问或使用静态函数
- 如何将 cpp 文件中的静态函数公开给其他文件
- 将函数的引用设置为其他 c++ 文件中的非静态函数
- 方法的静态函数的等价性
- 在 Linux 库中查找静态函数地址
- 静态函数中的静态变量可以移动到内存中的新地址吗?