ldd 不显示动态库

逆向工程 数据库 图书馆 动态链接
2021-07-05 00:50:52

我试图了解一个封闭源程序的某些部分是如何作为一个剥离的二进制文件来实现的。当我ldd在程序上运行时,它只打印 4-5 个最基本的 C 库作为动态依赖项。(例如libcglibgobject等)。然而,当我在gdb运行或附加GDB它和运行info sharedlibrary,它打印一个巨大的库列表。例如,该程序显然将 GTK 用于 GUI,但ldd输出中缺少 gtk 库并显示在info sharedlibrary输出中。

我想知道它是否有效以及他们是如何实现这一目标的。有任何想法吗?

谢谢。

1个回答

他们可以通过使用dlopendlsym函数动态加载他们的动态库这是dlsym手册页用法示例