1.Flash加密解密(一)——doswf混淆还原
2.Flash加密解密(二)——Doswf生成代码分析
3.Flash加密解密(三)——特殊混淆让asv2010解析代码失败
从前面两节的分析可以看出,脆弱的swf文件极其容易被一些现成的工具反编译回可执行源代码。一旦可以进行动态调试,那 么这个文件将被他人掌控,即使你使用了最先进的加密算法来保护你的资源,但是你的解密操作总会暴露在你的代码中。所以必须重点保护好代码来确保核心算法以 及资源安全。
混淆的意思就是改变函数或变量名,让解密者难以很直观的看出其中的含义。对于编译好的swf文件来 说,它保存有全局变量以及函数名信息,但是在虚拟机运行的时候,这些变量名和函数名对于执行并没有影响,虚拟机只依靠他们id来区分他们。这种机制就给予 我们混淆带来了便利。我们可以对其中的变量名和函数名进行修改,让他们被反编译回去后,重新编译会发生错误,这样就增加了破解的复杂程度。
这次给大家介绍如何手动混淆一个swf文件,并提供一种方法,只需要改变swf中的一个字符,就可以使asv2010无法正常解析出代码。
现在开始我们的内容~
本帖隐藏的内容
首先我们先写一个测试文件,这个文件的作用是在舞台上显示一个“hello”的文本框,并设置其alpha值,代码如下:
- package
- {
- import flash.display.MovieClip;
- import flash.text.TextField;
- import flash.text.TextFormat;
- public class Test extends MovieClip
- {
- private var a1:int;
- private var a2:Number;
- private var a3:String;
- private var t1:TextField;
- public function Test()
- {
- a1 = 275;
- a2 = 200;
- a3 = "test2";
- t1=new TextField();
- fun1();
- fun2();
- fun3();
- }
- public function fun1()
- {
- t1.x = a1;
- t1.y = a2;
- t1.text = "hello";
- addChild(t1);
- trace(t1.text);
- }
- public function fun2()
- {
- t1.alpha = 0.8;
- }
- public function fun3()
- {
- t1.rotation = t1.rotation * 0.8;
- }
- }
- }
运行结果如下:
我们导出swf文件,然后用WinHex文件打开(如果swf文件被压缩,则先解压缩后在打开),我们可以看到swf文件中的内容:
具体文件各个地方表示的什么意思,可以参考官方文档。
我们往下面翻,可以看到:
我们刚才代码中定义的全局变量和函数的名字都在这里。
现在我们就可以对他们进行混淆了,你可以选择你喜欢的字符进行混淆。
我们对这些名字进行更改,将所有字符都改为数字:
保存后,发现swf可以正常运行,导入到asv中查看:
发现函数名和变量名都变成了数字,如果重新编译将无法通过。
如何让asv获取不到任何代码(仅针对asv2010及以前版本)?其实很简单,我们只需要打开编译好的swf文件,然后将任意变量名的第一个字符改为一个特殊字符,如下:
我们发现asv没有解析出任何代码:
相关推荐
ASV2012(Action Script Viewer)解密反编译DoSWF加密Flash之图文教程
ASV2012(Action Script Viewer解密反编译DoSWF加密Flash之完全教程
ASV2012(Action Script Viewer)解密反编译DoSWF加密Flash
丰富的资源会促进细菌的生长,特别是富营养型细菌的生长。快速的生长需要大量的核糖体,富营养性细菌会持有更多的核糖体RNA操纵子(number of ribosomal RNA operons, rrn)。我们可以根据核糖体RNA操纵子的数目来对...
AES加密和解密算法的MATLAB实现算法,经过验证能够实现其功能,很值得大家来学习! AES_matlab\add_round_key.m AES_matlab\aes_demo.m AES_matlab\aes_init.m AES_matlab\aff_trans.m AES_matlab\cipher.m AES...
可以反编译大部分网页游戏swf 参考别人的idea
actionscript viewer actionscript viewer actionscript viewer
alpha 4版,已去除时间限制,运行“去时间限制的asv6”
Action Script Viewer (ASV)是款SWF (Flash)反编译的(decompiler 是翻译机器语言或有时目标代码的计算机程序(产品从编译器) 成一种高级语言(原始代码) 。由比较, 反汇编程序翻译机器语言成汇编语言。)win32应用程序....
用于加密swf文件,防止ASV软件破解,支持的最高版本为ASV6.0
可查看SWF文件的源代码,用于学习。分享给需要的朋友。开源光荣。
深信服服务器虚拟化asv操作步骤.pdf
深信服aSV服务器虚拟化_产品技术白皮书[汇编].pdf
NULL 博文链接:https://zhangwenzhuo.iteye.com/blog/1439904
深信服aSV解决方案---故障迁移(HA) SANGFOR aSV OS 金蝶 OS ERP OS 邮件 SANGFOR aSV OS 网站 SANGFOR aSV OS 论坛 OS 金蝶 OS ERP OS 邮件 通过aSV虚拟化方案的故障迁移功能,可以集群中的某台物理机或者虚拟机...
untitled2.asv
main2.asv
yyy111.asv
SANGFOR_aSV_v4.2_2016年度渠道初级认证培训05_系统维护.ppt