首页
社区
课程
招聘
[求助]so中添加一个新的section
2015-1-19 15:10 12954

[求助]so中添加一个新的section

2015-1-19 15:10
12954
最近因为在做毕设,想实现往so中插入自己的代码,这样的功能。在网上可以搜到一些关于elf文件感染的代码,但是基本上都是通过向elf的text段的空闲空间写入代码,这种方式对代码体积限制太大
目前,在想如果能够像elf中添加一个新的section那就再好不过了。在google上搜到了一些信息:可以通过linux下的objcopy这个工具,通过它的--add-section指令来完成向elf添加section。找到objcopy的源码之后发现,代码量略大,因为objcopy可以完成很多的功能,要从里面挑出添加section的代码有点麻烦。
所以在此向各位前辈们请教下,有没有啥更简单的方法来完成这个功能?

[培训]二进制漏洞攻防(第3期);满10人开班;模糊测试与工具使用二次开发;网络协议漏洞挖掘;Linux内核漏洞挖掘与利用;AOSP漏洞挖掘与利用;代码审计。

收藏
点赞0
打赏
分享
最新回复 (7)
雪    币: 183
活跃值: (998)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
yy大雄 2015-1-19 17:32
2
0
记得论坛有人发过这种工具。
雪    币: 204
活跃值: (1243)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
zhengcai 2015-1-19 17:40
3
0
貌似 飘云阁有一个 现成的工具 而且已开源
http://bbs.chinapyg.com/forum.php?mod=viewthread&tid=74777&page=1&extra=#pid636863
雪    币: 270
活跃值: (234)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
wule 2 2015-1-19 18:06
4
0
你不会是空道吧?anyway,3q!!
雪    币: 188
活跃值: (167)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
cacorothuo 2015-1-20 15:00
5
0
多多研究elf文件格式,添加一个section需要处理好节表头、节名、bss节、第二个段的修改,就基本可以了
雪    币: 270
活跃值: (234)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
wule 2 2015-1-25 22:49
6
0
我在想一个问题,就是有两个段的情况下,前面的段是可读可运行的,而后面的这个段是可读可写的,这样要添加新的代码就得往前面的段的段尾加,这样所加代码的体积不能过大,否则就会超过后面这个段的虚拟地址。。这样说来,所加代码的体积还是受到限制了?前辈,不知道我说的有没有道理。
雪    币: 188
活跃值: (167)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
cacorothuo 2015-1-26 10:28
7
0
[QUOTE=wule;1349281]我在想一个问题,就是有两个段的情况下,前面的段是可读可运行的,而后面的这个段是可读可写的,这样要添加新的代码就得往前面的段的段尾加,这样所加代码的体积不能过大,否则就会超过后面这个段的虚拟地址。。这样说来,所加代码的体积还是受到限制了?前辈,不知道我说的有没有道理。[/QUOT

可以扩充后面的段啊,只不过改一下属性不就得了
雪    币: 270
活跃值: (234)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
wule 2 2015-1-28 13:10
8
0
自己添加个可读可运行的segment可否?
游客
登录 | 注册 方可回帖
返回