吾爱汇编

 找回密码
 立即注册

QQ登录

绑定QQ避免忘记帐号

查看: 7445|回复: 4

大佬进来!!!

[复制链接]
狐白小刺客 发表于 2021-5-25 17:03 | 显示全部楼层 |阅读模式

本站严厉禁止求脱求破行为(包含无自我分析直接求思路),如发现此类求助主题请点击“举报”,让我们共同维护优质的学习环境!


1000HB
首先来看看SYSCALL这个指令 在AMD上是怎么工作的SYSCALL 0F 05 Call operating system
1.png
可以看到 如果没有SCE标志,那么就会产生一个#UD异常
2.png

然后看看这个标志

3.png

图中所说的是 MST_IA32_EFER  在window里就是 0xC0000080

然后尝试清SCE标志


4.png

然后在windowx64系统工作 正常来说 CPU遇到异常会到IDT里分发异常
可是在调试过程中没有发现经过#UD 而是没有谁去接管这个异常(无虚拟化环境),造成虚拟机卡死
然后有没有可能走IDT里 却不分发异常,如果分发了异常那么就是蓝屏 (还是说走到了NMI中断里


参考:AMD64 Architecture Programmer’s Manual, Volumes 1-5, 40332, 24592, 24593, 24594, 26568, 26569



还有一个问题,也就是所谓检测无痕MSR_LSTAR HOOK


    mov     ecx, 0C0000084h    rdmsr   
push    rdx   
push    rax   
and     eax, 0FFFFFEFFh   
wrmsr   
pushfq    or      qword ptr[rsp], 100h   
popfq   
syscall


这代码你能看出什么呢?
首先修改SFMASK MSR,在保存原来的MSR值,在将SFMASK 的第七位复位,在设置TF单步,那么正常来说SYSCALL 会走到[size=14.992px]kisystemcall64里 然后就检测到了(当然如果不设置MSR 那么SYSCALL指令会将TF复位)
[size=14.992px]那么问题来了 在新win10上 PatchGuard利用这个检测,如果自己调用 则也会造成上面卡死虚拟机,有没有可能是在IDT1里检测是否是PG调用的呢





吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
 楼主| 狐白小刺客 发表于 2021-5-25 17:18 | 显示全部楼层

本帖最后由 狐白小刺客 于 2021-5-26 10:28 编辑

17点17分 在win10重现了下 发现成功了
确实走的是KiInvalidOpcodeFault 并且捕获到了异常 不过是有几率的 这又是什么原因呢 1.png

吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
0×Ret 发表于 2021-5-25 22:28 | 显示全部楼层

狐白 就是大佬了。我们都望尘莫及的了。
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
封情 发表于 2021-5-27 08:05 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
李沉舟 发表于 2021-6-9 04:26 | 显示全部楼层

不是大佬,就蹭蹭,不进去看了😅
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

警告:本站严惩灌水回复,尊重自己从尊重他人开始!

1层
2层
3层
4层
5层

免责声明

吾爱汇编(www.52hb.com)所讨论的技术及相关工具仅限用于研究学习,皆在提高软件产品的安全性,严禁用于不良动机。任何个人、团体、组织不得将其用于非法目的,否则,一切后果自行承担。吾爱汇编不承担任何因为技术滥用所产生的连带责任。吾爱汇编内容源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除。如有侵权请邮件或微信与我们联系处理。

站长邮箱:SharkHeng@sina.com
站长QQ:1140549900


QQ|RSS|手机版|小黑屋|帮助|吾爱汇编 ( 京公网安备11011502005403号 , 京ICP备20003498号-6 )|网站地图

Powered by Discuz!

吾爱汇编 www.52hb.com

快速回复 返回顶部 返回列表