灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2402回复:0

逆向工程: 易语言程序防破解的常用方法

楼主#
更多 发布于:2013-07-21 12:50
用易语言写过好几个软件了,有些软件也被破解过,想想也是正常的,前几年我也破解别人的软件来着,呵呵!   也正是因为有过破解软件的经验,所以在防破解这一块的学习上,就觉得很简单了,下面我把我的一些常用经验说一下,有兴趣的朋友可以试一下,呵呵,先说明啊,下面说的只是我的个人经验,大家想比较系统的学习的话,最好是找一些相对专业的教程来看看。

1、花指令的插入,这当然是有必要的,有人说加了花指令没有什么用,现在的反编译软件基本上都有去除花指令的功能,但是难度它能去我就不加了,给破解者增加一点麻烦事也是好的嘛!

2、加壳,现在的很多壳都有自动脱壳工具,那这个壳是加还是不加呢?和上面第一点的理由一样,加!一定要加,你不想你的程序成为初学破解者用来练手吧。

3、注册方式的选择,就最常用的注册而言,还得是硬件码+注册码的形式,其它的加密狗、网络验证等方式还是没办法普及!

4、加密算法的选择,千万别自己写加密算法,
如把硬件码拆开,位移,计算,***,最后得到注册码,可以很明确的告诉你,这样做的话,注册机迟早会出现。
5、选择一些相对成熟的算法,比如说RSA之类的,下一节我们会专门来学习一个RSA的使用。

6、程序中如何验证注册码,千万别来一个判断是否相等就可以了,那样的话,爆破就出现了,用一些相对复杂的方法,这一点在易语言论坛中有一高手“麻辣教师”写的教程里说明得很清楚,强烈建议大家看看。

7、暗桩的使用,验证注册的地方要有很多处,在程序运行的过程中时不时的验证一样,发现是被破解了也不要理它,运行几分钟后自动退出,而且时间还是随机的!

8、前面不是加壳了吗?加了壳之后程序就变小了,那你一开始时就可以先判断程序文件有多大,发现大过了压缩之后的大小,说明被脱壳了,和上面一样,过一会自动退出。

9、更高级的暗桩,建立一个参数,在关键的时候判断是否被破解,如果不是当然没问题了,如果是的话,把要进行的操作的数据改动一下,而且就由这个参数起作用,这样使用破解版最后操作的结果就是一堆垃圾数据了。

10、出现破解了怎么办,这其实很正常,别往心里去,呵呵,升级你的程序,每天或者每两天升级一次,每一次都要把验证注册码的相关代码修改一下,原来是判断的,你改成如果,再改成如果真,原来是注册成功了弹出信息,现在是失败了才弹出信息,总之别让人非常容易的进行定位,再把原有暗桩的位置改一下,把一些原来没有暗桩的地方加上暗桩,你改这些并不难,但破解者就很累了,呵呵!

11、再补充一点,如果有必要,把硬件码也加密,如MD5之类的,别让人一看就知道你取的是什么硬件码。   这些都是常用的防破解方式,还有一些不是很常用的,暂时就不介绍了!

喜欢1 评分0

最新喜欢:

coolmancoolma...
游客

返回顶部