首页
社区
课程
招聘
这个是一个函数吗?
发表于: 2010-8-28 15:40 6430

这个是一个函数吗?

2010-8-28 15:40
6430
DbgUiRemoteBreakin  这个是个函数吗?知道的请详细说下,

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

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 1149
活跃值: (1033)
能力值: ( LV13,RANK:260 )
在线值:
发帖
回帖
粉丝
2
是一个函数  它是ntdll .dll中的一个函数 DbgUiRemoteBreakin,它内部会调用DbgBreakPoint执行断点指令,而且是在一个结构化异常保护块(SEH)中做的调用。具体情况 我就给你一个链接吧!425K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3u0G2L8$3E0Q4x3X3f1#2x3h3y4@1L8#2)9J5k6h3y4G2L8g2)9J5c8X3q4J5N6q4)9J5c8U0t1H3x3o6R3I4x3W2)9J5c8U0p5H3x3o6R3K6y4q4)9J5k6h3S2@1L8g2)9J5y4X3&6T1M7%4m8Q4x3@1u0Q4x3U0k6F1j5Y4y4H3i4K6y4n7i4@1f1@1i4@1u0p5i4@1p5H3i4@1f1#2i4@1u0m8i4K6V1@1i4@1f1^5i4@1q4r3i4@1p5#2i4@1f1^5i4K6R3K6i4@1u0p5i4@1f1%4i4K6W2o6i4K6S2n7i4@1f1$3i4K6R3%4i4K6R3J5i4K6N6q4i4K6N6q4i4K6N6q4i4@1f1#2i4K6S2m8i4@1p5H3i4@1f1$3i4@1t1J5i4@1t1&6i4@1g2r3i4@1u0o6i4K6R3I4i4@1g2r3i4@1u0o6i4K6R3I4i4@1g2r3i4@1u0o6i4K6R3I4
2010-8-28 17:09
0
雪    币: 98
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
如果用调试器调试一个进程的话,调试器首先会在这个进程中创建一个远程中断线程(Remote Breakin Thread),而DbgUiRemoteBreakin就是这个线程的启动函数,其结构如下:
DWORD WINAPI DbgUiRemoteBreakin( LPVOID lpParameter)
{
        __try
       {
                  if(NtCurrentPeb()->BeingDebugged)
                         DbgBreakPoint();
        }
         __except(EXCEPTION_EXECUTE_HANDLER)
        {
                  return 1;
        }
        RtlExitUserThread(0);   
}
其中NtCurrentPeb()->BeingDebugged是读取进程PEB中的BeingDebugged标志,判断自己是否处于调试状态,如果处于调试状态,则调用DbgBreakPoint()触发断点
另外,如果调试器无法处理这个断点的话,则交给异常处理器处理它,这就是__except的作用
2010-8-28 17:34
0
雪    币: 2
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
有点复杂,只能学习!!!
2010-8-28 20:15
0
雪    币: 357
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
学习了............
2010-10-25 15:41
0
雪    币: 21
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
路过,学习一下!!
2010-10-25 17:59
0
雪    币: 48
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
学习了,还要好好看一下
2013-1-6 10:40
0
雪    币: 652
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
++顶贴++
2013-1-6 14:39
0
游客
登录 | 注册 方可回帖
返回