首页
社区
课程
招聘
[求助]获取非导出DbgkpCloseObject 地址
发表于: 2011-1-21 18:01 5320

[求助]获取非导出DbgkpCloseObject 地址

2011-1-21 18:01
5320
今天忙活了3 4 个小时,也没找到获取DbgkpCloseObject地址的方法,没法了,上来找各位老大帮忙下,wrk里搜索了下 只有这个单独的函数,没有别的函数调用。这个函数非导出的,又没有函数调用,难道只有硬编码一种方法吗,也不知道对不对。。。。。

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (9)
雪    币: 724
活跃值: (81)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
暴力搜索:
//xp
INIT:005E36C3 89 75 B4                                mov     [ebp+var_4C], esi
INIT:005E36C6 66 C7 45 9C 4C 00                       mov     word ptr [ebp+var_64], 4Ch
INIT:005E36CC C6 45 B8 01                             mov     [ebp+var_48], 1
INIT:005E36D0 89 5D A0                                mov     [ebp+var_60], ebx
INIT:005E36D3 89 5D BC                                mov     [ebp+var_44], ebx
INIT:005E36D6 C7 45 D4 EF 85 4A 00                    mov     [ebp+var_2C], offset xHalLocateHiberRanges(x)
INIT:005E36DD C7 45 D0 71 AD 58 00                    mov     [ebp+var_30], offset DbgkpCloseObject(x,x,x,x,x)
INIT:005E36E4 8D 75 E8                                lea     esi, [ebp+var_18]
INIT:005E36E7 8D 7D A4                                lea     edi, [ebp+var_5C]
INIT:005E36EA A5                                      movsd
INIT:005E36EB A5                                      movsd
INIT:005E36EC 68 3C 95 48 00                          push    offset _DbgkDebugObjectType ; int

//win 7
INIT:00792903 6A 50                                   push    50h
INIT:00792905 58                                      pop     eax
INIT:00792906 89 75 B4                                mov     [ebp+var_4C], esi
INIT:00792909 66 89 45 98                             mov     word ptr [ebp+var_68], ax
INIT:0079290D 89 5D A0                                mov     [ebp+var_60], ebx
INIT:00792910 89 5D BC                                mov     [ebp+var_44], ebx
INIT:00792913 C7 45 D4 61 10 66 00                    mov     [ebp+var_2C], offset _xHalLocateHiberRanges@4 ; xHalLocateHiberRanges(x)
INIT:0079291A C7 45 D0 23 30 6A 00                    mov     [ebp+var_30], offset _DbgkpCloseObject@16 ; DbgkpCloseObject(x,x,x,x)
INIT:00792921 8D 75 E8                                lea     esi, [ebp+var_18]
INIT:00792924 8D 7D A4                                lea     edi, [ebp+var_5C]
INIT:00792927 A5                                      movsd
INIT:00792928 A5                                      movsd
INIT:00792929 68 EC E4 52 00                          push    offset _DbgkDebugObjectType ; int
2011-1-21 20:02
0
雪    币: 773
活跃值: (442)
能力值: ( LV9,RANK:200 )
在线值:
发帖
回帖
粉丝
3
谢谢,暴力搜索不爽。。。。这样我早就弄了
2011-1-21 20:50
0
雪    币: 724
活跃值: (81)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
分析函数的调用过程,最终一定可以找到这个函数,这样显示技术上更好一些,只是比较复杂。如果针对固定的系统版本,可以下载符号表去查,论坛中有人用过这种方式。我觉得暴力搜也可以用,只要不冲突就行,不是吗?而且我试过,可以用一个特征码在XP和WIN7中搜到它。
2011-1-21 23:52
0
雪    币: 211
活跃值: (73)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
从debugobject type中获取
2011-1-22 12:09
0
雪    币: 773
活跃值: (442)
能力值: ( LV9,RANK:200 )
在线值:
发帖
回帖
粉丝
6
百度了下,不是很明白。。。bluesheet兄 能否详细点
2011-1-22 21:24
0
雪    币: 724
活跃值: (81)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
实时取的好方法,猜一下,5楼大概的方法是:ZwQueryObject(hDebugObj,PUBLIC_OBJECT_TYPE_INFORMATION,...);
2011-1-22 22:09
0
雪    币: 724
活跃值: (81)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
8
猜错了,上面的方法不行,因为获得的信息中不包括CloseProcedure及其它Procedure,大概只能从OBJECT_TYPE中直接取了,只是OBJECT_TYPE结构不太稳定。
2011-1-23 10:09
0
雪    币: 7309
活跃值: (3778)
能力值: (RANK:1130 )
在线值:
发帖
回帖
粉丝
9
下载PDB,直接获取
2011-1-25 16:21
0
雪    币: 773
活跃值: (442)
能力值: ( LV9,RANK:200 )
在线值:
发帖
回帖
粉丝
10
谢谢各位老大,直接暴力搜索算了,发现还有好多函数都不能有效的获取函数地址。
2011-1-25 22:09
0
游客
登录 | 注册 方可回帖
返回
//