声明

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

背景

在前两篇博文中,我们成功突破了My Eclipse 2015的3个主要保护机制:

  • 软件完整性验证保护
  • 注册码验证
  • 激活 + 联网验证

实现了暴力破解,其实已经可以不用再管神马算法了。

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

但是,上篇博文有提到,暴力破解的方式太过于侵入,而且容易遗漏,不易操作,特别对于ME这款软件,验证点奇多无比,所以,暴力破解相对来说过于”丑陋“。

本篇将展开对My Eclipse 2015的注册码算法、激活码算法研究,以期能够算出正确的注册码和激活码,并通过ME的联网激活,成为其"合法"授权用户。

成果如下:

  • 授权信息

  • 激活成功提示信息

分析注册码算法

ok,让我们开始分析注册码算法,经过分析,从下面这个类入手:

可以看到,这个混淆效果要比CLion的混淆效果好的多,并且这个类所在的包的数字签名,让你很难通过常规手段进行替换调试。

比如下面的错误:

这里我们有两个办法:

  1. 去掉其数字签名.
  2. 自己模拟这个类.

这里,根据实际情况,我们不需要完全去除数字签名,算法相关的类比较少,我们可以在较低的时间成本下采用模拟的方式来推算法。

先看看,这个类里面的几个重要的点:

  • 过期时间:

  • 注册码验证:

ok,根据分析,我们找到了注册码的一些关键算法,其中有几个解码的算法也要关注:

  • 加密/解密段之一

  • 加密/解密段之二

细碎的活儿应该怎么干?

一边静态分析,一边抽代码到我们的模拟环境中,然后调试,记录,测试,修改。

可以看到我们的模拟算法逐渐成型:

测试一下:

阶段性战果:

分析激活码算法

到这里,我们已经追出了注册码,My Eclipse 2015还有个激活的步骤。来看看:

可以看到,不找出正确的激活码是不行的,那我们开始吧!

  • 激活码验证之一:

  • 重要的SystemId(反应激活机器的信息,如处理器、网卡、硬盘等)

  • SystemId从哪里来?

值得注意的是,这里取得激活机器信息,使用了JNI,要确定这几个本地库能被检索到:

其中windows使用dll,分32/64位的;unix-like使用so,同样分32/64位。

到这里,我们离激活码一步之遥,坚持就是胜利:

上图可以看出,我们还有个rsa加密/解密没有搞定,那么追追看吧。


搞定RSA

既然是rsa,那么找找它的key吧,私钥是不大可能找到了,所以我们利用如下思路来搞:

  1. 随便生成一对公钥/私钥.
  2. 用我们的私钥加密激活码.
  3. 用我们的公钥偷梁换柱.

那么,亲,它的公钥在哪里呢?

  • 公钥

上图,告诉了我们两个信息:

  • 公钥的位置,包括名称:publicKey.bytes
  • RSAUtil,这个,我们可以直接copy过来用,真是省心^^.

胜利的曙光就在前面,让我们最后检验下队伍吧:

开始准备打补丁了,先使用finder找出它的公钥:

patch it!

看下阶段性成果吧!

看来,功夫没有白费,激活码的验证通过了呢^^.

结语

本篇,我们追出了My Eclipse 2015的注册码算法和激活码算法。

至此,MyEclipse 2015 逆向破解研究系列终结。

贴图纪念下吧:

  • 暴力破解,去除验证:

  • 算出注册、激活码,通过验证:


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

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

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

    声明 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. PPT制作教程:如何制作ppt

    PowerPoint(PPT)是专门用于制作演示文稿(俗称幻灯片).广泛运用于各种会议.产品演示.学校教学等.学会如何制作ppt,成为提升工作效 率的好帮手.PPT包含有很多的功能,我们可以根据个人喜 ...

  2. POJ3648 A Simple Problem with Integers(线段树之成段更新。入门题)

    A Simple Problem with Integers Time Limit: 5000MS Memory Limit: 131072K Total Submissions: 53169 Acc ...

  3. C++ 基本知识

    无论父类与子类的析构函数是否是virutal,子类的析构函数都会调用父类的析构函数 调用构造函数是与构造函数顺序相反,先子类后基类,否则如果基类先析构,子类的有些资源已经不存在了,会出错. 在C++中 ...

  4. 卡拉兹(Callatz)猜想

    题目描述 卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把(3n+1)砍掉一半.这样一直反复砍下去,最后一定在某一步 得到n=1.卡拉兹在195 ...

  5. NOIP2009普及组细胞分裂(数论)——yhx

    题目描述 Hanks 博士是 BT (Bio-Tech,生物技术) 领域的知名专家.现在,他正在为一个细胞实 验做准备工作:培养细胞样本. Hanks 博士手里现在有 N 种细胞,编号从 1~N,一个 ...

  6. C++ 之 常量成员函数

    类的常量成员函数 (const member function), 可以读取类的数据成员,但是不能修改. 1  声明 1.1  const 关键字 在参数列表后,加 const 关键字,声明为常量成员 ...

  7. 谷歌开源项目Google Preview Image Extractor(PIEX) (附上完整demo代码)

    前天偶然看到谷歌开源项目中有一个近乎无人问津的项目Google Preview Image Extractor(PIEX) . 项目地址: https://github.com/google/piex ...

  8. hdu-5495 LCS(置换)

    题目链接: LCS Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total S ...

  9. 2014 Super Training #1 C Ice-sugar Gourd 模拟,扫描线

    原题 HDU 3363 http://acm.hdu.edu.cn/showproblem.php?pid=3363 给你一个串,串中有H跟T两种字符,然后切任意刀,使得能把H跟T各自分为原来的一半. ...

  10. 二分匹配之最大权值匹配算法---KM模板

    百科:http://baike.baidu.com/link?url=vbM3H4XmfrsWfP-epdlR2sVKSNzOq4hXnWDqm5uo8fd7VWsF2SmhDV35XyVUDvVjv ...