首页
社区
课程
招聘
[原创]解决vista.win7 32/64 session隔离 注入
发表于: 2012-7-31 17:53 29753

[原创]解决vista.win7 32/64 session隔离 注入

2012-7-31 17:53
29753

vista/7 以后的系统都存在session隔离,

CreateRemoteThread的流程
vista下 Kernel32!CreateRemoteThread
win7下 Kernel32!CreateRemoteThread->..一些中转..->KernelBase->CreateRemoteThreadEx

在vista/7上,kernel32/或者KernelBase里存在一个全局变量BaseRunningInServerProcess
在进程创建的时候就被初始化了,表示本进程是否是一个服务进程,服务的session是0

由CreateRemoteThread流程的最尾端的函数处理了这个标志,发现不是从服务进程发起的调用,就跳转了,

由于这个判断是在应用层而且是本进程做的,所以很没有意义,可以直接修改.

一般的修改办法是修改判断跳转,其实在某些条件下比如win7/32/64可以更简单的方式绕过.

原理是一样的,只是vista下没有导出这个全局变量,不好定位,只想到用特征码搜索的方式.

但在win7下就方便多了,由于kernelBase!KernelBaseGlobalData 导出,所以直接调用这个函数就可以获得这个全局结构体的地址,\
虽然这个结构体没有文档,但是加上一个偏移就是我们要的标志.

kernelBase!KernelBaseGlobalData的函数原形
typedef void* (__stdcall *LPFN_KernelBaseGetGlobalData)(void);

win7 32下 BaseRunningInServerProcess 位于 KERNELBASE!KernelBaseGlobalData+0x30
win7 64 下, BaseRunningInServerProcess 位于 KERNELBASE!KernelBaseGlobalData+0x5c

原理说完了,贴段可以自适应的代码.


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 6
支持
分享
最新回复 (34)
雪    币: 1040
活跃值: (1293)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
刚才MJ的微博上看到他说改某个标志位就可以注,没想到马上就发了……
2012-7-31 18:44
0
雪    币: 138
活跃值: (306)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
3
这个跟MJ有什么关系
2012-7-31 19:42
0
雪    币: 1024
活跃值: (240)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
4
逆向越来越难了
2012-7-31 19:56
0
雪    币: 1040
活跃值: (1293)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
巧合吧……我回去翻了一下,原来就是LZ的微博,MJ有去评论,“改个标记就穿了”
2012-7-31 20:28
0
雪    币: 601
活跃值: (256)
能力值: ( LV11,RANK:190 )
在线值:
发帖
回帖
粉丝
6
貌似ntdll函数可以直接干
2012-7-31 21:50
0
雪    币: 544
活跃值: (264)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
7
这难啥,看一眼就出来了。
2012-7-31 22:07
0
雪    币: 796
活跃值: (370)
能力值: ( LV9,RANK:380 )
在线值:
发帖
回帖
粉丝
8
  xp~win8,注入无压力~~
2012-7-31 23:09
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
9
自己实现一个CreateRemoteThread不难~
2012-8-1 04:09
0
雪    币: 116
活跃值: (48)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
感谢楼主 收藏了 我之前都是自己模拟CreateRemoteThread
2012-8-1 08:11
0
雪    币: 116
活跃值: (48)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
求V校Blog地址~
2012-8-1 08:13
0
雪    币: 230
活跃值: (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
12
求人不如求己
2012-8-1 08:28
0
雪    币: 227
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
好东西!放入电脑中!
2012-8-1 08:29
0
雪    币: 27
活跃值: (127)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
14
注入,八百年前就被杀软拦截的东西,我还以为没人用了
2012-8-1 09:23
0
雪    币: 138
活跃值: (306)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
15
注入也不是完全被拦截,还要看.
从谁注.
注入谁.
怎么注
2012-8-1 10:44
0
雪    币: 1149
活跃值: (888)
能力值: ( LV13,RANK:260 )
在线值:
发帖
回帖
粉丝
16
这个可不一定哦.....顶lz....
2012-8-1 11:11
0
雪    币: 66
活跃值: (1880)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
受教了,楼主能说说处理这个问题的思路和方法吗? 授之以鱼不如授之以渔。
2012-8-1 11:21
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
18
只要调试之,比什么都清晰了~
2012-8-1 12:46
0
雪    币: 27
活跃值: (127)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
19
注入也不是完全被拦截,还要看.
从谁注.
注入谁.
怎么注


xSPY兄说些细节
2012-8-1 12:56
0
雪    币: 1024
活跃值: (240)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
20
我不是指这一个 我是指平台越来越多 搞逆向就困难了 都要搞清楚
2012-8-1 15:22
0
雪    币: 219
活跃值: (38)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
菜鸟学习了!~ 感谢你们这些大牛多多贡献
2012-8-1 20:28
0
雪    币: 257
活跃值: (67)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
22
来学习一下,mark了
2012-8-2 14:25
0
雪    币: 15
活跃值: (48)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
打酱油。。。
Windows API 看起来 都是那么 不爽。
2012-8-4 01:02
0
雪    币: 177
活跃值: (141)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
这东东.MARK下吧.以后用
2012-8-4 14:39
0
雪    币: 58
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
nice man!!!!
2012-8-4 23:37
0
游客
登录 | 注册 方可回帖
返回
//