执行首先从KiSystemStartup开始 。Vista下的NTOSKRNL.EXE内的一些重要部分与Windows 2003 SP1版相比,并没有太多的改变,因此我们的重点为分析Vista下改变的特殊部分 。在Vista下,NTOSKRNL.EXE添加了一个新函数SepInitializeCodeIntegrity,但该函数仅仅是把CL.DLL内的CiInitialize(关于CiInitialize会在后面的章节VI进行讨论)进行了另外的包装而已 。如果代码完整性检查开启,SepInitializeCodeIntegrity会调用CiInitialize,除此之外,它没有做任何其它的事情 。
【深入底层 评估Vista系统内核模式安全性】WINLOAD.EXE还负责检查boot drivers签名的完整性 。与WINLOAD.EXE相比,NTOSKRNL.EXE负责查证system drivers(在boot driver加载后)和运行时加载的drivers(即:当一个设备被插进系统) 。当完整性检查开启,会使用SeValidateImageHeader(在CI.DLL内CiValidateImageHeader函数的包装)和SeValidateImageData(在CI.DLL内CiValidateImageData函数的包装)对加载的映象(image)进行代码完整性检查 。只要一个执行映射进kernel memeory都会调用SeValidateImageHeader(通过MmCreateSection) 。当一个内核模块加载时,都会调用SeValidateImageData对kernel drivers的代码段进行校验 。运行时检查(例如:不断的检查kernel drivers的代码段是否被修改)由PatchGuard和CI.DLL进行处理 。
推荐阅读
- 请问拍拍贷贷款评估要多久时间
- Vista下的Windows Defender深入解析
- 深入Windows Vista系统还原高级应用
- 陷入绝境的陷字的意思 陷入绝境的陷字什么意思
- 深入认识Windows Vista的启动选项
- 能否胜任Vista:新版硬件评估工具官方下载
- 专利评估收费标准是什么
- 品头论足
- 微软发布Vista与Office 2007混合评估VHD
- Windows Vista 硬件评估2.0 Beta发布