首页
社区
课程
招聘
[求助]不通过ZwQueryObject获取调试对象个数
发表于: 2011-2-15 20:03 6490

[求助]不通过ZwQueryObject获取调试对象个数

2011-2-15 20:03
6490
一般都是通过ZwQueryObject获取的调试对象个数,来确定是否存在调试器附加到进程,
我遇到一个驱动,他没有通过这个函数,也直接利用这个方法反调试了
我想问一下是怎么做的?直接获取ObpKernelHandleTable么?我用windbg看了一下,有些东西不懂

lkd> dd ObpKernelHandleTable
80569cd8  e1001d68 00000000 00000000 00000000
80569ce8  00000000 00000000 00000000 00000000
80569cf8  00000000 00000000 00000000 00000000
80569d08  00000000 00000000 00000000 00000000
80569d18  00000000 00000000 00000000 00000000
80569d28  00000000 00000000 00000000 00000000
80569d38  00000000 00000000 00000000 00000000
80569d48  00000000 00000000 00000000 00000000
lkd> dd e1001d68
e1001d68  e1004000 00000000 00000004 00000000
e1001d78  00000000 00000000 00000000 e14053b4 这个是list_entry_head?
e1001d88  8056b948 00000000 00000000 00000000
e1001d98  00000700 000000c8 00000800 00000116
e1001da8  00000000 ff0875ff 0c12060a 6353624f
e1001db8  80569764 80569764 0000002f 3b3fed90
e1001dc8  80040001 00000058 00000068 00000000
e1001dd8  00000014 00440002 00000002 00140000
lkd> dd e14053b4
e14053b4  e13f8c84 e1001d84 00000000 00000000 这个是flink?blink?那接下来的数据是什么结构呢?还是_HANDLE_TABLE结构?但是结构明显对不上
e14053c4  00000000 00000058 00000000 00000800
e14053d4  00000013 00000000 00000000 0c06060a
e14053e4  656c5252 e10024e8 00000000 00000021
e14053f4  00000000 00000000 89bd68e0 00000201
e1405404  e13f397c e1002504 74616d72 0c060606
e1405414  656c5252 00100000 00000000 7fffffff
e1405424  00000000 00000000 89bce130 00000001
lkd> dd e13f8c84
e13f8c84  e1b316a4 e14053b4 00000000 00000000
e13f8c94  00000000 00000678 00000000 00000800
e13f8ca4  000001de 00000000 00000073 0001020a
e13f8cb4  7153624f 0c020201 6d4e624f 00490050
e13f8cc4  00450050 0c090202 70696d57 00000000
e13f8cd4  00530055 005c0042 004f0052 0054004f
e13f8ce4  0048005f 00420055 0034005c 00330026
e13f8cf4  00310062 00630033 00610063 00260039
lkd> dd e1b316a4
e1b316a4  e204ebdc e13f8c84 00000000 00000000
e1b316b4  00000000 00000550 00000000 00000800
e1b316c4  00000150 00000000 00000000 1c0c060a
e1b316d4  88ba5da0 0001000d 00000000 00000000
e1b316e4  00000000 e16ce698 00000000 00007f05
e1b316f4  0003c001 00000103 00080008 020500a8
e1b31704  020500a4 00000000 00000000 00000000
e1b31714  00000000 00000000 030500a6 00000020
lkd> dd e1001d84
e1001d84  e14053b4 8056b948 00000000 00000000
e1001d94  00000000 00000214 000000c8 00000800
e1001da4  00000117 00000000 ff0875ff 0c12060a
e1001db4  6353624f 80569764 80569764 00000031
e1001dc4  3b3fed90 80040001 00000058 00000068
e1001dd4  00000000 00000014 00440002 00000002
e1001de4  00140000 001f0fff 00000101 05000000
e1001df4  00000012 00180000 00120410 00000201
lkd> dt _HANDLE_TABLE
nt!_HANDLE_TABLE
   +0x000 TableCode        : Uint4B
   +0x004 QuotaProcess     : Ptr32 _EPROCESS
   +0x008 UniqueProcessId  : Ptr32 Void
   +0x00c HandleTableLock  : [4] _EX_PUSH_LOCK
   +0x01c HandleTableList  : _LIST_ENTRY
   +0x024 HandleContentionEvent : _EX_PUSH_LOCK
   +0x028 DebugInfo        : Ptr32 _HANDLE_TRACE_DEBUG_INFO
   +0x02c ExtraInfoPages   : Int4B
   +0x030 FirstFree        : Uint4B
   +0x034 LastFree         : Uint4B
   +0x038 NextHandleNeedingPool : Uint4B
   +0x03c HandleCount      : Int4B
   +0x040 Flags            : Uint4B
   +0x040 StrictFIFO       : Pos 0, 1 Bit

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 102
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
主要是通过ObpKernelHandleTable遍历这张HANDLE_TABLE?如果能有程序给出就太谢谢了额
2011-2-15 20:55
0
雪    币: 410
活跃值: (214)
能力值: ( LV13,RANK:220 )
在线值:
发帖
回帖
粉丝
3
lkd> dt _object_directory
nt!_OBJECT_DIRECTORY
   +0x000 HashBuckets      : [37] Ptr32 _OBJECT_DIRECTORY_ENTRY
   +0x094 Lock             : _EX_PUSH_LOCK
   +0x098 DeviceMap        : Ptr32 _DEVICE_MAP
   +0x09c SessionId        : Uint4B
   +0x0a0 Reserved         : Uint2B
   +0x0a2 SymbolicLinkUsageCount : Uint2B
lkd> dt _OBJECT_DIRECTORY_ENTRY
nt!_OBJECT_DIRECTORY_ENTRY
   +0x000 ChainLink        : Ptr32 _OBJECT_DIRECTORY_ENTRY
   +0x004 Object           : Ptr32 Void
2011-2-15 22:09
0
雪    币: 102
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
[QUOTE=zyhfut;925611]lkd> dt _object_directory
nt!_OBJECT_DIRECTORY
   +0x000 HashBuckets      : [37] Ptr32 _OBJECT_DIRECTORY_ENTRY
   +0x094 Lock             : _EX_PUS...[/QUOTE]

你的意思是?
2011-2-16 11:21
0
游客
登录 | 注册 方可回帖
返回
//