我正在修改libc6
动态链接器。对于运行的给定程序以及加载它的所有共享库,我需要所有相应.plt
部分的地址范围(起始地址+长度)。
链接器ld.so
代码中是否有可用于此目的的宏或指针?
我正在浏览链接器代码,但由于缺乏此透视图中的文档,我无法找出符合我目的的确切元素。谷歌没有给出任何对我有用的具体结果。
由于链接器执行初始加载和重定位,因此它应该具有这些信息。 任何建议都非常感谢。
修改
有没有办法通过链接器获取节头?我可以使用它们来获取plt section
信息。
由于
答案 0 :(得分:2)
在Linux上,你可能想要使用dl_iterate_phdr(3)
顺便说一句,你应该研究源代码,或许修改一下,MUSL libc;它非常易读,并且有自己的动态链接器。