加密狗复制克隆网 电 话:13528540969 Email:4642967@qq.com 网 址:www.crackdongle.com 地 址 :广东省深圳市地王大厦38层8801号
微 信 客 服
加密锁破解|加密狗复制|加密狗克隆|软件破解
网络上有关“打狗”的文章很多,也不乏诸多的“软件模拟狗”。看到一些打狗的注册用户数控制,从2个用户~9999个用户~21亿个用户,心里感到很是不塌实,于是就专门以“注册用户数控制”为题,下载了几个不同的“软件模拟狗”,开始跟踪。
几个下载的“软件模拟狗”,脱壳修正后测试,有的仅简单的打了一个补丁,有的甚至修改了一、二个跳转,就认为是打“狗”了,完全没有按照“狗”的流程运行,又没有恢复“狗”内的数据,所以,就放弃了这类“软件模拟狗”的测试。
其中有一个“软件模拟狗”的“狗”内的数据恢复的不错,与原版比较,除恢复“狗”内的数据外,基本上没有发现修改跳转,就以这个进行测试跟踪。
“软件模拟狗”一般都加上一些猛壳来保护,脱壳过程从略。
OD载入脱壳修正的文件,F9运行。
这个软件,除在关于中能看到一些用户数数据外,在字符串、内存中都无法得到需要的敏感字符,所以,就很难下断。还好通过插件找到ASCII "all",就拿它下断了。
//////////////////////////////////////////////////////////////////////////////////////////////
==检查用户数设置==
00434CA4 |. 50 push eax ; /Arg1 = 0012F780
00434CA5 |. E8 AAE2FFFF call un_SDE3S.00432F54 ; un_SDE3S.00432F54
00434CAA |. 59 pop ecx
00434CAB |. 83C0 04 add eax,4
00434CAE |. 8945 D4 mov dword ptr ss:[ebp-2C],eax
00434CB1 |. 8D45 08 lea eax,dword ptr ss:[ebp+8]
00434CB4 |. 8B4D D4 mov ecx,dword ptr ss:[ebp-2C]
00434CB7 8B55 0C mov edx,dword ptr ss:[ebp+C] ; 用户数[ebp+C]-->edx
========================================
堆栈 ss:[0012F7C8]=00000002 //用户数
edx=03277960 //写到地址
========================================
00434CBA 8951 0C mov dword ptr ds:[ecx+C],edx ; edx用户数-->[ecx+C]
========================================
edx=00000002 //用户数
ds:[03277980]=00000003 //写到地址
========================================
//////////////////////////////////////////////////////////////////////////////////////////////
==关于中检查用户数==
当我们从帮助--->关于中查看时,软件又从这里检查确认用户数。
00434F8F |. 51 push ecx ; /Arg1
00434F90 |. E8 BFDFFFFF call un_SDE3S.00432F54 ; un_SDE3S.00432F54
00434F95 |. 59 pop ecx
00434F96 |. 83C0 04 add eax,4
00434F99 |. 8945 D0 mov dword ptr ss:[ebp-30],eax
00434F9C |. 837D 0C 00 cmp dword ptr ss:[ebp+C],0
00434FA0 |. 74 0B je short un_SDE3S.00434FAD
00434FA2 |. 8B45 D0 mov eax,dword ptr ss:[ebp-30]
00434FA5 |. 8B4D 0C mov ecx,dword ptr ss:[ebp+C]
00434FA8 |. 8B50 0C mov edx,dword ptr ds:[eax+C] ; [ebp+C]=用户数
==========================================
ds:[03277980]=00000002 //用户数
edx=03277960 //写到地址
==========================================
00434FAB |. 8911 mov dword ptr ds:[ecx],edx
==========================================
edx=00000002 //用户数
堆栈 ds:[0012F734]=00000000 //内存地址
==========================================
//////////////////////////////////////////////////////////////////////////////////////////////
根据字符串"all",搜索到这里,在0042689C下断。
0042689C E8 23770500 call SDE3Serv.0047DFC4 ; 这里恢复狗数据。
004268A1 50 push eax
004268A2 8D85 60FFFFFF lea eax,dword ptr ss:[ebp-A0]
004268A8 66:C785 0CFFFFFF>mov word ptr ss:[ebp-F4],194
004268B1 BA 35C74800 mov edx,SDE3Serv.0048C735 ; ASCII "all"
......
00656C39 8A4424 04 mov al,byte ptr ss:[esp+4] ; [esp+4]=用户数
00656C3D E8 0C72F9FF call SDE3Serv.005EDE4E ; F7进入
00656C42 5A pop edx
......
005EDE4E /0F83 2E4A0500 jnb SDE3Serv.00642882
005EDE54 |0F82 0FD20200 jb SDE3Serv.0061B069
005EDE5A |9C pushfd
......
0047D8CD E8 4EE0FFFF call SDE3Serv.0047B920 ; F7进入
0047D8D2 83C4 0C add esp,0C
0047D8D5 EB 01 jmp short SDE3Serv.0047D8D8
0047D8D7 24 59 and al,59
0047D8D9 5A pop edx
0047D8DA 5D pop ebp