-
-
[讨论]NtReadVirtualMemory和NtWriteVirtualMemory HOOK之后出现的怪异情况
-
发表于:
2013-9-13 10:34
6882
-
[讨论]NtReadVirtualMemory和NtWriteVirtualMemory HOOK之后出现的怪异情况
某P hook的数据:
Read
805aa85a b824ad41b0 mov eax,offset TesSafe+0xfd24 (b041ad24)
805aa85f ffe0 jmp eax
Write
805aa964 b802ae41b0 mov eax,offset TesSafe+0xfe02 (b041ae02)
805aa969 ffe0 jmp eax
这两个读写内存都被HOOK了前面的7个字节
我用SSDT HOOK
跳转到自己函数实现了前面几个字节
#pragma PAGECODE
__declspec (naked) void Nake_ReadNtVirtualMemory()
{
_asm
{
push 0x1C
push 0x804da4e0
jmp uJmpNtReadOldAddr//这里跳转到readAddr+7
}
}
#pragma PAGECODE
__declspec (naked) void Nake_WriteNtVirtualMemory()
{
_asm
{
push 0x1C
push 0x804da4f8
jmp uJmpNtWriteOldAddr//这里跳转到WriteAddr+7
}
}
当实现了HOOK之后,但奇怪的出现了虚拟机中所有程序都启动失败的情况;
打开任何程序都会提示参数不正确的情况
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课