本帖最后由 cqr2287 于 2017-6-12 20:03 编辑
这个软件还是ajj大牛的。小白我望而生畏。
有壳,用堆栈法脱壳即可,一个简单的upx。
经过两天的努力完成了我的第二个CKme----"CKme之层层设防"。
怎么样名字不错吧。 8)
这可是我一边看着Delphi的E文HELP一边写的,(还没来的及去买本书。)太累了!
由于第一个CKme被jojo兄6分钟搞定,所以在我的这个"层层设防"里加大了点难度。
争取让jojo兄在6分钟后还是一脸茫然。(哈哈。。想到这里我就想大笑。。)
说实话,我不太相信有人能在6分钟内成功的破解掉它。不信你就试试。
说说程序吧:
开始你也许会觉得中间的图片很好看,但我保证你会讨厌它的。
注册成功后程序的外观会作一点小的变化,注意不到可不要怪我。 8)
就说这么多吧,各位大侠抄家伙上吧。但我希望最好只用SOFTICE或TRW,
如果实在不行了再用"砍"的办法。上面的6分钟一说可不承认用"砍"来解决问题。
最后祝各位大侠好运!!!
好吧。
爆破是个很简单的事情。字符串查找。
[Asm] 纯文本查看 复制代码 00447465 BA 8C744400 mov edx,CKme002d.0044748C ; 厉害厉害真厉害!佩服佩服真佩服!!
0044746A E8 EDC4FBFF call CKme002d.0040395C
0044746F BA B8744400 mov edx,CKme002d.004474B8 ; 注册了
找到如上字符串。向上跟,看看有没有跳转。
[Asm] 纯文本查看 复制代码 004473F1 /0F84 88000000 je CKme002d.0044747F
004473F7 |81BB 08030000 0>cmp dword ptr ds:[ebx+0x308],0x230D
00447401 |74 7C je short CKme002d.0044747F
00447403 |81BB 10030000 9>cmp dword ptr ds:[ebx+0x310],0xF94
0044740D |75 70 jnz short CKme002d.0044747F
0044740F |8B83 18030000 mov eax,dword ptr ds:[ebx+0x318]
00447415 |3B83 14030000 cmp eax,dword ptr ds:[ebx+0x314]
0044741B |75 62 jnz short CKme002d.0044747F
0044741D |81BB 1C030000 E>cmp dword ptr ds:[ebx+0x31C],0x3E7
00447427 |74 56 je short CKme002d.0044747F
00447429 |33D2 xor edx,edx
0044742B |8B83 D8020000 mov eax,dword ptr ds:[ebx+0x2D8]
四个跳转都可以调走。全都nop。
哈哈。下面开始追码
追码才能真正看出层层设防是什么意思。
对于ajj的cm,经过经验,我觉得用按钮事件比较好。
上dede。
dede只能分析无壳程序。提前跟新手们说一声。
找到过程,之看到一个按钮。
哈哈,反汇编追踪。
446FA4。
锻炼记忆力的时刻到了,打开od。
扯淡一句:今天上午背英语课文我只用了3分钟。
继续,追踪地址。
[Asm] 纯文本查看 复制代码 00446FA4 55 push ebp
00446FA5 8BEC mov ebp,esp
00446FA7 8B90 08030000 mov edx,dword ptr ds:[eax+0x308]
00446FAD 81FA 0D230000 cmp edx,0x230D
00446FB3 74 20 je short CKme002d.00446FD5
00446FB5 80F9 01 cmp cl,0x1
00446FB8 75 09 jnz short CKme002d.00446FC3
00446FBA 8380 08030000 0>add dword ptr ds:[eax+0x308],0x3
00446FC1 EB 12 jmp short CKme002d.00446FD5
00446FC3 81FA 94020000 cmp edx,0x294
00446FC9 7D 0A jge short CKme002d.00446FD5
00446FCB C780 08030000 0>mov dword ptr ds:[eax+0x308],0x230D
00446FD5 5D pop ebp ; 0068EF00
00446FD6 C2 0C00 retn 0xC
00446FD9 8D40 00 lea eax,dword ptr ds:[eax]
00446FDC 81B8 08030000 9>cmp dword ptr ds:[eax+0x308],0x29D
00446FE6 75 0D jnz short CKme002d.00446FF5
00446FE8 B2 01 mov dl,0x1
00446FEA 8B80 F0020000 mov eax,dword ptr ds:[eax+0x2F0]
00446FF0 8B08 mov ecx,dword ptr ds:[eax]
00446FF2 FF51 5C call dword ptr ds:[ecx+0x5C]
00446FF5 C3 retn
我擦,什么个玩意,成功提示都没有
下段,运行,跟踪。
断下后f8跟踪。
法克,成功没见着,直接到失败了
这就说明,按确定按钮注册一定不成功。(fuck)
cm一般不会有可疑举动。第一反应注册表。
没有可疑的。
对了,刚才dede的时候是不是看到了时钟?莫非……
莫非程序用时钟检测鼠标位置?因为我刚才鼠标图标变了。
好,从settimer进行跟踪。
[Asm] 纯文本查看 复制代码 [ebx+0x310]==0xF94
我们需要讲鼠标移动到[ebx+0x310]==0xF94 的位置。
这个位置在哪?动态跟踪后找指针追踪即可获得坐标
然后用ty(这里我的方法不好,这是编程里的。)就能获得具体位置
感慨
ajj大牛太牛了,小白我太烂了
对于这种cm,dede非常合适
|