如何重新映射符号以调用不同的函数

pau*_*op6 5 linux gcc elf

我有一个ELF共享对象,我想修改它,以便对系统函数的调用memcpy实际上路由到memcpy.

我一直在研究并阅读了有关PLT重定向和ELF感染的内容,但我仍然不确定如何实现我的目标。

谁能给我一些提示和技巧,或者详细说明PLT重定向和ELF感染?

问候,

保罗

use*_*559 2

-wrap当您链接可执行文件时,您是否尝试过ld 选项?它应该重定向符号,以便对原始函数的所有调用(包括库内的函数)都将转到您的替换函数。

请参阅此示例

[编辑:上述评论者正确地指出,如果库内联调用 memcpy,则除了重建库之外,您别无选择。]