Aspose-slides-24.5-jdk16的算法分析
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示例
<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大神提供的分析思路和替换代码 有问题
pres.save(htmlFilePath, SaveFormat.Html5);
Exception in thread "main" class com.aspose.slides.exceptions.InvalidOperationException: Operation is not valid due to the current state of the object. 大佬html这个SaveFormat.Html可以 但是SaveFormat.Html5这个加了5就不行了 本帖最后由 Forgetten 于 2024-8-3 20:33 编辑
STmimimimmi 发表于 2024-8-3 09:22
分析一下代码逻辑,结合GPT,最后去调试就可以
我的方法是直接使用idea进行调试,但是idea的断点一直进不去,看不到jar变量的值,这样会导致调试非常麻烦,就跟忙猜一样,所以想请问一下有什么方法可以调试,能看到变量的值 高手!感谢分享
感谢楼主!感谢分享 请问有没有word和excel的 感谢分享 zhaoxiaohua125 发表于 2024-6-17 14:53
请问有没有word和excel的
有word的 很好,感谢分享 其实不用javassist也可以,找个licence,然后跳过签名验证即可。
在最新版的 aspose-slides-24.6-jdk16.jar 中验证可行。 老哥研究下 spire.presentation ? 这个ppt换图片/pdf效果比Aspose的更好
页:
[1]
2