SSDt表與ShadowSSDT表的查看.
一丶SSDT表
1.什么是SSDT表
SSDT表示系統服務表,我們ring3調用的很多函數都會調用這個SSDT表
2.查看步驟
1.使用 x命令
前提需要加載好符號.
x nt!kes*des*table*
KeServiceDescriptorTableShadow是ShadowSSDT表
KeServiceDescriptorTable是SSDT表.
2.查看地址的值
使用dd命令可以查看這個地址里面值.如下.
首先可以看選中的位置.這個是SSDT表的起始地址. 后面*0x11C
是這個表的個數
我們可以使用dds命令來查看這個表.
dds命令可以看第三講.關於windbg調試命令
dds Address L11C
這個命令的意思就是顯示地址里面值指向的地址. 以4個字節顯示.
顯示如下:
如果你有符號.則可以看到這些地址里面后面指向的函數名
可以使用 uf 來反匯編這個函數的所有匯編
二丶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*
如下:
6.查看shodowSSDT
shodowSSDT 跟SSDT挨着.上面查看SSDT的時候 shodowSSDT沒有加載
所以沒有.所以現在看一看下.如上圖. 有起始地址.跟大小.
不管是SSDT還是shodowSSDT表.都是有這個表的大小.
在32位下.函數地址是4個字節. 所以用表的大小 / 4 = 函數個數.
這個表中的函數都是做繪圖用的.
三丶工具介紹
Process Monitor
工具是進程監控工具.可以監視所有進程活動.
現在的火絨劍也是可以.
如下圖;
微軟下載地址:
https://docs.microsoft.com/zh-cn/sysinternals/downloads/procmon
工具界面
可以設置過濾器.進行過濾.比如我只想看進程創建.如何操作.
Process Explorer
微軟下載地址:
https://docs.microsoft.com/zh-cn/sysinternals/downloads/process-explorer
這個工具則可以實時查看進程.並且可以掛起進程.等操作進程.