能力值:
( LV2,RANK:10 )
|
-
-
2 楼
这个代码是从ExeCryptor 2.26里面挖出来的
非常奇怪的是。 把
PUSH EBX
LEA EBX,Return_SEH
MOV DWORD PTR [ECX],EBX
POP EBX
几条指令注释掉, 就不会蓝屏了。
真实机器没测试过
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
BUG具体原因不是很清楚,
但是如果断点在
_KiServiceExit2+009C的地方
POP GS ;这时候堆栈中的值是 FCAE00A7, ESP的值为 F56D1D94
POP ES
POP ES
如果把 FCAE00A7这个值改成 0,就不会蓝屏了。
FCAE00A7这个地址在
Softice的 NTice.sys的驱动的代码中
.text:0005F0A2 E8 D1 00 00 00 call sub_5F178
.text:0005F0A7 66 3B 05 19 ED 0E+ cmp ax, ds:word_EED19
.text:0005F0AE 75 14 jnz short loc_5F0C4
.text:0005F0B0 E8 A2 5E FD FF call sub_34F57
.text:0005F0B5 E8 43 02 00 00 call sub_5F2FD
.text:0005F0BA E8 3F 5E FD FF call sub_34EFE
.text:0005F0BF E9 AD 00 00 00 jmp loc_5F171
.text:0005F0C4 ; ------------------------------------
在Softice中断点
bpmb F56D1D94 W
断到后来 Vmware机器发生致命错误,当掉了。。
所以无法知道到底是哪块代码将 F56D1D94 指向的内容改成一个超大的值。 一时找不到原因。。。
水平太菜, 有时间再研究一下,呵呵。
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
可以通过给系统打补丁的方法来解决这个问题。
80465921 LEA, ESP, [ESP+30]
80465925 POP GS
修改成
80465921 LEA, ESP, [ESP+34]
80465925 NOP
即不进行 POP GS的操作。
|
|
|