Dynamic section
的NEEDED
项 搜索相应的的动态链接库。ld-linux/ld.so
搜索动态链接库路径的先后顺序如下:-Wl,-rpath='.'
, 这时生成程序的Dynamic section
会新加一个RPATH
段NEWDIRS
xxx修改搜索路径 )NEWDIRS
" 命令添加临时环境变量 )LD_PRELOAD
环境变量的值和默认配置文件/etc/ld.so.preload的文件内容,并将读取到的动态链接库进行预加载,即使程序不依赖这些动态链接库,LD_PRELOAD
环境变量和/etc/ld.so.preload配置文件中指定的动态链接库依然会被装载,它们的优先级比LD_LIBRARY_PATH
环境变量所定义的链接库查找路径的文件优先级要高,所以能够提前于用户调用的动态库载入。LD_PRELOAD
影响的也就只有那些静态链接的程序了.LD_PRELOAD
?只需要这样运行程序 LD_PRELOAD="./xxx.so" ./xxx
,这样只是针对程序某次运行export LD_PRELOAD
导出环境变量使该环境变量生效,unset LD_PRELOAD
解除设置的LD_PRELOAD环境变量;或者将恶意动态链接库路径写入/etc/ld.so.preload(没有则创建)配置文件中,如echo /tmp/xxxr.so >> /etc/ld.so.preload