疑问解答

CopyOne的软件逆向之路:破解之初

 二维码

CopyOne的软件逆向之路:破解之初


本人当时初学破解是什么都不懂,也没有人教,完完全全的零基础。

就是下载一些破解教程回家自己看,跟着教程里的实例进行学习。

看到教程里改的汇编指令,为什么老将 CMP [XXXXXX], 0 改为 1,一直搞不明白,后来自己OD实战了才明白,原来那个 [XXXXXX] 是常量,跟0做比较,默认的值正好等于0,所以软件显示未注册版本,于是抱着试试的态度将其改为1后,居然显示注册成功,当时那个高兴呀!

后来终于明白了这个道理,这个原理。

那些 OD 代码,你第一次看不懂,可以多看几次,F8多跑几遍。一次看不懂,二次看不懂,多跑几次你自然而然也就能看懂了。

破解,无非就是一个注册与未注册的过程。JZ 改 JNZ、或 JNZ 改 JZ,即:74 改 75、75 改 74 这么一个过程。

那当然,软柿子都是这么容易被破解掉的。

如果软件里的验证多了,这些简单的修改肯定过不了,那就是往后更深一步的学习了。

当你破解过的软件多了,经验也就能逐渐丰富起来了。

往后就可以往中级方向发展,比如:学习算法分析。

就像我现在,打算学习算法,但苦于无从下手。主要是汇编代码还看不懂。

一个值为什么会被清零,定位到关键 CALL 后,就要 F7 跟进这个 CALL 看看。

如下:

CALL XXXXXXXX // 关键 CALL, F7 进入

TEST AL, AL // 比较 AL 的值,注意:这个 AL 值等于 0,破解就是要让它的值等于 1

JNZ(JZ) XXXXXXXX

关键 CALL 后,发现不远处有这么一句:

PUSH EBP

XXXXXXXX

XXXXXXXX

XOR AL, AL

XXXXXXXX

RETN

其中 XOR 是清空指令,也就是 将 AL 的值置0,我们破解的目的就是要将 AL 的值等于 1,而不是让它清空,所以要改成 MOV AL, 1 保存生成 exe 后,再次运行,软件就显示己注册版本。

总结:其实软件的破解方法都是大同小异,因为原理都是相通的。要学会变通,举一反三。


技术 QQ:528621124
手机号码:132-6677-8242
联系邮箱:528621124@qq.com

CopyOne工作室专业提供软件开发-加密狗(锁)复制-加密狗破解-软件破解脱壳-licese激活码破解-注册码破解-时间到期解锁-LOGO界面修改-反源码-逆向工程等服务!
————————————————————————————————————————————————————————————————————————————————————————————