能力值:
( LV12,RANK:600 )
|
-
-
2 楼
看这个地址落在哪个DLL内.......遍历这个DLL的导出表.....看哪个函数的地址==你的地址....
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
我的是R0的,函数地址属于SSDT表里的.我不想把代码写死,我想通过这个函数地址来获取他的函数名...
比如很多软件,冰刃啊,狙剑,RKU什么的,他们遍历SDT的时候,显出来的函数名不会是写死的吧??
|
能力值:
( LV12,RANK:600 )
|
-
-
4 楼
SSDT名字..NTDLL.....就OK咯
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
...........80以上的地址..和NTDLL好象没关系吧....
我也不懂了.
就比如 805a44bc这个地址,怎么取他的函数名...
|
能力值:
( LV4,RANK:50 )
|
-
-
6 楼
获取SSDT 函数名 比一般函数名方便多了
只要获取他的服务号就可以 直接去NTDLL里面查了
网上已经有很多例子了哦 自己找找吧
|
能力值:
( LV12,RANK:420 )
|
-
-
7 楼
检查NTDLL导出表
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
哦,非常感谢....
意思就是我把地址给了r3以后,通过这个地址和NTDLL导出表地址对比,或者通过这个函数的服务号取到他的函数名对吧...谢谢了..
哦,只能通过服务号来找出NTDLL导出函数名,不能通过函数地址....
弱弱的问一句,我是菜鸟....
怎么查看NTDLL的导出表......我只会用工具看,自己写不知道怎么看他的函数名..........希望指点下..
MJ帮帮忙...呵呵...
|
能力值:
( LV3,RANK:20 )
|
-
-
9 楼
hModule->NTHeader->DataDirectory->exportedTable
看看pe结构
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
谢谢.......我去看看,感谢楼上..
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
看了某为大大写的SSDTHOOK里的代码,可以通过加载NTDLL,通过PE找出对应的函数名,函数地址,函数服号...
就可以实现了....
现在又碰到个问题,如果我想获取win32k.sys里的ShaDow的导出函数名呢?
还有不太明白,像冰刃这类软件,他们恢复SSDT,ShaDow等,他们获取原函数地址的呢?
我记得如果导出的切公开的函数定义一下,可以直接获取的函数地址,那么没公开的函数呢?怎么获取他们的原函数地址?不会通过特征码定位的吧?那工程也太大了吧?
况且SSDT 加ShaDow2个表的函数+起来大概1000个左右吧,难道定义了1000个函数?分别获取他们的原函数地址?
如果是那样,那工程实在太大了呀,1000来个函数全定义好,当恢复的时候对应的恢复......................
|
能力值:
( LV5,RANK:60 )
|
-
-
12 楼
我原来是利用符号包的,当时写了一个栈回溯,可以通过hook一个函数,进行回溯,并显示函数名,不过代码上有些技术问题,不过大概解决了。你也可以试试
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
谢谢楼上的,我不太明白你的意思,HOOK一个函数是为了什么?能把原理讲一下吗?我听的不太明白...
|
能力值:
( LV5,RANK:60 )
|
-
-
14 楼
比如hook一个xxxx函数为function1,是什么函数调用的function1,这样可以显示出这个函数名,我的demo仅能回溯到ssdt函数
|
能力值:
( LV5,RANK:60 )
|
-
-
15 楼
其实建个索引,搜索导出表也是挺快的
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
不会搜索sys的导出表...HOOK一个函数,可以知道哪个位置调用过来的..但是不知道怎么得到函数名...
|
能力值:
( LV4,RANK:50 )
|
-
-
17 楼
NT 开头的函数隔的不远 基本上是在一块
你看看导出顺序看是从头 还是从尾 循环
取到足够的数量 就不用再继续循环了 非常的快
取SHADOW 的服务名 就不大方便了
最好是把每个系统的都做个资源打包进来 然后在判断是那个系统
|
能力值:
( LV12,RANK:210 )
|
-
-
18 楼
获取函数名太简单了 SSDT直接搜NTDLL导出表 SSDT Shadow利用符号
|
|
|