Re: 请问如何验证KeServiceDescriptorTableShadow数组表中Win32k.sys模块存在

WinDbg

请问如何验证KeServiceDescriptorTableShadow数组表中Win32k.sys模块存在


merry 2009-04-07, 09:20 上午
OS:Winxp SP2
Mem:2G

lkd> dd KeServiceDescriptorTableShadow
8087b340  8082a1fc 00000000 0000011c 8082a670
8087b350  bf999280 00000000 0000029b bf999f90
8087b360  00000000 00000000 00000000 00000000
8087b370  00000000 00000000 00000000 00000000

lkd> dd KeServiceDescriptorTable
8087b380  8082a1fc 00000000 0000011c 8082a670
8087b390  00000000 00000000 00000000 00000000
8087b3a0  00000000 00000000 00000000 00000000
8087b3b0  00000000 00000000 00000000 00000000

 可以看到KeServiceDescriptorTableShadow的第二行还包含了一些信息,但是我无法确认就是Win32k.sys模块。用
 du bf999280
 并没有出现类似Win32k的提示信息。
 而用Process Explorer 查看Win32k.sys的基址竟然为FFFFFFFF BF800000,不是32位的地址。

Q:请问如何验证KeServiceDescriptorTableShadow数组表中Win32k.sys模块存在

Re: 请问如何验证KeServiceDescriptorTableShadow数组表中Win32k.sys模块存在


王宇 2009-04-07, 09:32 上午

1. 看源码

2. 跟踪初始化流程

3. 用 Windbg 等看看符号信息

0: kd> dd KeServiceDescriptorTableShadow
8055d6c0  80505460 00000000 0000011c 805058d4
8055d6d0  bf999e80 00000000 0000029b bf99ab90
8055d6e0  00000000 00000000 00000000 00000000
8055d6f0  00000000 00000000 00000000 00000000
8055d700  80505460 00000000 0000011c 805058d4
8055d710  00000000 00000000 00000000 00000000
8055d720  00000000 00000000 00000000 00000000
8055d730  00000000 00000000 00000000 00000000

0: kd> ln bf999e80
(bf999e80)   win32k!W32pServiceTable   |  (bf99ab8c)   win32k!W32pServiceLimit
Exact matches:
    win32k!W32pServiceTable = <no type information>

0: kd> dd bf999e80
bf999e80  bf936217 bf947dc8 bf88c983 bf93f989
bf999e90  bf9493df bf9364ab bf936550 bf83b471
bf999ea0  bf948d06 bf934cb0 bf9492fe bf90f536
bf999eb0  bf90213b bf809f82 bf9491d0 bf94a9cc
bf999ec0  bf900a38 bf893a75 bf9492ae bf94aaff
bf999ed0  bf820ed7 bf8dcae3 bf87a214 bf8c28e0
bf999ee0  bf910771 bf80e268 bf8dc78b bf94a7c4
bf999ef0  bf94b6cf bf813a14 bf80cf33 bf8d1783

0: kd> ln bf936217
(bf936217)   win32k!NtGdiAbortDoc   |  (bf93622f)   win32k!NtGdiGetLinkedUFIs
Exact matches:
    win32k!NtGdiAbortDoc = <no type information>

Re: 请问如何验证KeServiceDescriptorTableShadow数组表中Win32k.sys模块存在


merry 2009-04-07, 11:01 上午
应该是我的symbol有问题,在我PC上使用ln bf999e80命令,没有任何显示结果。
谢谢!

Powered by Community Server Powered by CnForums.Net