首页
社区
课程
招聘
[求助]linux下可执行文件修改增加调用so的函数
发表于: 2013-10-11 18:41 10594

[求助]linux下可执行文件修改增加调用so的函数

2013-10-11 18:41
10594
linux下有一可行执文件a,无原码,b.so文件是自己写的,其中有一函数add(),现需要修改文件a在启动时就运行b.so的add函数,请问如何修改a文件?是否有这种工具,谢谢。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
谁帮帮我啊,3Q
2013-10-15 11:36
0
雪    币: 71
活跃值: (326)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
没有这样的工具,我是没见过,不过可以手工修改
2013-10-23 22:47
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
手工如何修改,说说原理,谢谢。
2013-10-31 10:43
0
雪    币: 1164
活跃值: (322)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
第一步:在a文件中加入你的so文件链接库,这个可以自己编写一个使用so文件的程序,参照他的过程,就像windows的dll文件一样。如果加不了,看看你的a文件有没有用其他的so,假设名字为lib1.so,可以开发一个so,,将其他的lib1.so套进去,开发的so名字也为lib1.so,放在a文件的同目录,或者运行时指定so环境。
第二步:在a文件中开辟空间,加入你要的代码,如call add。最好是在要加入的代码前jump,执行call后再跳回来即可。

或者,用linux 下的hook,万事大吉。
2013-10-31 11:02
0
游客
登录 | 注册 方可回帖
返回