阅读:2467回复:4
请问怎样查找SSDT中的索引ID1000以上的函数的地址(NtUserValidateHandleSecure)
索引id没有错,我跟过的,是mov eax, 1248 callxxxxxx --> mov edx,esp sysenter
dd 8080d8b0+1248*4应该是没有错的,但是之后dd 21ae830f却不对了(内容空) 过程如下:
所以我疑惑了,感觉是不是不是1248*4不应该是乘以四?我感觉这也太大了。。。 翻一下资料Windows XP Build 2600 System Services 中索引编号是这样排列的: 0000~00FF 0100~011B 1000~1299 索引号并不是连续的,所以我感觉直接用1248*4十分不妥。 接着我直接数了NtUserValidateHandleSecure的顺位(第几个) 然后用dd 8080d8b0+顺位数*4,感觉也不对。 那就最后请问各位,如何找到索引编号为1248的函数NtUserValidateHandleSecure的地址? |
|
|
沙发#
发布于:2008-02-23 01:38
顶起,同问!~~
|
|
板凳#
发布于:2008-02-23 17:25
>1000的是shadow表的序号,在要在ShadowSSDT中找,在shadow表中要-1000,然后*4
|
|
|
地板#
发布于:2008-02-23 17:33
lkd> dd KeServiceDescriptorTable-0x40
80553340 805021fc 00000000 0000011c 80502670 80553350 bf999280 00000000 0000029b bf999f90 80553360 00000000 00000000 00000000 00000000 80553370 00000000 00000000 00000000 00000000 80553380 805021fc 00000000 0000011c 80502670 80553390 00000000 00000000 00000000 00000000 805533a0 00000000 00000000 00000000 00000000 805533b0 00000000 00000000 00000000 00000000 lkd> dd bf999280+248*4 bf999ba0 f747bc20 f747bc2a f747bc34 f747bc3e bf999bb0 f747bc48 f747bc52 f747bc5c f747bc66 bf999bc0 f747bc70 f747bc7a f747bc84 f747bc8e bf999bd0 f747bc98 f747bca2 f747bcac f747bcb6 bf999be0 f747bcc0 f747bcca f747bcd4 f747bcde bf999bf0 f747bce8 f747bcf2 f747bcfc f747bd06 bf999c00 f747bd10 f747bd1a f747bd24 f747bd2e bf999c10 f747bd38 f747bd42 f747bd4c f747bd56 lkd> u f747bc20 f747bc20 b848120000 mov eax,1248h f747bc25 e926b3feff jmp f7466f50 f747bc2a b849120000 mov eax,1249h f747bc2f e91cb3feff jmp f7466f50 f747bc34 b84a120000 mov eax,124Ah f747bc39 e912b3feff jmp f7466f50 f747bc3e b84b120000 mov eax,124Bh f747bc43 e908b3feff jmp f7466f50 |
|
|
地下室#
发布于:2008-02-24 00:46
2000 2195下0x231
XP 2600下 0x248 2003 3790 SP0/SP1下 0x244 |
|