gpt4 book ai didi

c - 如何获取操作系统提供的 dlopen()/dlsym() 地址

转载 作者:IT王子 更新时间:2023-10-29 00:36:14 26 4
gpt4 key购买 nike

我需要为 dlsym() 和 dlopen() 系统调用实现 Hook 。为了从 Hook 中调用原始的 dlsym(),我需要获取此系统调用的地址。我尝试在 so-library-constructor-function 中获取地址。但我只得到钩子(Hook)函数的地址。我尝试将处理程序指定为 RTLD_DEFAULT 和 RTLD_NEXT。使用 RTLD_DEFAULT 时,我得到 NULL。使用 RTLD_NEXT 时,我得到了 Hook 函数的地址。dlopen() 出于同样的原因我不能使用,因为我在 dlopen() 上有钩子(Hook)。

请告诉我,如何获取原始 dlopen() 和 dlsym() 函数的地址?

谢谢。

最佳答案

__libc_dlsym()是 libc 提供的 dlsym()dlopen() 有自己的对应物 __libc_dlopen()

关于c - 如何获取操作系统提供的 dlopen()/dlsym() 地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13277950/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com