【发布时间】:2014-03-18 08:55:10
【问题描述】:
Linux 中的 System.map 文件是在 OS 构建后生成的。我想知道使用“运行时”地址随机化技术是否会使 system.map 中的地址无效。
【问题讨论】:
标签: linux-kernel kernel linux-device-driver memory-address
Linux 中的 System.map 文件是在 OS 构建后生成的。我想知道使用“运行时”地址随机化技术是否会使 system.map 中的地址无效。
【问题讨论】:
标签: linux-kernel kernel linux-device-driver memory-address
(目前)还没有,至少还没有。只有内核代码段的基地址是可随机化的。
请参阅this LWN article 了解详情/更多参考资料。
那里提到的方法基本上是在内核代码段加载地址中添加一个常量(在启动时随机选择);这意味着System.map 中的相对偏移量保持有效,如果您获得了单个符号的真实地址,则可以推导出所有其他符号。
【讨论】: