旧闻:windows关于产品类型注册表写入的防止机制

随便看看,这部分微软抹去了符号。

 

产品类型的注册表在SystemControl->ProductSuite->ProductOptions


1.系统初始化时已经读取了这个值,详见ROS。

CmControlVector是一系列要在系统初始化前期从hive中读取来的值,其中就有

 

{

       L"ProductOptions",

       L"ProductSuite",

       CmSuiteBuffer,

       &CmSuiteBufferLength,

       &CmSuiteBufferType

},

这个函数调用是

CmGetSystemControlValues(LoaderBlock->RegistryBase,CmControlVector);

 

2. ExInitSystemPhase0的时候会对CmSuiteBuffer进行判断



3.Nt启动时的ExInitSystemPhase2,就一个功能,就是调用ExpWatchProductTypeInitialization()

 

这个函数中初始化了一些需要保护的注册表信息

 

其中产品类型信息保存在了ProductSuiteKey和ExpProductTypeValueInfo中。

 

初始化了SharedUserData->SuiteMask



注册一个注册表修改通知


4.这个通知消息中

 

会尝试回写注册表,打不开注册表的话先报一个错误





尝试回会写注册表


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值