【破解过程】:
大家好,今天给大家做一个简单的爆破演示~这个稍微和前面2个有点不一样~呵呵~还是需要我们分析代码,把代码看清楚了就没什么难的了!查壳:Borland Delphi 4.0 - 5.0
试运行,输入wynney 444520,提示“错误的注册码”
用W32asm无极版载入,查找“错误的注册码”,双击,来到代码处!
:00404386 85F6 test esi, esi //比较真假注册码
:00404388 7419 je 004043A3 //等于则跳,不等于就不跳咯
:0040438A 6A00 push 00000000* Possible StringData Ref from Code Obj ->"错误"
|
:0040438C 680C444000 push 0040440C* Possible StringData Ref from Code Obj ->"错误的注册码" //***
|
:00404391 6814444000 push 00404414大家往上看看,在
00404388 7419 je 004043A3
有个跳转是可以(注意这个用词)跳到004043A3的我们去004043A3看看吧~* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00404388(C)
|
:004043A3 6A00 push 00000000* Possible StringData Ref from Code Obj ->"恭喜"
|
:004043A5 6824444000 push 00404424* Possible StringData Ref from Code Obj ->"正确的注册码"呵呵~是不是已经很明了了啊,如果跳到这里来了,我们看到的不就是提示正确了吗?那好~我们把00404388的je(74)改成jmp(无条件跳转,就是无论如何都要跳,EB)[这里也可以改成(jne)75]都是一样的结果!是运行下保存的程序,输入wynney,444520
呵呵~提示“正确的注册码”好了,今天的动画就到现在啦~~大家好好分析下,找找思路~!~还是那句话我们学破解的,是为了思路,不是为了去破某个软件。。如果你的目的是后者,那么你是会停止不前的!^_^,拜拜咯~
具体操作还要慢慢练习哦
解 VB 时间限制 一个VB写的Crackme 启动软件在5秒之后会自动关闭Q443754857
结束进程就行!
Shell ("cmd /c taskkill /f /im 进程名.exe"), vbHide
c++怎么破解crackme程序?
先回答标题:C++ 只是开发语言,不能破解任何程序。
C++开发软件的话就另当别论了。
破解crackme一般是使用各种调试工具(如:od)找到算法代码进行逆算。
再用C++等发工具,把逆算算法打包成注册机
弄错了,是破解c++的程序,请问OllyDebug是要会汇编语言么?
C++的程序反编译难度较大,目前能完整反编译的貌似还没有出现。不过IDA倒是有个功能可以把一些简单的函数反编译。
如果你选择od的话只有去玩儿汇编了。
总得来说crackme本来就是为玩儿汇编的人诞生的,不玩儿汇编就没意思了
从零学习破解软件的问题
学习破解是有一个过程的,不是说一下就能学会的。
真正有本事的黑客首先必须是一个非常好的程序员,然后才能谈破解。
网站的破解,主要涉及SQL注入,跨站,暴库等等。
像你说的那些软件,破解需要的最多的就是汇编,和一些算法知识。这些没有一个基础也是学不会的。
因为第一步都得脱壳,之后就面对汇编了,可能再往下,就一下说不了了。
我之前有请教过一些 智慧谷软件 的老师,他们还挺热心,技术也不错。你可以跟他们了解一下。你可能通过www.zhihuigu.com去联系到他们。
ASPack 2.x 脱壳
【脱壳作者】 manbug
【使用工具】 OllyDBG ,LordPE,ImportREC,PEiD
【脱壳平台】 WinXP SP2
【软件名称】 Bigman's Crackme6(看雪2007精华里面的)
【软件大小】 7K
【加壳方式】 ASPack 2.x (without poly) -> Alexey Solodovnikov [Overlay]
虽然现在的脱壳机很多,我是初学者,为了煅炼一下自己的手动能力,所以将自己脱壳的过程写下来与大家分享,不对之处请指正.
用OD载入程序:
00405001 > E8 03000000 call crackme6.00405009 ; 加载后停在这里,按F7
00405007 /EB 04 jmp short crackme6.0040500D
00405009 |5D pop ebp
0040500A |45 inc ebp
0040500B |55 push ebp
0040500C |C3 retn
0040500D \90 nop
0040500E E8 01000000 call crackme6.00405014 ; F7跟进
..........
00405014 5D pop ebp ; 以下按F8单步走,如有向上跳转用F4打断
00405015 BB EDFFFFFF mov ebx, -13
0040501A 03DD add ebx, ebp
0040501C 81EB 00500000 sub ebx, 5000
00405022 83BD 22040000 0>cmp dword ptr [ebp+422], 0
00405029 899D 22040000 mov dword ptr [ebp+422], ebx
0040502F 0F85 65030000 jnz crackme6.0040539A
00405035 8D85 2E040000 lea eax, dword ptr [ebp+42E]
0040503B 50 push eax
0040503C FF95 4D0F0000 call near dword ptr [ebp+F4D]
00405042 8985 26040000 mov dword ptr [ebp+426], eax
00405048 8BF8 mov edi, eax
0040504A 8D5D 5E lea ebx, dword ptr [ebp+5E]
..........
0040513A 3C E9 cmp al, 0E9
0040513C 74 04 je short crackme6.00405142
0040513E 43 inc ebx
0040513F 49 dec ecx
00405140 ^ EB EB jmp short crackme6.0040512D
00405142 8B06 mov eax, dword ptr [esi] ; F4 打断向上跳转
00405144 EB 00 jmp short crackme6.00405146
00405146 803E 00 cmp byte ptr [esi], 0
00405149 ^ 75 F3 jnz short crackme6.0040513E
0040514B 24 00 and al, 0
0040514D C1C0 18 rol eax, 18
00405150 2BC3 sub eax, ebx
00405152 8906 mov dword ptr [esi], eax
00405154 83C3 05 add ebx, 5
00405157 83C6 04 add esi, 4
0040515A 83E9 05 sub ecx, 5
0040515D ^ EB CE jmp short crackme6.0040512D
0040515F 5B pop ebx ; F4 打断向上跳转
00405160 5E pop esi
00405161 59 pop ecx
.............
0040519D 83C6 08 add esi, 8
004051A0 833E 00 cmp dword ptr [esi], 0
004051A3 ^ 0F85 1EFFFFFF jnz crackme6.004050C7
004051A9 68 00800000 push 8000 ; F4 打断向上跳转
004051AE 6A 00 push 0
.............
00405376 8907 mov dword ptr [edi], eax
00405378 8385 49050000 0>add dword ptr [ebp+549], 4
0040537F ^ E9 32FFFFFF jmp crackme6.004052B6
00405384 8906 mov dword ptr [esi], eax ; F4 打断向上跳转
00405386 8946 0C mov dword ptr [esi+C], eax
00405389 8946 10 mov dword ptr [esi+10], eax
0040538C 83C6 14 add esi, 14
0040538F 8B95 22040000 mov edx, dword ptr [ebp+422]
00405395 ^ E9 EBFEFFFF jmp crackme6.00405285
0040539A B8 CB110000 mov eax, 11CB ; F4 打断向上跳转
0040539F 50 push eax
004053A0 0385 22040000 add eax, dword ptr [ebp+422]
004053A6 59 pop ecx
004053A7 0BC9 or ecx, ecx
004053A9 8985 A8030000 mov dword ptr [ebp+3A8], eax
004053AF 61 popad ; 关键句了,嘿嘿
004053B0 75 08 jnz short crackme6.004053BA
004053B2 B8 01000000 mov eax, 1
004053B7 C2 0C00 retn 0C
004053BA 68 CB114000 push crackme6.004011CB ; 入口点就是004011CB了啊
004053BF C3 retn ; F8单步返回就是入口点了
.........
004011CB . 64:A1 0100000>mov eax, dword ptr fs:[1] ; SFX 代码真正入口点,停在这里脱壳
004011D1 /. 55 push ebp
004011D2 |. 89E5 mov ebp, esp
004011D4 |. 6A FF push -1
004011D6 |. 68 1C204000 push crackme6.0040201C
004011DB |. 68 9A104000 push crackme6.0040109A
004011E0 |. 50 push eax
用lordpe进步脱壳啦,这个大家都会吧,呵呵
脱壳之后用Import REC修正,在OEP中填11CB,点AutoSearch,点Get Imports,发现只有6个导入函数,肯定不对啦,那就要手动找一下输入表了.看自动找到输入表的RVA为03138,加上基址400000就是403138,在OD 的数据窗口中转到403138的地址处,向上翻,果然还有数据,起地址为4030A4,止地址为4032BE,大小为21A,于是将Import REC中的 IAT RVA填入30A4,Size填21A,再点Get Imports就可以找到很多导入函数了,不过还有一些无效的,不要紧,点击show Invalid 将无效的函数CUT掉,然后FIX DUMP你的脱壳文件就行了,一切搞定,脱壳运行正常
当然找这个壳的入口点还有一种简单的方法,就是在OD中忽略所有异常,在SFX选项中选中字节方式跟踪真正入口点处,然后载入程序,过一会就可以停在真正的入口点了.
一个vb写的crackme,找到事件按钮又该怎么破解呢
在按钮代码上下断点,然后F8,F9跟踪过程,直到找到爆破点或是注册代码。这个东西简单描述可以如前所讲,但具体到每个软件,还不太一样。
采纳本答案为最佳,我可以帮你试试。然后告诉你过程。更多
这么多个按钮事件是不是只留下一个然后剩下的都禁止呢?然后再F7,F8运行么?
一般只留主要断点,其它的暂时禁止。
怎么知道哪个是主要断点呢?求解啊~~~
学习软件破解
我不知道为什么动不动就要找师傅
其实我觉得没必要
无论是黑客技术还是破解技术的教材和论坛都是很多的
有兴趣的话有很多人可以共同交流
《加密与解密》非常值得一看
其实你现在已经有了C语言和汇编语言的底子
接触起来会比较省事(学的不精没关系,可以一边联系一边提高)
查壳用FileInfo和PEiD,两者各有高低,我建议都装上。
脱壳有专门的脱壳工具,手动脱壳是高阶技巧,等你会了破解之后再慢慢练习
反汇编工具OllyDBG是比较有名的,静态分析IDA很专业,反编译成十六进制数据用WinHex,查看PE格式用PE-Editer
有了这些工具,参考这书籍或者网上的教程,你就可以开始自学之旅了~~~
网上的CrackMe、TraceMe这种供练习的小程序多的是,找来练手吧~
有不懂的可以上专业论坛交流:
看雪、一蓑烟雨、DebugMan都很好。还有一个天草论坛,比较冷清,但那里提供不少CM练习程序,我都是去那个论坛下练习程序拿来练习的~~
祝你成功
想学软件破解,要从哪里入手呢?
可以去看雪、吾爱破解等专业论坛多学习,最好买一本《加密与解密》(看雪学院编的实体书),看雪学院有许多教程及crackme下载及别人的分析。
最好学学编程,最少做到了解,想深入研究破解的话最好学学汇编。
转载请注明出处51数据库 » crackme3软件下载 crc32crackme简单爆破
楓27110021
