专栏首页BinarySecLinux如何搜索动态库

Linux如何搜索动态库

0x00 背景

在linux下安装一些程序,或者在做pwnable的时候经常出现没有找到动态库的情况。

0x01 如何链接动态库

链接动态库通常有五中方法:

  1. 链接时使用静态库,gcc编译时添加参数
  2. 使用LD_LIBRARY_PATH指定搜索路径, export LD_LIBRARY_PATH=`pwd`
  3. 编译时使用-rpath指定动态库的搜索路径
  4. 修改/etc/ld.so.conf,添加动态库搜索路径
  5. 复制动态库到系统默认的路径下,如/lib/usr/lib

0x02 动态库搜索路径的优先级

动态库搜索路径优先级由高到低排列情况如下:

  1. 编译时指定动态库搜索路径
  2. 环境变量LD_LIBRARY_PATH中的路径
  3. 配置文件/etc/ld/so.conf中的路径
  4. 系统默认的路径lib

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 勒索软件WannaCry的FAQ

    什么是勒索软件 勒索软件就是利用加密手段,加密感染机器上的特定文件。要求用户支付赎金(通常为比特币)后,黑客会解密被加密的文件。 什么是比特币 比特币利用区块链...

    WeaponX
  • python脚本中使用Django函数

    WeaponX
  • 一些pwn题目的解题思路[pwnable.kr]

    目录 以下是solution的目录 #fd #collision #bof #flag #passcode #random Other 一些pwn题目的解题思路...

    WeaponX
  • ACL2016最佳论文:通过整合基于路径的方法和分布式的方法,改善词对检测

    摘要 在自然语言处理(NLP)中,理清词对关系是一项的关键任务 ,在一份使用两种互补方法的文献中也强调这一点。分布式方法:其监督式的变体是目前最好的任务执行器...

    AI科技评论
  • RPA+物理硬件机器人完成合同盖章和自动密封

    DENSO WAVE,Hitachi Capital和Hitachi Systems于12月11日宣布了一项服务,该服务使用机器人和RPA自动执行合同和其他文件...

    RPA小葵
  • akka-typed(1) - actor生命周期管理

    akka-typed的actor从创建、启用、状态转换、停用、监视等生命周期管理方式和akka-classic还是有一定的不同之处。这篇我们就介绍一下akka-...

    用户1150956
  • 【学习】大数据技术学习路线指南:[2]实践原型

    大数据的目的在于挖掘价值,而它的本质与OODA循环决策模型非常相似。用OODA这个原型来理解大数据是最合适的了!在战场上,OODA循环决策的周期越短,胜算越大;...

    小莹莹
  • 企业面试题: HTML5 相对之前版本新在什么 地方

    HTML5是HTML(超文本标记语言)的最新版本。它是一种为万维网构建和显示内容的语言,万维网是互联网的核心技术。

    舒克
  • STL之set与multiset那些事

    set/multiset以rb_tree为底层结构,因此有元素自动排序特性。排序的依据是key,而set/multiset元素的value和key合二为一:va...

    公众号guangcity
  • golang context实战

    来自官方文档: https://blog.golang.org/context: Incoming requests to a server should cr...

    王磊-AI基础

扫码关注云+社区

领取腾讯云代金券