64位内核开发第四讲,查看SSDT表与showSSDT表

SSDt表与ShadowSSDT表的查看.

一丶SSDT表

1.什么是SSDT表

SSDT表示系统服务表,我们ring3调用的很多函数都会调用这个SSDT表

2.查看步骤

1.使用 x命令

前提需要加载好符号.

x nt!kes*des*table*

1197364-20190518230248580-1086410200.png

KeServiceDescriptorTableShadowShadowSSDT表
KeServiceDescriptorTableSSDT表.

2.查看地址的值

使用dd命令可以查看这个地址里面值.如下.
1197364-20190518230518082-1390993502.png

首先可以看选中的位置.这个是SSDT表的起始地址. 后面*0x11C
是这个表的个数

我们可以使用dds命令来查看这个表.
dds命令可以看第三讲.关于windbg调试命令

dds Address L11C 

这个命令的意思就是显示地址里面值指向的地址. 以4个字节显示.
显示如下:
1197364-20190518230854704-1188373701.png
如果你有符号.则可以看到这些地址里面后面指向的函数名

可以使用 uf 来反汇编这个函数的所有汇编
1197364-20190518231027720-1415821107.png

二丶ShadowSSDT表

1.什么是ShadowSSDT表

ring3的所有GUI会调用的到这个表格中.

2.如何查看.

System系统进程是没有加载ShadowSSDT表的.所以我们必须切换到调用GUI的进程空间中查看.

1.在系统中运行 mspaint 画图工具
2.在windbg中中断.
3.输入命令.查看系统所有简要信息

!process 0 0 

4.找到mspaint的EPROCESS结构.切换到这个进程上下文

.process /p EPROCESSADDRESS

5.使用x命令查找ShadowsSSDT

x nt!*kes*des*table*

如下:
1197364-20190518231654537-1375973621.png

6.查看shodowSSDT

1197364-20190518231733037-2025261202.png

shodowSSDT 跟SSDT挨着.上面查看SSDT的时候 shodowSSDT没有加载
所以没有.所以现在看一看下.如上图. 有起始地址.跟大小.

不管是SSDT还是shodowSSDT表.都是有这个表的大小.
在32位下.函数地址是4个字节. 所以用表的大小 / 4 = 函数个数.
1197364-20190518231953974-1428906195.png

这个表中的函数都是做绘图用的.

三丶工具介绍

Process Monitor
工具是进程监控工具.可以监视所有进程活动.
现在的火绒剑也是可以.
如下图;
微软下载地址:
https://docs.microsoft.com/zh-cn/sysinternals/downloads/procmon
工具界面

1197364-20190518232648139-481888352.png

可以设置过滤器.进行过滤.比如我只想看进程创建.如何操作.

Process Explorer

1197364-20190518232835912-1748693346.png

微软下载地址:
https://docs.microsoft.com/zh-cn/sysinternals/downloads/process-explorer

这个工具则可以实时查看进程.并且可以挂起进程.等操作进程.

转载于:https://www.cnblogs.com/iBinary/p/10990673.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值