Tesla.Angela 发表于 2014-9-24 23:51:18

《WIN64驱动教程》补充[21]:一种罕见的注册表隐藏方式(DKOH)

作者:Tesla.Angela

今天介绍的东西,与其说用来保护注册表,不如说是介绍一种比较罕见的操作方式:DKOH(直接内核对象挂钩)。WINDOWS系统在遍历注册表的时候,会调用“注册表对象”(类似于进程对象EPROCESS的结构体)里记录的一个函数指针(HvpGetCellMapped)。通过修改这个记录(就是HOOK),即可截获所有对注册表的枚举操作。当发现遍历到特定的注册表对象时,进行特定处理即可实现隐藏注册表。处理逻辑比较简单:先调用原来的HvpGetCellMapped,如果发现此函数返回的是要隐藏的注册表对象,就找到这个注册表对象的下一个注册表对象,然后返回下一个注册表对象。由于WINDOWS没有公开注册表内部的结构体信息,而在操作过程中又需要大量使用未公开结构体,所以这份代码就支持到WIN7为止了。WIN8的注册表内部结构体发生了较大的变化,代码就不适用了。程序的效果是隐藏注册表键“\\Registry\\Machine\\SYSTEM\\CurrentControlSet\\Services\\agp440”。最后声明:这种方法是我学驱动时一个朋友教我的(至于是谁原创就无法追究了),但我做了修改,使之支持32位的WIN2000~WIN7。
**** Hidden Message *****

5ak 发表于 2024-1-3 19:04:09

学习了

baggiowangyu 发表于 2024-1-26 23:40:42

2024补充学习

yimingqpa 发表于 2024-3-28 16:53:19

感谢楼主,学习一下。

nj001 发表于 2024-3-29 11:38:00

学习一下

wst5898 发表于 2025-1-26 09:57:54

学习一下

sc12345 发表于 2025-3-2 01:46:08

感谢分享
页: [1]
查看完整版本: 《WIN64驱动教程》补充[21]:一种罕见的注册表隐藏方式(DKOH)