reverse-engineering - 将函数符号从 symtab 导出到 dynsym
问题描述
我的目标是使符号可见以dlsym
备将来使用。
目前所有符号都在.symtab
我尝试使用LIEF
导出它们,但总是Exec format error
在修改后得到
我的精灵文件:
ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, not stripped
据我所知,符号必须位于动态表中才能使用dlsym
,但还没有找到任何可以做到这一点的东西。
解决方案
据我所知,符号必须位于动态表中才能使用 dlsym 访问
正确的。
但还没有找到任何可以做到这一点的东西。
重建动态符号表以使其包含新符号非常复杂(您还需要重建.hash
or .gnu.hash
),因此我对您找不到任何可靠地执行此操作的工具并不感到惊讶。
您可能应该寻找另一种方法来实现您想要实现的任何目标(另请参见XY 问题)。
推荐阅读
- c# - 如何使 C# 中的 DrawingVisual 对象具有唯一的笔刷颜色,但具有相同的粗细
- html - 在没有Css的html中将视频与图像对齐
- angular - 在 Angular Fire 上刷新页面后,Firebase 请求被拒绝
- c# - 尝试在 Unity 中的鼠标位置启动
- c - 返回 libc 缓冲区溢出攻击
- discord.py - 我如何在这里定义 ctx ?
- reactjs - 放大存储上传问题未处理的拒绝(错误):网络错误
- reactjs - 使用 redux 更新状态中的深层嵌套对象
- java - Apache POI 用 Java 替换 docx 中的文本
- lstm - 谁能告诉如何解决给定链接中的这个输入层错误?