• 大小:1.02G
  • 关注: 次
  • 更新时间:1970-01-01

...

电脑版下载
    当前位置:
  1. 魔豆IT网
  2. 电脑软件
  3. 永久激活
  4. 虚拟机系统
  5. x64dbg使用

软件介绍

系统运行环境/版本:最新版

win7x64虚拟机(过NP TP VMP SE GK G盾无限替换vmx) 最新版软件截图

win7x64虚拟机(过NP TP VMP SE GK G盾无限替换vmx) 最新版介绍

win7x64虚拟机(过NP TP VMP SE GK G盾无限替换vmx)是一款VMP过虚拟机检测系统,早期时候做了一个过G盾的,重新做个新的吧.花了一晚上时间做出,虚拟机过NP TP VMP SE GK G盾。压缩的时候忘记随机mac了,大家换个吧,这个大体不影响。

系统说明

可以玩DNF CF一些游戏

提取码:ah3f

关于Win7 x64下过TP保护

调试对象:DXF调试工具:OD、Windbg调试环境:Win7 SP1 X64

内核层部分:x64下因为有PatchGuard的限制,很多保护都被巨硬给抹掉了。比如SSDT Hook Inline Hook 所以TP无法继续使用这些保护手段了。除非腾Xun冒着被巨硬吊销数字签名的风险来阻止我们调试。我曾经在看雪论坛里看过有个人写的文章,它亲自测试在x64环境下清零调试端口,结果发生了蓝屏,所以在x64下TP是不会清零的。这样就省了不少的事情。但是自从那次TP大更新后新加入了ValidAccessMask清零。那么在ring0中 TP除了ValidAccessMask清零,还有反双机调试,这里不是我们讨论的范畴。我们只是讨论如何才能正常调试游戏,于是在内核层我们只要解决ValidAccessMask清零就可以了。调试权限(ValidAccessMask)的清零这个标志位其实是DebugObject (调试对象)的权限,如果为0将导致无法创建调试对象(缺少权限)。常见的情况就是OD无法附加任何进程,这个保护刚刚出的时候很多菜鸟都没搞懂,包括我自己(知道被我师傅说我等级太低时的心情是什么?。这个DebugObject在很多调试函数中都有用到 ,比如NtCreateDebugObject就有需要访问调试对象。所以要想办法恢复这个标志位。我们有三种选择:1、自己恢复原来的值 2、找到TP清零的位置Nop掉 3、移位(重建DebugObject)这里我选择了第一种。具体步骤如下:①定位DebugObject:在NtCreateDebugObject里就有DebugObject的地址。1: kd> uf NtCreateDebugObjectnt!NtCreateDebugObject:fffff800`042697a0 48895c2408 mov qword ptr [rsp+8],rbxfffff800`042697a5 4889742410 mov qword ptr [rsp+10h],rsifffff800`042697aa 57 push rdifffff800`042697ab 4883ec70 sub rsp,70hfffff800`042697af 418bf9 mov edi,r9dfffff800`042697b2 8bf2 mov esi,edxfffff800`042697b4 488bd9 mov rbx,rcxfffff800`042697b7 65488b042588010000 mov rax,qword ptr gs:[188h]fffff800`042697c0 448a90f6010000mov r10b,byte ptr [rax+1F6h]fffff800`042697c7 4584d2 test r10b,r10bfffff800`042697ca 7414 je nt!NtCreateDebugObject+0x40 (fffff800`042697e0)nt!NtCreateDebugObject+0x2c:fffff800`042697cc 488b052d38e5ffmov rax,qword ptr [nt!MmUserProbeAddress (fffff800`040bd000)]fffff800`042697d3 483bc8 cmp rcx,raxfffff800`042697d6 480f43c8 cmovaercx,raxfffff800`042697da 488b01 mov rax,qword ptr [rcx]fffff800`042697dd 488901 mov qword ptr [rcx],raxnt!NtCreateDebugObject+0x40:fffff800`042697e0 48832300 and qword ptr [rbx],0fffff800`042697e4 41f7c1fefffffftest r9d,0FFFFFFFEhfffff800`042697eb 740a je nt!NtCreateDebugObject+0x57 (fffff800`042697f7)nt!NtCreateDebugObject+0x4d:fffff800`042697ed b80d0000c0 mov eax,0C000000Dhfffff800`042697f2 e9e4000000 jmp nt!NtCreateDebugObject+0x13b (fffff800`042698db)nt!NtCreateDebugObject+0x57:fffff800`042697f7 488d442450 lea rax,[rsp+50h]fffff800`042697fc 4889442440 mov qword ptr [rsp+40h],raxfffff800`04269801 8364243800 and dword ptr [rsp+38h],0fffff800`04269806 8364243000 and dword ptr [rsp+30h],0fffff800`0426980b c744242868000000 mov dword ptr [rsp+28h],68hfffff800`04269813 488364242000 and qword ptr [rsp+20h],0fffff800`04269819 458aca mov r9b,r10bfffff800`0426981c 488b158dd3daffmov rdx,qword ptr [nt!DbgkDebugObjectType (fffff800`04016bb0)]fffff800`04269823 418aca mov cl,r10bfffff800`04269826 e84572f1ff call nt!ObCreateObject (fffff800`04180a70)fffff800`0426982b 4c8b4c2450 mov r9,qword ptr [rsp+50h]fffff800`04269830 4c894c2460 mov qword ptr [rsp+60h],r9fffff800`04269835 85c0 test eax,eaxfffff800`04269837 0f889e000000 js nt!NtCreateDebugObject+0x13b (fffff800`042698db)这个红字就是了继续定位ValidAccessMask的地址。1: kd> dq fffff800`04016bb0fffff800`04016bb0fffffa80`00c33200 00000000`00000000fffff800`04016bc0fffff8a0`0009a010 0000002a`00000012fffff800`04016bd000000024`000000a1 fffff880`0119d9a0fffff800`04016be000000002`00000001 fffff880`095deaccfffff800`04016bf0fffff800`03f873f0 00000000`00000007fffff800`04016c0000000003`00000000 fffff800`03e10448fffff800`04016c10fffffa80`01bae060 00000000`00000000fffff800`04016c2000000000`00000000 00000003`000001011: kd> dt _OBJECT_TYPE fffffa80`00c33200nt!_OBJECT_TYPE +0x000 TypeList : _LIST_ENTRY [ 0xfffffa80`00c33200 - 0xfffffa80`00c33200 ] +0x010 Name : _UNICODE_STRING "DebugObject" +0x020 DefaultObject : (null) +0x028 Index : 0xb '' +0x02c TotalNumberOfObjects : 0 +0x030 TotalNumberOfHandles : 0 +0x034 HighWaterNumberOfObjects : 0 +0x038 HighWaterNumberOfHandles : 0+0x040 TypeInfo : _OBJECT_TYPE_INITIALIZER +0x0b0 TypeLock : _EX_PUSH_LOCK +0x0b8 Key : 0x75626544 +0x0c0 CallbackList : _LIST_ENTRY [ 0xfffffa80`00c332c0 - 0xfffffa80`00c332c0 ]1: kd> dt _OBJECT_TYPE_INITIALIZERfffffa80`00c33200+40nt!_OBJECT_TYPE_INITIALIZER +0x000 Length : 0x70 +0x002 ObjectTypeFlags: 0x8 '' +0x002 CaseInsensitive: 0y0 +0x002 UnnamedObjectsOnly : 0y0 +0x002 UseDefaultObject : 0y0 +0x002 SecurityRequired : 0y1 +0x002 MaintainHandleCount : 0y0 +0x002 MaintainTypeList : 0y0 +0x002 SupportsObjectCallbacks : 0y0 +0x002 CacheAligned : 0y0 +0x004 ObjectTypeCode : 0 +0x008 InvalidAttributes : 0 +0x00c GenericMapping : _GENERIC_MAPPING +0x01c ValidAccessMask: 0x1f000f +0x020 RetainAccess : 0 +0x024 PoolType : 0 ( NonPagedPool ) +0x028 DefaultPagedPoolCharge : 0 +0x02c DefaultNonPagedPoolCharge : 0x58 +0x030 DumpProcedure : (null) +0x038 OpenProcedure : (null) +0x040 CloseProcedure : 0xfffff800`042b18e0 voidnt!DbgkpCloseObject+0 +0x048 DeleteProcedure: 0xfffff800`04105200 voidnt!xHalEndOfBoot+0 +0x050 ParseProcedure : (null) +0x058 SecurityProcedure : 0xfffff800`04170530 longnt!SeDefaultObjectMethod+0 +0x060 QueryNameProcedure : (null) +0x068 OkayToCloseProcedure : (null)于是我们就定位到了VaildAccessMask的地址了。②恢复工作它的默认值是0x1F000F当我们自己手动修改成0时。使用OD附加任意进程。

版权申明:《》由来源于“”,由网友“”推荐!如果涉及版权请联系我们删除!

本页地址:

同类软件推荐

  • 暂无推荐