本文破解方法适用于Mybatis Plugin 3 之后的版本。
大致思路
新版的Mybatis Plugin
采用zkm混淆了,反编译不能直接看到代码实现,破解难度大大增加。
zkm混淆的大概思路就是将源代码中的包名、类名重新编排。源代码类中直接赋值的字符串,混淆后变为通过静态代码块、构造函数、组合调用其他方法来初始化。反编译后将代码简单修改还是能够得出原文的字符串的。
工具准备
- procyon-decompiler
- 文本内容搜索工具,类Unix系统可以直接通过
grep
命令 - javassist(字节码修改工具)
破解方法
反编译jar
|
|
寻找线索
由于插件的注册是要走网络的,可以搜索反编译的代码中与网络相关的一些包名,常见的工具类名。
例如:http
,URL
,Socket
等等,找到一个线索类,剩下的就是体力活了,从该类进行关联阅读基本就可以得出注册的逻辑了。
搜索反编译后的文本关键字
|
|
到这里是不是看到了一丝线索?剩下的就是顺着这个线索类,阅读反编译的源代码来猜测大致的逻辑就可以了。procyon-decompiler有的类可能会解析失败,这就需要把常用的反编译工具组合起来分析。
例如:JD-GUI
,Luyten
,详情可以看我的另一篇博文:IDEA Iedis Plugin 2.41 破解方法。
不多说了,直接给出最终代码~
|
|
切勿用于非法用途,转载自https://www.awei.org/2017/11/08/idea-mybatis-plugin-3-21-po-jie-fang-fa/, 感谢原作者。