首页
论坛
课程
招聘
[原创]X64调用门的使用---R3提权R0读写MSR ---支持WIN7 WIN10
2020-4-11 20:51 14124

[原创]X64调用门的使用---R3提权R0读写MSR ---支持WIN7 WIN10

2020-4-11 20:51
14124
收藏
点赞3
打赏
分享
最新回复 (43)
雪    币: 207
活跃值: 活跃值 (1208)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
yy虫子yy 活跃值 2020-12-13 14:54
26
0
~时光荏苒 汇编代码编程这样运行后 r3程直接挂了,请问是什么情况
怎么调用的?r0层是否已安装调用门?
代码我贴在10楼了
雪    币: 997
活跃值: 活跃值 (1004)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
~时光荏苒 活跃值 2020-12-13 15:25
27
0
yy虫子yy 怎么调用的?r0层是否已安装调用门? 代码我贴在10楼了


r3成就是上面的代码  调用没反应 r3程序直接崩溃 


在驱动里 已执行 安装


最后于 2020-12-13 15:26 被~时光荏苒编辑 ,原因:
雪    币: 207
活跃值: 活跃值 (1208)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
yy虫子yy 活跃值 2020-12-13 16:22
28
0
~时光荏苒 yy虫子yy 怎么调用的?r0层是否已安装调用门? 代码我贴在10楼了 r3成就是上面的代码  调用没反应 r3程序直接崩溃&nbs ...
r0安装后,只是安装在了cpu其中一个核心上,可以用pchunter看到
r3要绑定到那个核心上,才可以调用,可以用任务管理器绑定,设置进程相关性
雪    币: 997
活跃值: 活跃值 (1004)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
~时光荏苒 活跃值 2020-12-13 17:16
29
0
yy虫子yy r0安装后,只是安装在了cpu其中一个核心上,可以用pchunter看到 r3要绑定到那个核心上,才可以调用,可以用任务管理器绑定,设置进程相关性
在驱动里安装后  pchunter看不到 没有变化    win10的系统
雪    币: 207
活跃值: 活跃值 (1208)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
yy虫子yy 活跃值 2020-12-13 18:39
30
0
~时光荏苒 在驱动里安装后 pchunter看不到 没有变化 win10的系统
用win7
雪    币: 997
活跃值: 活跃值 (1004)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
~时光荏苒 活跃值 2020-12-13 23:06
31
0
yy虫子yy 用win7
这样的啊,  win10 有没有办法处理呢
雪    币: 207
活跃值: 活跃值 (1208)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
yy虫子yy 活跃值 2020-12-15 00:23
32
0
~时光荏苒 这样的啊, win10 有没有办法处理呢
win10应该不是70,你试下e0,应用层写e3,看行不行
雪    币: 997
活跃值: 活跃值 (1004)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
~时光荏苒 活跃值 2020-12-15 20:35
33
0
yy虫子yy win10应该不是70,你试下e0,应用层写e3,看行不行
不行 还是一样
雪    币: 207
活跃值: 活跃值 (1208)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
yy虫子yy 活跃值 2020-12-16 21:55
34
0
~时光荏苒 不行 还是一样

打开DebugView调试输出工具测试

解压密码:kanxue


上传的附件:
雪    币: 997
活跃值: 活跃值 (1004)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
~时光荏苒 活跃值 2020-12-16 22:43
35
0
yy虫子yy 打开DebugView调试输出工具测试解压密码:kanxue
测试了下  16299版本没问题  18362  就直接奔溃
雪    币: 207
活跃值: 活跃值 (1208)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
yy虫子yy 活跃值 2020-12-17 16:18
36
0
~时光荏苒 测试了下 16299版本没问题 18362 就直接奔溃
我 18363 好好的
雪    币: 997
活跃值: 活跃值 (1004)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
~时光荏苒 活跃值 2020-12-17 21:20
37
0
yy虫子yy 我 18363 好好的

运行 decnit.exe  就 

雪    币: 207
活跃值: 活跃值 (1208)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
yy虫子yy 活跃值 2020-12-17 22:08
38
0
~时光荏苒 运行 decnit.exe  就 
所以说啊,调用次数多了之后就会发生三重错误
VMware可以保存三重错误日志,方法是在vmx文件里面添加这两行:
monitor_control.log_vmsample = "TRUE"
monitor.suspend_on_triplefault = "TRUE"
发生三重错误导致cpu关闭后,log文件里面就可以看到相关信息
只是目前还无法修复这个bug
雪    币: 997
活跃值: 活跃值 (1004)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
~时光荏苒 活跃值 2020-12-17 22:21
39
0
汗头疼!~~  那请教下大佬 我想R3调用R0里面重写的函数  R3调用 ->自己的驱动 ->R0重写函数  有没有好办法 请教下~
雪    币: 207
活跃值: 活跃值 (1208)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
yy虫子yy 活跃值 2020-12-28 00:59
40
0
已经彻底调查了x64调用门触发三重故障或者崩溃蓝屏的原因了
是因为intel和amd的cpu支持全新的syscall/sysret系统调用指令,并且弱化了x64调用门的功能
具体来说就是系统调用或者中断从Ring3进入Ring0的时候清除了IF中断标志位
而这一过程是由复杂指令集和中断过程自行完成的,所以能够保证在刚进入内核的时候不会被打断
从而在这个时候可以切换一下运行环境,比如代码段,堆栈段,FS,swapgs等
而x64调用门在进入Ring0的时候却没有这种保护机制,一些标志位也不会改变
那这个时候就很容易被DPC,时钟,系统调度等打断,而打断后的运行环境还处于Ring3
没来得及切换,最后就出问题了,如果修复的话,只能在拦截这些中断之前切换到Ring0运行环境
其实应该可以用VT拦截,我没试过,还有最终极的办法就是给cpu打微码补丁进Ring0的时候清除标志位
其实不管哪种修复方式都非常困难,所以这里仅供参考,感兴趣的兄弟可以试试
雪    币: 33
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
mb_anxnjeyk 活跃值 2021-11-23 16:23
41
0
冰雄 你代码截图看看 。要注意处理gs问题
我整了两天都没整对,大佬,可以指点指点吗
雪    币: 2291
活跃值: 活跃值 (1778)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
Mr.hack 活跃值 2021-11-24 19:59
42
0
且换GS后才能INT 3,在返回RING0之前也要手动切换GS
雪    币: 33
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
mb_anxnjeyk 活跃值 2021-11-25 18:01
43
0
青丝梦 还是amd爽, 我记得做当时做实验的话, 查了资料,显示 intel x64调用门 要比 amd x64复杂一点。 amd 的话 如果我没记错的话,和x86调用没有太大区别,
大佬,你x64调用门怎么成功的
雪    币: 23
活跃值: 活跃值 (193)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
hzmslx 活跃值 1 2021-11-28 21:56
44
0
你动GDT表,PG不管吗,时间长了大概率还是会蓝屏
游客
登录 | 注册 方可回帖
返回