首页
社区
课程
招聘
未解决 [求助]windbg调试问题
发表于: 2020-3-28 15:10 2434

未解决 [求助]windbg调试问题

2020-3-28 15:10
2434
我用windbg进行双机内核调试,在windbg中直接查看0环的地址无法读取;当我随便切换一个进程后就能读取了。这是为什么呢?
3: kd> u win32k!ReferenceClass
win32k!ReferenceClass:
fffff960`000bfc40 ??              ???
                             ^ Memory access error in 'u win32k!ReferenceClass'

3: kd> .process fffffa801ab8db30
Implicit process is now fffffa80`1ab8db30
WARNING: .cache forcedecodeuser is not enabled

3: kd> u win32k!ReferenceClass
win32k!ReferenceClass:
fffff960`000bfc40 488bc4          mov     rax,rsp
fffff960`000bfc43 48895808        mov     qword ptr [rax+8],rbx
fffff960`000bfc47 48896810        mov     qword ptr [rax+10h],rbp
fffff960`000bfc4b 48897018        mov     qword ptr [rax+18h],rsi

还有一个问题。就是我双机调试的时候,在windbg里面对一个0环的函数下了断点bp win32k!ReferenceClass;
然后到调试机里面调用了CreateWindowA(这个函数进0环后会调用 win32k!ReferenceClass ),但是我的windbg却没有断下来,这是为什么呢?
谢谢大哥。

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

最后于 2020-3-28 15:10 被吴俊编辑 ,原因:
收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 188
活跃值: (691)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
2
查到了。
先通过.process /i /p Addr 、.process /r /p Addr 来切换进程环境上下文,再下3环断点,然后就能跟到0环了。
2020-3-28 20:40
0
雪    币: 1725
活跃值: (2869)
能力值: ( LV13,RANK:327 )
在线值:
发帖
回帖
粉丝
3
1:win32k位于SessionSpace,要切换GUI进程访问。
2:bp断点多数是在System进程中调用KdpWriteBreakPoint完成,设置win32k断点必然会失败,从而进入owed状态(),NT6以后KdSetOwedBreakpoints要等断点地址的页面异常时(几率太小)才会设置成功。所以还是用硬件断点最靠谱:ba e1 win32k!ReferenceClass
2020-3-28 22:54
1
雪    币: 188
活跃值: (691)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
4
深山修行之人 1:win32k位于SessionSpace,要切换GUI进程访问。 2:bp断点多数是在System进程中调用KdpWriteBreakPoint完成,设置win32k断点必然会失败,从而进入ow ...
谢谢,学到了。。。
2020-3-29 22:49
0
游客
登录 | 注册 方可回帖
返回
//