Zero-Tang / NoirVisor

The Grimoire Hypervisor solution for x86 Processors with experimental nested virtualization support. Remastering with Rust in progress.
MIT License
474 stars 81 forks source link

win7x64 代码修复 #17

Closed 9844201 closed 3 years ago

9844201 commented 3 years ago

发现Win7x64 msrhook 无效了 找了好久 在 nvc_vt_subvert_system 添加了 就好了 if (hvm_p->options.stealth_msr_hook)vcpu->enabled_feature |= noir_vt_syscall_hook; if (hvm_p->options.stealth_inline_hook)vcpu->enabled_feature |= noir_vt_ept_with_hooks;

但是 WIN10 1909下测试 msrhook epthook 都蓝屏,因为现在机器很多都是WIN10。。。 因为不是很懂这个 所以 接下来 我自己没法修复这些问题了。。。

Zero-Tang commented 3 years ago

已修复,正在测试阶段,预计10.22(本周五)发布更新。 备注:虽然修复了,但隐藏钩子属于“已退休”功能,未来再出问题会放在最低优先级进行修复。

Zero-Tang commented 3 years ago

更新已发布。

9844201 commented 3 years ago

好的 ,测试可以了 但是在AMD CPU的电脑开启 StealthInlineHook 会导致系统卡死 比如说打不开任务管理器(Win7 x64) 经过测试发现 将虚拟机内存调成1GB 会蓝屏

Zero-Tang commented 3 years ago

换个低频的函数试试吧,在AMD上用隐藏的Inline Hook确实卡,因为调用一次被Hook的函数至少会产生四次为了隐藏而触发的VM-Exit。 此外我在AMD的机器上VMware虚拟机内存调成1GB并没有测试出蓝屏,而且开启StealthInlineHook也没有卡死。 Windows 7 x64-2021-10-23-13-42-36