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

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

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

[培训]科锐逆向工程师培训第53期2025年7月8日开班!

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 183
活跃值: (1289)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
2
记得论坛有人发过这种工具。
2015-1-19 17:32
0
雪    币: 204
活跃值: (2829)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
貌似 飘云阁有一个 现成的工具 而且已开源
c06K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3u0T1M7#2)9J5k6h3y4Z5K9h3&6S2M7s2W2Y4i4K6u0W2j5$3!0E0i4K6u0r3k6X3!0J5N6h3#2Q4x3X3g2H3K9s2m8Q4x3@1k6E0L8$3c8Q4x3@1c8$3K9h3g2%4N6r3S2J5k6h3q4V1i4K6t1$3N6r3W2V1i4K6y4p5y4K6b7%4y4K6N6Q4x3U0k6H3j5h3N6W2i4K6y4p5x3g2)9J5y4X3g2^5N6s2u0S2i4K6y4p5i4K6t1K6M7r3W2V1y4U0x3$3z5o6j5K6
2015-1-19 17:40
0
雪    币: 275
活跃值: (259)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
4
你不会是空道吧?anyway,3q!!
2015-1-19 18:06
0
雪    币: 188
活跃值: (187)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
5
多多研究elf文件格式,添加一个section需要处理好节表头、节名、bss节、第二个段的修改,就基本可以了
2015-1-20 15:00
0
雪    币: 275
活跃值: (259)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
6
我在想一个问题,就是有两个段的情况下,前面的段是可读可运行的,而后面的这个段是可读可写的,这样要添加新的代码就得往前面的段的段尾加,这样所加代码的体积不能过大,否则就会超过后面这个段的虚拟地址。。这样说来,所加代码的体积还是受到限制了?前辈,不知道我说的有没有道理。
2015-1-25 22:49
0
雪    币: 188
活跃值: (187)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
7
[QUOTE=wule;1349281]我在想一个问题,就是有两个段的情况下,前面的段是可读可运行的,而后面的这个段是可读可写的,这样要添加新的代码就得往前面的段的段尾加,这样所加代码的体积不能过大,否则就会超过后面这个段的虚拟地址。。这样说来,所加代码的体积还是受到限制了?前辈,不知道我说的有没有道理。[/QUOT

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