请求大家帮忙破解一个在看雪论坛下载的CRACKME
大家好!别笑我哦,我是菜鸟。在看雪上发现一个至今没有人回贴已破解的CRACKME,可能是高手不屑,菜鸟又不会。
这个CRACKME有点意思,用VB编的,注册失败提示的是中文对话框,但在OD中找不到提示注册失败的中文。作者说没有加密,我百思不得其解,用VB函数下断,分别用了vbaStrCmp、vbvbaStrComp rtcmsgbox下断,都可以在输入注册名和密码后,还未出现提示注册失败的窗口时暂停,说明断点应该没问题。但面对许多的JN JNE JZ JNZ,不知是哪个。请高手指导,谢谢!!!
顺便问一下:
1、VB编的程序,除了可以用VB的专用函数下断外,还可以用API函数吗?比如GETWINDOWTEXTA。
2、CTRL+N,中的切换断点与在每个参考上设置断点有什么区别,如果在每个参考上设置断点,有时提示没有没有参考命令,是不是说明程序没有用到该函数。
3、是在程序模块查找函数,还是在MSVBVM60DLL或USER32中查找函数,用前者吧,很多函数又找不到,用后者吧函数又太多。 下来,看看.了. 原帖由 fjnhwwx 于 2006-5-13 17:37 发表
大家好!别笑我哦,我是菜鸟。
在看雪上发现一个至今没有人回贴已破解的CRACKME,可能是高手不屑,菜鸟又不会。
这个CRACKME有点意思,用VB编的,注册失败提示的是中文对话框,但在OD中找不到提示注册失败的中文 ...
这么牛?大家来试试啦。。。
猫也断不下,好强的VB Crackme.
[ 本帖最后由 野猫III 于 2006-5-13 23:28 编辑 ] 原帖由 野猫III 于 2006-5-13 18:07 发表
这么牛?大家来试试啦。。。
猫也断不下,好像的VB Crackme.
:P猫哥..强 callbyname
[ 本帖最后由 herotear 于 2006-5-14 20:55 编辑 ] 只是暴力搞了一下
算法没细看 好象比较复杂 VB就够累了 还来MD5 等等之类的算法 晕。。。```
根据机器码和一个浮点数 经过1系列的算法转换为32个字符的字符串 与字母Z连接成
Z********************************
然后用CallByName
注册码不正确 就不会调用到正确的过程
这个方法不错 不用字符串直接比较的方式 值得借鉴。。。 原帖由 herotear 于 2006-5-14 21:00 发表
只是暴力搞了一下
算法没细看 好象比较复杂 VB就够累了 还来MD5 等等之类的算法 晕。。。```
根据机器码和一个浮点数 经过1系列的算法转换为32个字符的字符串 与字母Z连接成
Z*************************** ...
高手,PFPF
对这个程序而言是不是要会算法才能暴破 00405270 .8B4D C8 mov ecx,dword ptr ss:
00405273 .51 push ecx
00405274 .FF15 30104000 call dword ptr ds:[<&MSVBVM60.__vbaStrCat>] ;MSVBVM60.__vbaStrCat
0040527A .8BD0 mov edx,eax
0040527C .8D4D C4 lea ecx,dword ptr ss:
0040527F .FFD7 call edi
00405281 .50 push eax
00405282 .56 push esi
00405283 .8D55 9C lea edx,dword ptr ss:
00405286 .52 push edx
00405287 .FF15 58104000 call dword ptr ds:[<&MSVBVM60.__vbaObjSetAddr>;MSVBVM60.__vbaObjSetAddref
0040528D .50 push eax
0040528E .8D45 88 lea eax,dword ptr ss:
00405291 .50 push eax
00405292 FF15 EC104000 call dword ptr ds:[<&MSVBVM60.#715>] ;MSVBVM60.rtcCallByName
............................
00405274下断点 输入用户名和注册码后点确定 会断下来
修改ECX中值所指向的内存中的数据(Unicode字符串)为6C51F09C1DD1CC44164A3CD541500655
F9 看会出现什么。。。。。。。。 SUNSON兄弟的东西,教程早出啦~ 不错不错不错
页:
[1]
2