Flash开发利器FDT1.17.390破解

本帖最后由 foolishb 于 2019-7-5 15:04 编辑

Powerflasher FDT是一个强大的AS3/Flash/Flex/Air的编程集成开发环境
最近刚好要开发一个as3项目,发现Adobe出品的CC或FB虽然有现成的破解版
但是编程功能真心比较弱
后来,在Github上有人推荐了FDT这一款工具,不过是商业版
所以就花了点时间研究一下如何破解

不太清楚FDT的版本机制,本版本是2019/07从FDT Server直接下载,包内文件的日期是2017/09,代码中的字符串提示应该5.5左右
应该网络上可以找得到的最新破解思路

下面的是破解的过程:

1. 下载FDT商业版
直接把几个重要的JAR,如FdtUI.jar和FdtCore.jar拖进jd或jadx
源码并没有混淆,但通过关键字无法找到Key或Activate等关键词,

2. 初步判断应该通过反射和在类加载器上动手脚

3. 直接调试项目
由于FDT是基于Eclipse开发,在Ecilpse的配置加上调试参数
-Djava.util.Arrays.useLegacyMergeSort=true
-Xdebug
-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n

4. 使用Eclipse调试
发现了AntClassLoader和几个破解的关键类:com.powerflasher.fdt.ui.keyManagement

5. 通过分析AntClassLoader大概知道了
几个关键类的字节码都被放在了AntClassLoader中的classMap中
但是找了很久都没有找到字码是从硬盘哪里导入的,
另外FdtUI.jar也不能修改,一修改FDT启动后就变成了死鱼
这两点比较奇怪
索性先放一下,直接Hack了OSGI的ClassLoader将关键类字节码全部导出

6. 分析加密关键类
加密构架主要包括公私钥密码算法和网络验证
虽然类名函数名没有混淆,但是类属性非常多并混杂了UI操作
花了一些时间把所有网络操作都禁止,并将相关属性直接Hardcode

7. 写回字节码
在第5步中,一直找不到字符码的位置,同时也不敢直接动Jar包了
为了试验破解的正确性,直接在OSGI的ClassLoader中加载了修改后的字节码
经过多次的调试和修改,基本破解成功

8. 后来经过多次的调试和分析
终于发了字码节还是在FdtUI.jar中,
但是直接使用Rar是看不到隐藏的加密类字节码,里面只有普通类的字节码
通过Winrar的信息报告和代码发现,原来加密类的字节码隐藏在了Zip的SFX模块
知道原因后,直接对FdtUI.jar动刀,把所有修改的内容转移到了FdtUI.jar中
破解完成

过程虽然非常明了,但细节非常多,如果对RCP、Eclipse、密码算法或ClassLoader不熟悉,重现上述步骤可能会有困难
过程大约一个半工作日

链接:https://pan.baidu.com/s/1yJHOJyqdVEiDSUaWt7b1Bw
提取码:j9i3
复制这段内容后打开百度网盘手机App,操作更方便哦

THE END
喜欢就支持以下吧
点赞0
分享
评论 抢沙发
  • 管埋员

    昵称

  • 取消

    请填写用户信息: