能力值:
( LV2,RANK:10 )
|
-
-
2 楼
看来只有自己丰衣足食了,自己动手,大牛都掖着呢。
网站全程播放分析过程,只求技术讨论别无所求。http://www.diaosiyu.cn/
全程直播
http://pan.baidu.com/share/link?shareid=3004105586&uk=858825181
空间下载
TP新技术研究视频(1)
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
什么网站啊?把人家当SB?diaosiyu=钓死鱼
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
屌丝雨?
不是吊死鬼就行
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
OK,开始直播
全程直播
http://pan.baidu.com/share/link?shareid=3004105586&uk=858825181
空间下载
TP新技术研究视频(1)
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
鱼哥牛逼!新TP又被你踩在脚下!
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
强悍!!!!!!!!!!
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
这下可以秒过新版TP了
|
能力值:
(RANK:50 )
|
-
-
9 楼
清除权限是个好思路,不过会不会影响其它程序的稳定性?
看来还是自己实现整个debug模块才是王道
|
能力值:
( LV5,RANK:60 )
|
-
-
10 楼
为什么我没发现TP更新了?体验服?反正国服无压力
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
DbgkDebugObjectType内核结构被修改导致没权限建立调试会话
解决办法很多 比如
NtCreateDebugObject
NtDebugActiveProcess
创建句柄和建立会话会用到调试对象查看权限 hook掉
或者自建调试对象
嫌麻烦的话双机patch
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
lkd> dd DbgkDebugObjectType
8055a540 8a413308 00000000 00000000 00000000
8055a550 00000000 00000000 00000000 00000000
8055a560 0001173d 00005613 0000bd26 000035d5
8055a570 000001fc 000111e3 00000000 00000000
8055a580 00000000 00000000 000059e8 00000000
8055a590 00000000 00000000 00000233 00000000
8055a5a0 000063bd 00000000 000182ac 00002025
8055a5b0 00000000 000a83bc 00000000 00000000
lkd> dt _DEBUG_OBJECT _TYPE
Symbol _DEBUG_OBJECT not found.
lkd> dt _OBJECT_TYPE 8a413308
nt!_OBJECT_TYPE
+0x000 Mutex : _ERESOURCE
+0x038 TypeList : _LIST_ENTRY [ 0x8a413340 - 0x8a413340 ]
+0x040 Name : _UNICODE_STRING "DebugObject"
+0x048 DefaultObject : (null)
+0x04c Index : 8
+0x050 TotalNumberOfObjects : 0
+0x054 TotalNumberOfHandles : 0
+0x058 HighWaterNumberOfObjects : 1
+0x05c HighWaterNumberOfHandles : 1
+0x060 TypeInfo : _OBJECT_TYPE_INITIALIZER
+0x0ac Key : 0x75626544
+0x0b0 ObjectLocks : [4] _ERESOURCE
lkd> dt _OBJECT_TYPE_INITIALIZER 8a413308 +60
nt!_OBJECT_TYPE_INITIALIZER
+0x000 Length : 0x4c
+0x002 UseDefaultObject : 0 ''
+0x003 CaseInsensitive : 0 ''
+0x004 InvalidAttributes : 0
+0x008 GenericMapping : _GENERIC_MAPPING
+0x018 ValidAccessMask : 0x1f000f //
+0x01c SecurityRequired : 0x1 ''
+0x01d MaintainHandleCount : 0 ''
+0x01e MaintainTypeList : 0 ''
+0x020 PoolType : 0 ( NonPagedPool )
+0x024 DefaultPagedPoolCharge : 0
+0x028 DefaultNonPagedPoolCharge : 0x30
+0x02c DumpProcedure : (null)
+0x030 OpenProcedure : (null)
+0x034 CloseProcedure : 0x80644740 void nt!DbgkpCloseObject+0
+0x038 DeleteProcedure : 0x80574578 void nt!FstubTranslatorNull+0
+0x03c ParseProcedure : (null)
+0x040 SecurityProcedure : 0x805f9a98 long nt!SeDefaultObjectMethod+0
+0x044 QueryNameProcedure : (null)
+0x048 OkayToCloseProcedure : (null)
应该是这样 如果有错请勿丢砖头哈 我没去看过TP
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
楼上正解
|
能力值:
(RANK:50 )
|
-
-
14 楼
莫非TP也玩objhook了?看来终于有进步了……
|
能力值:
( LV5,RANK:60 )
|
-
-
15 楼
TP没啥进步,也不会玩obj hook 就是一个结构项清零
唯一进步的地方是学会探测自身模块是否被下断点
|
能力值:
( LV5,RANK:60 )
|
-
-
16 楼
我研究了下,发现TP的这个权限清0也不是很难。
_OBJECT_TYPE_INITIALIZER
分析后发现TP把 +0x008 GenericMapping 和+0x018 ValidAccessMask进行了清0
TP开了线程清,我发现有3处(貌似是4处 ),Hook技术不行,我直接开IoTimer进行还原调试权限操作,结果成功了 。
这是我分析的三处清0
TesSafe+0x12C2F9 58 POP EAX
TesSafe+0x12C2FA 8706 XCHG [ESI],EAX //ESI地址 清0 1
TesSafe+0x122FED 58 POP EAX
TesSafe+0x122FEE 8701 XCHG [ECX],EAX //ECX地址 清0 2
TesSafe+0x1352E2 58 POP EAX
TesSafe+0x1352E3 8701 XCHG [ECX],EAX //ECX地址 清0 3
顺便贴张图
因为TP检测到了我是在虚拟机里,所以报非法
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
是探测软断还是硬断
|
能力值:
(RANK:50 )
|
-
-
18 楼
膜拜逆向大神,不懂逆向只能按原理分析慢慢找原因。。
|
能力值:
( LV5,RANK:60 )
|
-
-
19 楼
膜拜大牛!
|
能力值:
( LV2,RANK:10 )
|
-
-
20 楼
楼主牛人呀!看你网站,新TP你尽然已经给过了!
|
能力值:
( LV2,RANK:10 )
|
-
-
21 楼
永远被楼上各位甩在i后面
|
|
|