分享Win7过DSE和PatchGuard经验
分享Win7过DSE和PatchGuard经验
patch winload.exe
OslInitializeCodeIntegrity函数入口直接 mov al,1 ret
内部会调用BlImgQueryCodeIntegrityBootOptions
此函数会判断 NTOSKRNL.EXE 的数字签名有效性(签名非法的话就拒绝
加载 NTOSKRNL.EXE)。
接下来修改 ntoskrnl.exe。第一个地方是 SepInitializeCodeIntegrity:
PAGE:00000001403EAA6C cmp cs:InitIsWinPEMode, bl
PAGE:00000001403EAA72 jnz loc_1403EAB0C //改为nop,PE下会关闭KPP
第二个地方 KiInitializePatchGuard(位于KiFilterFiberContext+FF处)
INIT:0000000140561362 cmp cs:InitSafeBootMode, edi
INIT:0000000140561368 jz short loc_140561371 //nop,判断是否安全模式
经过这三处修改,DSE 和 PatchGuard 就废了
页:
[1]