声明

  • My Eclipse 2015 程序版权为Genuitec, L.L.C所有.
  • My Eclipse 2015 的注册码、激活码等授权为Genuitec, L.L.C及其付费用户所有.
  • 本文只从逆向工程的兴趣出发,研究软件保护机制.
  • 不会释出完整源代码和破解补丁.
  • 会直接推测出授权信息的地方打码处理
  • 本文针对My Eclipse 2015 Stable 2.0或CL版本

背景

在上篇博文中,我们针对My Eclipse 2015,熟悉了其软件运行特点,并完成了以下几件事:

  • 搭建了静态分析环境。利用全文搜索,方便按路径、符号等方式搜索java文件
  • 搭建了动态调试环境。将我们静态分析得到的关键代码,抽出来,修复依赖,搭建一个很小的运行时环境。
  • 破除了My Eclipse 2015 的软件完整性保护机制。
  • finder用来进行字节级搜索
  • patch用来进行文件补丁

参见:【MyEclipse 2015】 逆向破解实录系列【1】(纯研究)

本篇,我们将针对My Eclipse 2015的注册和激活保护机制进行研究,并破除其限制。

本篇将进行暴力破解,意即不考察软件的注册、激活算法,而是去除其验证部分。




后话:实际上,针对My Eclipse 2015这款软件,暴破比推出注册、激活算法还复杂,晕一个先!

最后再吐槽下,ME 2015实在太卡了 : [

调试中,死机N次是再正常不过的事!有个心理准备吧。

先看暴破后的成果,绕过了注册码的验证机制、激活验证机制


分析注册验证机制

由于有了上篇的环境,我们可以“任意”的玩小范围内的调试。

其实不是任意,因为My Eclipse 2015同时采用了数字签名技术,不过这个可以绕过或者...你懂的.

看看动态调试能够给我们带来什么?以及为什么我们要先去除其软件完整性验证:

这里,混淆神马的都是浮云,^^。

这次,我们依然利用如下的调用栈推测:

   main
-> start
-> ..
-> dialogLicenseInfo("骚年,你的注册码不对哟!")

然后利用我们的检索环境,进行检索,定位到关键代码段,抽出这部分代码,做进我们的动态调试环境中,接着回溯和查找周围信息吧。

至于具体的分析过程,不是重点,关键是方法: ]有兴趣的同学可以自行分析。

看看关键验证部分之一

关键验证部分之二:

好了,天机不可泄露,就说这么多: ]

务必十分熟悉软件的验证保护后,再做代码补丁,否则,各种遗漏会让你的逆向过程成本大增。



同时,对你的补丁代码要多做测试哦!


去除注册验证##

好了,到这里,各种分析结果在手,要做的事情,不用我再细说了吧?

呵呵,赶紧写好patch,打上补丁,测试下效果吧。

贴一些patch的图:

  • ViperCore:

  • ProductRegistar

  • GSDCController:

你看到了,这里只列出一部分注册验证的代码,搞到这里,你就明白为啥前文说对My Eclipse 2015进行暴力破解,比推出注册算法还复杂了。

类多不爱啊!!!!!!!!!!!!!!!


**分析激活验证机制 **

ME 2015在输入注册码后,还有个激活的过程。

我们来看看激活的部分:

  • Connection

  • Manual Activation(手动激活)

  • Need Activation (是否需要激活呢)

好了,这一步和上面分析注册验证部分类似,耐心分析、多调试、多记录,确保已经理解激活验证的步骤,全面掌握了激活验证的点。


**去除激活验证及联网验证 **

了解了激活验证和联网验证的机制后,我们开始去除,这一步和注册验证去除的步骤一致,不再赘述。

补丁:

  • Activator

  • Licence Expired(注册码是否过期)


打补丁:

  • 配置:


  • 执行:


  • 输出:


结语

本篇,我们对MyEclipse 2015的注册机制和激活机制进行了分析,并且采用暴力方式去除其限制,效果如下:

你在文中也看到,这样的方式,侵入感太强,而且ME的验证几乎遍地开花,稍不注意就会遗漏,导致破解失败,那么如何实现相对简单、优雅的破解呢?

在下篇,我们对以下两个问题进行研究,

  • 注册码算法
  • 激活码算法

以期在不修改其验证机制的前提下,成为ME 2015的"合法"授权用户。

撰文不易,若觉得本文对你有益,留个言,点个推荐吧 : ]

