Windows 10正式版已经出了几个月了,来看一下怎样隐藏注册表。下图是一个从Windows XP — Windows 10的偏移量表。
其他用到的结构体CM_KEY_BODY、CM_KEY_NODE、CM_KEY_INDEX都没有变化,可以直接使用。
GetCellRoutine()的变化
偏移量、结构体都没变化,就直接编译运行了。结果自然是蓝屏了,否则也不会有这篇文章了。通过分析memory dump,发现Hook是成功的,但执行到自定义GetCellRoutine()函数时,因为栈不平衡导致了蓝屏。
既然Hook没有问题,就证明是GetCellRoutine()本身有了变化,重启虚拟机,看看原始的GetCellRoutine()指向哪个处理函数。
处理函数是HvpGetCellPaged(),请出IDA看看代码。
第3个参数是一个OUT DWROD *,只用来返回,不需要输入,这样就方便多了。把这里兼容掉,应该就不会蓝屏了。
修复蓝屏
编译运行后,就可以隐藏了。(64位也能用此方法。)
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。