首页
社区
课程
招聘
[求助]InlineHook IDT BreakPoint 不能正常调试非保护进程
发表于: 2015-8-18 22:17 3749

[求助]InlineHook IDT BreakPoint 不能正常调试非保护进程

2015-8-18 22:17
3749
代码如下
Inlinehook后没有蓝屏
但是用OD调试非记事本进程会说什么异常或者蓝屏
应该怎么写才对 谢谢了

#pragma INITCODE
__declspec(naked) NTSTATUS __stdcall MyBreakpoint()
{
        __asm{  
                                pushfd//保存位里的数据
                                pushad//保存寄存器里的数据

             }
        //进行判断 看看是不是要保护的进程
        PEPROCESS EP;
        EP=PsGetCurrentProcess();
        if(strcmp((PTSTR)((ULONG)EP+0x174),"notepad.exe")==0)
        {
                __asm iretd
        }
        __asm{  
                                popad//弹出寄存器里的数据
                                popfd//弹出位里的数据

                 }
        __asm{  
                                //补上Breakpoinrt前两行代码
                                push 0
                                mov word ptr [esp+2],0
                                jmp jmpaddr_int3proc_9//跳回原函数地址+9的地方继续执行

                 }

}

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 9941
活跃值: (2143)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
iretd 就直接返回了,都没平衡
2015-8-18 23:15
0
雪    币: 13
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
直接返回iretd就是想如果调试的是记事本就蓝屏啊
现在问题是其他的进程也不能正常调试
2015-8-19 19:23
0
游客
登录 | 注册 方可回帖
返回
//