破解和防破解是必是同时存在的对立体。如同制造病毒和防范病毒一样,制造病毒的言论从不会公开出现在一些名门场合,所以每当病毒来袭,防范的一方总是措不及防。我们更希望看到的不是偷偷摸摸,而是从破解和防范中学习到实用的技术和知识。
一、破解篇
这里所谈的破解,包括提取swf、破解已加密及未加密的swf,即通常所说的“swf to fla”。
获取swf的工具
·Flash Saver - 保存网页中的swf
·Flash文件格式转换器(FlashChanger) - 转换未加壳的exe为swf
·Flash吸血鬼 - 不得已时用之。
提取范围很广,只要能看到Flash的窗口,包括加壳及未加壳的exe、网页等等。在使用Flash吸血鬼提取swf的过程中建议不要进行其他操作,否则速度会变得极其缓慢,配置不好的机器有可能死机。这也是这款软件目前版本(v2.2)最大的一个不足之处。如果想中止程序,可以在任务管理器中结束。
使用Temporary Internet Files(IE缓存)下载MV、SWF等资源
偶尔会有网友问我关于网上 MV 如何下载,其实方法很简单,只要到 Temporary Internet Files 文件夹下就能找到想找的大部分网络资源。
Temporary Internet Files 是 IE 的临时文件夹。目录一般在C:\Documents and Settings\你的用户名\Local Settings\Temporary Internet Files
使用 Temporary Internet Files 查找资源的技巧:先清空 Temporary Internet Files,然后用 IE 打开或刷新你要找的资源 (比如 MV) 所在的网页。再刷新 Temporary Internet Files 就能看到了,如果资源比较大,需要过一会,等下载完后再刷新才能看到。
有时,部分资源会被隐藏。查看 Temporary Internet Files 的属性可以断定里面有文件,可是里面的内容却看不到。此时,用 WinRAR 压缩一下 Temporary Internet Files 就能看到了。为了不浪费时间,压缩的时候,压缩方式请选择“存储”。为了便于搜索查找,可以把压缩后的 Temporary Internet Files 解压到另一个目录下,里面的东西此时已经一目了然,分别分布在 Content.IE5 文件夹下的四个子文件夹中。
可以将 Temporary Internet Files 移动到其他分区下,一方面可以给系统分区减负,另一方面也便于查找。移动方法如下:
Internet 选项 → 常规选项卡 → 在“Internet 临时文件”区点击“设置” → 移动文件夹 → 选择一个分区,例如选择 D,就把 Temporary Internet Files 移到了 D 盘的根目录下。最后会提示重启,其实不是重启,是注销。记得保存当前的其他工作,按确定注销。
从Word中提取Flash
测试环境:WindowsXP / Office2003
·需要一款16进制编辑工具WinHex
·打开含有Flash的Word文档,点击“控件工具箱”的“设计模式”按钮进入设计模式,选择Word中的Flash,复制粘贴到任意文件夹,会看到一个“片段”文件。
·打开WinHex,将该“片段”文件拉到WinHex中,单击下拉菜单“搜索”→“查找16进制值”,搜索“465753”,在搜索到的“465753”中的“4”位置上单击右键,选择“选块开始”。
·继续“搜索”→“查找16进制值”,搜索“3A5C”,然后按住F3,直到出现“3A5C未找到”,点击“是”,在最后搜索到的“3A5C”中“C”位置上单击右键,选择“选块结尾”。(注:少数情况可能会搜索不到“3A5C”,则改为搜索“3A”或“5C”,方法相同)。
·在选块内任意处点击右键→编辑→复制选块→进入新文件→输入文件名 (如test.swf) →保存。
常用破解工具
谈到破解,很多朋友都会想到时下流行的闪客精灵。以下为常用的破解工具,按我使用的频繁程度,分别有:
·硕思闪客精灵(Sothink SWF Decompiler)
·Action Script Viewer(ASV)
·Imperator FLA(有使用者译为“罗马统治者”)
这是我最早认识的用来还原swf的工具,可惜一直在关注也没有发现2.0以上的破解版,只有1.6.9.8的破解版,这已经是3年前的版本了,只对Flash6.0以下有效。)
·硕思闪客之锤(Sothink SWF Quicker)
以上四款,以Decompiler最为常用。ASV虽然强大,但在实用性方面却不如Decompiler,这应当也是为什么数年来Decompiler能够长久风靡的原因。而ASV对付Flashincrypt加密过的swf却是轻而易举,这大大弥补了Decompiler的不足。
不少网友知道用ASV来查看swf,但是不知道如何使用它来将swf还原成fla,以5.01版本为例,只需两步:
·打开等待破解的swf文件(支持拖放打开),输出重建数据(File → Export Rebuild Data (JSFL)...)到某一目录下,例如:桌面\新建文件夹。
·双击目录下的“rebuildcommand.jsfl”,系统将启动Flash重建fla文件。根据原swf文件的复杂程度,重建fla所需的时间将有所区别。
破解附言
破解swf,依赖的主要是现成工具,多款工具综合使用,一款不行试另一款,如果作者有意加密,视破解者自身水平,在获取swf时将遇到规模可大可小的困难,在破解时亦将不可避免的多花些许心思。如果遇到 SWF Encrypt 加密过的作品,只能对其中的AS无奈了。