今天看啥  ›  专栏  ›  看雪学苑

PWN入门-制服_dl_resolve_runtime

看雪学苑  · 公众号  · 互联网安全  · 2024-09-26 18:01

文章预览

一 _dl_runtime_resolve初探 当程序使用动态链接库中的函数时,由于链接器无法确定动态链接函数的地址信息,所以会将动态链接函数的绑定过程拖到运行期再进行操作,这一过程被称作是动态链接。 动态链接分成启动期链接和调用期链接两种,启动期链接指的是动态链接器LD运行时就将全部的动态链接函数地址解析好,调用期链接指的是动态链接函数首次调用时再进行解析,调用期链接的做法也被称作是延迟绑定。 在启动过程中, lazy 变量是会决定是否在启动时对动态链接函数的地址进行解析,该变量的数值是根据 .dynamic 动态链接节中是否存在 BIND_NOW 标志进行设置的。 0x000000000000001e (FLAGS) BIND_NOW 当程序不需要延迟绑定时, elf_machine_runtime_setup 函数内部根据 lazy 变量的提示不会做任何的操作,紧接着会直接通过 ELF_DYNAMIC_DO_XXX 函数解析全部 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览