首页 > IT业界 > 正文

ASV2011之SWF去壳解密反编译实战一

2011-04-02 14:08 来源:网络

  近几年,国内Flash Web Game发展趋势突飞猛进,有利益就得有保护,SWF格式本身是开源的,许多人也在寻找各种各样的保护措施,防止源码被盗取。针对加密SWF格式的Flash文件反编译,众所周知,首推ASV(Action Script Viewer)软件。不过现在加密手段和方法也是不断的摸索前进中,比较常见的一种就是对SWF加壳。可是作为一个Flash爱好者,并不一定只是要搞破坏,如果你只想学习学习源代码的时候,就遇到了困难,ASV2010对真实的源码无法提取出来,怎么办呢?还好,ASV2011来了,其插件SWF Revealer主要功能就是针对AS3加壳的SWF文件提取。

  今天就具体实验下它的效果如何!

  首先,在网络上发现了一个加壳的SWF文件,大家可以自己下载试研究下,下载地址:http://u.115.com/file/f588b76b6

  首先我们试着用ASV2011打开这个文件看看效果:

  一开始弹出了个错误日志对话框,点击关闭即可。

  接下来进入主界面:

ASV2011之SWF去壳<font解密反编译实战一 5927814d4e59674e253ea690d1594399>

图1

  注意:接下来我们要看一些特征了。

  例如class的名是乱码样的字符。

  然后点开库中看到的二进制数据,和脚本也会发现类似情况如下:

ASV2011之SWF去壳解密反编译实战一

图2#p#副标题#e#

ASV2011之SWF去壳解密反编译实战一

图3

  这些特征是加过壳的SWF文件特有的,当然,也许其他情况也很多,但都大同小异。

  现在看到的代码肯定就不是这个SWF真身的源码了,下面我们就请出SWF Revelaer看看吧。

  先关掉刚才那个文件后,点击菜单中的工具->SWF Revelaer。界面如下:

ASV2011之SWF去壳解密反编译实战一

图4

  点击选项卡后勾选捕获到第一个文件时立即切换到数据选项卡:

ASV2011之SWF去壳解密反编译实战一

图5#p#副标题#e#

  接下来,把刚才的SWF文件拖入这个窗口中后,进度条走了一会后,自动跳转了选项卡。

ASV2011之SWF去壳解密反编译实战一

图6

  如图中,看到两个文件,根据文件大小,那么后者就应该是这个文件的真身了,根据提示,先把它保存出来,点中第二个文件不松,然后拖拽出来,我先拖动到自己的文件夹里吧。

  得到了一个test002.swf文件,大小1170KB,比源文件小了3KB,看起来壳应该是脱掉了。

  继续把它拖回ASV2011看看吧,源码现身了。

ASV2011之SWF去壳解密反编译实战一

图7

  下面可以好好学习学习代码了。不过,有时候,SWF并不一定只加一次壳,所以可能会多几次将SWF文件拖入SWF Revealer去壳的操作!而有的SWF真身可能进行了某些锁定操作,使得真身并没释放出来,那么就要用到另一个工具SWF Seeker了,下一篇日志再介绍了。Enjoy it!#p#副标题#e#

文章内容来源于网络,不代表本站立场,若侵犯到您的权益,可联系多特删除。(联系邮箱:[email protected]