【MyEclipse 2015】 逆向破解实录系列【2】(纯研究)的更多相关文章

  1. 【MyEclipse 2015】 逆向破解实录系列【终】(纯研究)

    声明 My Eclipse 2015 程序版权为Genuitec, L.L.C所有. My Eclipse 2015 的注册码.激活码等授权为Genuitec, L.L.C及其付费用户所有. 本文只从 ...

  2. 【MyEclipse 2015】 逆向破解实录系列【1】(纯研究)

    声明 My Eclipse 2015 程序版权为Genuitec, L.L.C所有. My Eclipse 2015 的注册码.激活码等授权为Genuitec, L.L.C及其付费用户所有. 本文只从 ...

  3. myeclipse 2015 myeclipse2010破解共存

    1.高版本选择bling版本,低版本选择profession版本2.用高版本的公钥替换低版本的公钥3.先破解低版本的后破解高版本的4.最后用高版本的替换低版本的文件

  4. MyEclipse 2015 Stable 2.0安装包及破解工具下载

    MyEclipse 2015 Stable 2.0安装包及破解文件下载 之前一直在用myeclipse10.7,后来发现10.7版本有点老了,所以就换了2015稳定版的myeclipse,里面附带了破 ...

  5. Myeclipse 2015 stable 2.0 完美破解方法

    2015-08-21  以前写了一篇<Myeclipse 2015 stable 1.0 完美破解方法>,现 在跟新一下Myeclipse 2015 stable 2.0 破解方法,此方法 ...

  6. Myeclipse 2015 stable 1.0 完美破解方法(转自 http://yangl.net/2015/07/14/myeclipse_2015stable_1/)

    Myeclipse 2015 stable 1.0 完美破解方法 http://yangl.net/2015/07/14/myeclipse_2015stable_1/ 破解包(注册机)下载地址:链接 ...

  7. MyEclipse 2015 Stable 1.0下载安装破解日志

    前言 这2天下载了许多myeclipse版本,基本上是14/15版本的,各种破解均告以失败,这次下载了贴吧一个吧友提供的版本,现已破解.破解结果现不好说--目前已装SVN,根据经验,只有等待一定时间验 ...

  8. java ee@ Myeclipse 2015 stable 1.0 完美破解方法

    Myeclipse 2015 stable 1.0 完美破解方法 破解步骤: 使用以前的注册机算号,版本选择Blue即可,后续可解锁Spring高级功能,即Bling的所有功能全部具备 1.1 进入m ...

  9. MyEclipse 2015 Stable 2.0破解方法

    本篇博文简单介绍一下利用网上说明的方法破解MyEclipse 2015 Stable 2.0的具体细节.因为原来在贴吧上的方法不够详细,所以本人重新整理了一下.方法源自:http://tieba.ba ...

随机推荐

  1. Js中获取对象的所有key值

    假如现在有一个对象 var obj = { A:2 ,B:"Ray" ,C:true ,D:function(){} } 如果想遍历对象obj中的所有键值,一般是用以下方式 for ...

  2. SQL 相关

    SET STATISTICS TIME ON 记录查询的相关数据 生成随机Guid SELECT NewID() 按照某一列排序并生成序号 select Row_Number() OVER (ORDE ...

  3. 【mysql】关于临时表

    mysql官方的介绍 In some cases, the server creates internal temporary tables while processing queries. Suc ...

  4. cocos2d-x之Box2d初试

    物理引擎:用来模拟一套物理事件的物理代码. #ifndef __HELLOWORLD_SCENE_H__ #define __HELLOWORLD_SCENE_H__ #include "c ...

  5. cocos2d-x之悦动的小球

    发现问题:update()函数不能用virtual前缀 主: bool HelloWorld::init() { if ( !LayerColor::initWithColor(Color4B(255 ...

  6. linux 程序管理

    在linux下做开发,经常要用到一些管理程序的命令,如查看进程,查看内存等情况.看网络情况.如下的笔记是看书时记下一些简单常用的命令. 1)top [root@005 fsh]#top[-d数字]|t ...

  7. 聚合数据全国天气预报api接口

    查询天气预报在APP中常用的一个常用功能,聚合数据全国天气预报api接口可以根据根据城市名/id查询天气.根据IP查询天气.据GPS坐标查询天气.查询城市天气三小时预报,并且支持全国不同城市天气预报查 ...

  8. NOIP2008 普及组T1 ISBN号码 解题报告-S.B.S.

    题目描述 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字.1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”就是分隔符(键盘上的减号),最后一 ...

  9. 权限框架 - shiro 授权demo

    之前说了权限认证,其实也就是登录验证身份 这次来说说shiro的授权 shiro可以针对角色授权,或者访问资源授权 两者都行,但是在如今的复杂系统中,当然使用后者,如果你是小系统或者私活的话,前者即可 ...

  10. 第2章 面向对象的设计原则(SOLID):2_里氏替换原则(LSP)

    2. 里氏替换原则(Liskov Substitution Principle,LSP) 2.1 定义 (1)所有使用基类的地方必须能透明地使用子类替换,而程序的行为没有任何变化(不会产生运行结果错误 ...