首页
社区
课程
招聘
删帖
发表于: 2017-11-15 11:46 6959

删帖

2017-11-15 11:46
6959
~

[课程]Linux pwn 探索篇!

最后于 2019-8-18 12:58 被爱吃菠菜编辑 ,原因:
收藏
免费 0
支持
分享
最新回复 (14)
雪    币: 43
活跃值: (388)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
2
自定义个loader不就好了,这事我干过。
2017-11-15 11:49
0
雪    币: 1096
活跃值: (349)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
3
改造linker更方便
2017-11-15 14:16
0
雪    币: 2141
活跃值: (7200)
能力值: ( LV11,RANK:180 )
在线值:
发帖
回帖
粉丝
4
lscmxl 改造linker更方便
然而这不是模仿别人的思路,
这是自己动手证实的。
2017-11-15 15:28
0
雪    币: 5
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
为什么要向A写入一段代码C呢?去掉这一步不行吗?
2017-11-15 17:23
0
雪    币: 2141
活跃值: (7200)
能力值: ( LV11,RANK:180 )
在线值:
发帖
回帖
粉丝
6



欧阳锋锋

为什么要向A写入一段代码C呢?去掉这一步不行吗?
C的作用是,从A中分离出B,并加载B,让B操作A。
解密和反调试的逻辑都在B中,B随便更新,C永远不变,A可以是任意目标。
2017-11-15 17:45
0
雪    币: 2141
活跃值: (7200)
能力值: ( LV11,RANK:180 )
在线值:
发帖
回帖
粉丝
7



欧阳锋锋

为什么要向A写入一段代码C呢?去掉这一步不行吗?
写入的不是源代码,是写入shellcode。。
2017-11-15 18:44
0
雪    币: 14481
活跃值: (5738)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8



爱吃菠菜




欧阳锋锋

为什么要向A写入一段代码C呢?去掉这一步不行吗?
C的作用是,从A中分离出B,并加载B,让B操作A。解密和反调试的逻辑都在B中,B随便更新,C ...
应该C、B合一。因为目标是任意A,C、B都是你写的。既然A是任意的,A就不可能包含B并分离出B。你这是自相矛盾。
2017-11-16 08:03
0
雪    币: 2141
活跃值: (7200)
能力值: ( LV11,RANK:180 )
在线值:
发帖
回帖
粉丝
9



tDasm




爱吃菠菜




欧阳锋锋

为什么要向A写入一段代码C呢?去掉这一步不行吗?
C的作用是,从A中分离出B,并加载B,让 .
2017-11-16 10:16
0
雪    币: 2141
活跃值: (7200)
能力值: ( LV11,RANK:180 )
在线值:
发帖
回帖
粉丝
10
tDasm 爱吃菠菜 欧阳锋锋 为什么要向A写入一段代码C呢?去掉这一步不行吗? C的作用是,从A中分离出B,并加载B,让 ...
A被DIY扩展空间了,写入了C,C的功能类似shellcode。
2017-11-16 10:17
0
雪    币: 208
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
大佬,可分析下实现的demo吗
2017-11-16 16:51
0
雪    币: 14481
活跃值: (5738)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
爱吃菠菜 A被DIY扩展空间了,写入了C,C的功能类似shellcode。
你的目标是给A加壳,那么就是给A这个so加上启动代码(在初始化数组中或jni-onload实现?),也就是把loader代码写入A。loader代码包含B库甚至其他so,这就是C、B合一。
壳基本上都这样实现。
2017-11-17 08:31
0
雪    币: 2141
活跃值: (7200)
能力值: ( LV11,RANK:180 )
在线值:
发帖
回帖
粉丝
13



tDasm

你的目标是给A加壳,那么就是给A这个so加上启动代码(在初始化数组中或jni-onload实现?),也就是把loader代码写入A。loader代码包含B库甚至其他so,这就是C、B合一。
壳基本上 ...
不一定在初始化数组,在哪都无所谓,
inline hook  想在哪启动就在哪启动,
c是shellcode,b是payload。
2017-11-17 10:08
0
雪    币: 2141
活跃值: (7200)
能力值: ( LV11,RANK:180 )
在线值:
发帖
回帖
粉丝
14



ddssxk

大佬,可分析下实现的demo吗
如何扩展A或B部分实现不是这贴要讲的内容。
C部分找dlopen用多少个字节实现看个人的能力。
举个例子,可以是相对偏移定位自身REL/GOT--->找到libc--->popen()--->执行  cat  /proc/pid/maps  |grep  libdvm.so基址  --->解析dvm.so的REL找到dlopen。
2017-11-17 14:03
0
雪    币: 2141
活跃值: (7200)
能力值: ( LV11,RANK:180 )
在线值:
发帖
回帖
粉丝
15
爱吃菠菜 ddssxk 大佬,可分析下实现的demo吗 如何扩展A或B部分实现不是这贴要讲的内容。C部分找dlopen用多少个字节实现看个人的能力。举个例子,可以 ...
魔改ELF,一个字节不用的直接拿到dlopen地址。如果你有兴趣,可以加我一起讨论。
不过现在都是vmp了,这些玩意纯粹是闲的找事做,搞定了也没太多用处。。
2017-11-17 14:13
0
游客
登录 | 注册 方可回帖
返回
//