[CrackMe][ZProtect][易语言][编码]一个没学过破解的人的CrackMe
用易语言写了一个程序,用了几层编码,然后用ZProtect加密了下, 在我一个新人看来好像无解的样子,即使爆破也难。解锁状态(两行密码会显示出来,但窗口没有活动会隐藏):没有被加密的原程序:
被ZProtect加密的程序:
百度网盘链接: https://pan.baidu.com/s/1pLlo5tT 我个人只分析出了这么些。。。。求大牛指点
以输入上部分假码12,下部分假码34为例。
上部分循环取MD5,即1的MD5+2的MD5,结果为c4ca4238a0b923820dcc509a6f75849b,c81e728d9d4c2f636f067f89cc14862c
下部分循环取MD5,即3的MD5+4的MD5,结果为eccbc87e4b5ce2fe28308fd9f2a7baf3,a87ff679a2f3e71d9181a67b7542122c
二者相加再取MD5,结果为ea6a99b872ab87dcd69a738b6b660d86
MD5到宽字节MultiByteToWideChar,再次取MD5=59cd7a1301e48c6488343f76669fc86b(正确结果其实是982e29fc12e36aa0ca4acfe3dc925a3f)
再次加密,如果是数字则十六进制减去0x10,如果是字母则加0x10
即由35 39 63 64 37 61 31 33 30 31 65 34 38 63 36 34 38 38 33 34 33 66 37 36 36 36 39 66 63 38 36 62
得到25 29 73 74 27 71 21 23 20 21 75 24 28 73 26 24 28 28 23 24 23 76 27 26 26 26 29 76 73 28 26 72
最终输出为2529737427712123202175242873262428282324237627262626297673282672
MD5=ea6a99b872ab87dcd69a738b6b660d86再取中间九位得到6a99b872a到大写6A99B872A
与结果合成为25297374277121232021752428732624282823242376272626262976732826726A99B872A
然而正确结果29282275222976732122752326717120737124717376752374732922257123767F84DF942
这个有可能追出原码? 00402831|.83F8 00 cmp eax,0x0
00402834|.0F85 98020000 jnz CrackMe_.00402AD2
---------------
00402D05|.B8 00000000 mov eax,0x0
00402D0A|.0f95c0 setne al
这个,我怎么感觉很好接啊,(亲测)
OD搜索就行了 G孟纸 发表于 2017-3-11 17:07
这个,我怎么感觉很好接啊,(亲测)
OD搜索就行了
试下看看。
反正我源码里基本上没有有用的明文。
而且还加了个带连锁的时钟… 本帖最后由 onmiuncai 于 2017-3-11 18:20 编辑
Zh.Long 发表于 2017-3-11 17:29
试下看看。
反正我源码里基本上没有有用的明文。
而且还加了个带连锁的时钟…
加壳的试了下 LZ应该只是单纯加了下ZP壳而已吧? 两个都是弹出初始化运行库失败。。。这不会是我电脑问题吧 onmiuncai 发表于 2017-3-11 17:32
加壳的试了下 LZ应该只是单纯加了下ZP壳而已吧?
Release只是破解, 成功会显示"恭喜你,你破解了一个程序"
出现Release表示经过了代码,而"恭喜你,你破解了一个程序"一串文本是解密来的。 0040111C > 33C0 xor eax,eax
0040111E C3 retn
时钟判定结果就有一个简单的call 苏紫方璇 发表于 2017-3-11 19:32
0040111C > 33C0 xor eax,eax
0040111E C3 retn
:lol 比较文本秒杀果然快准狠~ 两个都是弹出初始化运行库失败。。。
页:
[1]
2