读取SSDT表和原函数地址
生活随笔
收集整理的這篇文章主要介紹了
读取SSDT表和原函数地址
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
讀取當(dāng)前地址代碼(NtOpenProcess):
?LONG *SSDT_Adr,t_addr,adr;
?t_addr=(LONG)KeServiceDescriptorTable->ServiceTableBase;
?SSDT_Adr=(PLONG)(t_addr+0x7a*4);
?adr=*SSDT_Adr;
讀取起源地址(NtOpenProcess):
UNICODE_STRING SysRoutineName;
LONG orgadr;
?RtlInitUnicodeString(&SysRoutineName,L"NtOpenProcess");
?orgadr=(LONG)MmGetSystemRoutineAddress(&SysRoutineName);
?
通過(guò)得到的地址 可以判斷改函數(shù)是否被hook
?
自己讀取的SSDT表:
SSDT 地址 | 起源地址.
NtOpenProcess->805751e0 | 805751e0
總結(jié)
以上是生活随笔為你收集整理的读取SSDT表和原函数地址的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: VC编译的除法的一段汇编代码解释
- 下一篇: 日服巫术online过驱动保护分析(纯工