0x00 Aspose-slides介绍
Java API 用于在任何基于 Java SE 或 EE 的应用程序中创建、加载、操作、转换或解析 Microsoft PowerPoint 演示文稿、幻灯片及其元素。
自己研究了一下激活算法
本分析的过程纯粹是研究学习的,需要商业版的请绕行。
0x01 算法分析
由于算法比较简单,只用文字描述
1)进入com.aspose.slides.License类,找到isLicensed方法,将返回值hook为true完成绕过。
2)进入com.aspose.slides.internal.kd.e2类,如果长度为1,从混淆的bw类中,找到java.io.Inputstream关键字,替换返回体,如果长度为0,从混淆类bw中,返回com.aspose.slides.internal.kd.gn.fn类。
3)导入一个License.xml文件激活即可
0X03 修改方法(注意过程中需要javassist-3.29.2-GA.jar的支持,这是关键点,具体原理大家可百度一下)
licence示例
[XML] 纯文本查看 复制代码 <License>
<Data>
<Products>
<Product>Aspose.Slides for Java</Product>
</Products>
<EditionType>Enterprise</EditionType>
<SubscriptionExpiry>29991231</SubscriptionExpiry>
<LicenseExpiry>29991231</LicenseExpiry>
<SerialNumber>mimi</SerialNumber>
</Data>
<Signature>mimi</Signature>
</License>
应用方法
注意事项
更改后jar包的META-INF文件夹需要清空校验证书,否则无法加载
感谢:Valen大神提供的分析思路和替换代码 |