通行证│用户名: 密码: 验证码: 验证码,看不清楚?请点击刷新验证码 电信网通铁通移动   在线
文章搜索:
热门搜索:红客 黑鹰 红客技术 安全动画 红客培训
首页 文章 软件 动画 资源 励志 论坛 邮箱 会员 军事 科技 博客 爱心红客 最近更新 800g资源
 业内新闻 漏洞公告 病毒公告 电脑知识 网络知识 菜鸟入门 攻防教程 黑客攻防 安全编程 工具使用 综合安全 个人安全 安全相关 Q Q安全 原创精华 红客人物 站内事件
您现在的位置: 爱国者安全网 >> 文章类 >> 安全防御 >> 安全相关 >> 文章正文
论Flash动态站的安全性
责任编辑:酷酷の鱼   更新日期:2008-4-23
 

来源:安全中国

最近准备用Flash和ASP写一个动态网站,所以一有时间就往西单图书大厦跑,看了很多AS和ASP方面的书,学到了不少相关知识,领略了很多新奇的想法和创意,看到了很多或豪华庞杂或简约明快的整站风格,也从中发现了不少值得拿出来聊聊的问题。

  本人是从Flash4玩到Flash8的,可以说是看着Flash长大的(呵呵,别扔西红柿)。随着版本的更新,Flash变得越来越漂亮,组件越来越丰富;最重要的是,AS2.0使得Flash不再是华而不实的花瓶了,其强大的交互能力被广泛地应用于课件演示、桌面游戏开发等诸多领域。照这么发展下去,估计不久的将来,我们就可以用Flash开发软件了,从这个方面也可以看出Macromedia的野心不小啊,但那毕竟是将来的事情,不过用Flash作Web开发的平台却是绰绰有余了。

  废话少说,先来了解一下Flash动态站是如何实现的吧。从图1可以看出,Flash动态站相比传统动态站的不同之处就在于多了用于呈递请求和返回结果的SWF,以及SWF和ASP之间的信息传递过程。而问题就可能出在这里,因为AS中读取外部变量的方法是通过loadVariables函数实现的,其格式为loadVariables(“URL”,level/”target”[,variabes])。具体到动态网站,loadVariables可能这样写:loadVariables(http://www.target.com/aaa/asp?name=kubau0,””,”post”),而aaa.asp返回的信息可能是这样的:type=genius。

 

  也就是说,AS是向ASP要了一个变量;而ASP根据SWF传来的参数在服务器上查询数据库,以variety=value的形式返回给SWF,并不真正打开目标ASP。通过ASP向数据库写入记录也是同样道理,只是目标ASP将处理结果写入数据库,而不向SWF返回信息(这话不绝对,也许会返回写入成功或失败的信息)。

  我们大体明白动态Flash网站是怎么回事了,也就很容易推出哪个环节容易出现问题了。ASP和数据库之间的问题是服务器的事情,本文不予讨论,只说说SWF和ASP之间可能出现的问题。

  首先,传统动态网站的ASP和Flash动态网站的SWF都是交互过程中直接面对用户的环节,但是SWF和ASP不同,ASP是在服务器上运行并返回HTML,SWF可是要下载到Local Settings\Temporary Internet Files文件夹中的,所以很容易暴露AS源码,而使网站结构变得一览无余,所以对SWF进行加密就是必须的了,下面介绍几种简单有效的保护方法。

  第一种方法就是在用Macromedia Flash导出SWF时,勾选“防止导入”一项,这样他人试图用Flash导入你的SWF时就会要求输入密码,所以着重提醒一点,千万不要用测试影片时导出的临时文件做最终的站点文件。

  第二种方法就是用第三方软件对AS进行加密,不过说实话,我没有找到很好用的工具,手里的加密工具都不太好用,防不住反编译软件的折磨。

  其实有时不用得到源代码也可以通过Flash Player本身的播放命令(前进和后退)使AS中的跳转命令失效,为了防止这种情况的发生,我们可以加入fscommand(“showmeu”,false)命令屏蔽右键菜单。不过我更习惯把影片拖到一个main组件中,再在主场景中拖入其实例,这样,主场景中只有一层,层中只有一帧,播放器命令自然就失效了。

  这样基本上可以防住一般的Cracker对SWF文件的拆解了,但别以为如此这般就是安全的了,真被拆了也没辙,仅在此提几点建议吧。

  1)使用loadVarisbles函数时千万不要在URL中使用“&”构成形如http://www.target.com/aaa.asp?name=kubau0&QQnumber=307906490的Get方式查询的URL,这样只要用Winsock Expert探到URL,所有变量和变量值就一览无余了。

  2)ASP回显结果时可加入一些干扰信息,还可以暂时改变变量命名习惯,不要使用可以顾名思义的变量名,如level=admin等。

  3)能够外部调用的(如图片、声音、视频等)推荐采用外部调用的方法,这样不仅可以使整站访问速度加快,对资源的安全也是一种保护。

  4)推荐使用Post方式提交到网站绝对路径,并且对参数来源进行验证,因为本地SWF是不支持Post提交的,使用绝对路径和验证参数来源可以避免相对路径下的验证文件被伪造的问题。

  • 上一篇文章:
  • 下一篇文章:
  • 最近更新
    固顶文章 企业网络组建与维护班正式开课
    普通文章 瑞星公司04月23日发布 每日计算机病毒及木马播报
    普通文章 部署网络防火墙策略十六条守则
    普通文章 当心Cookie泄密 看网吧黑客如何窃取机密
    普通文章 安全上网好帮手--木马克星保安全
    普通文章 带你认识Linux下的密码“暴破”软件
    普通文章 论Flash动态站的安全性
    推荐文章 推荐:从零开始为您的电脑系统做漏洞自检
    普通文章 让 “KAV 7” 与其它杀软都和平相处
    普通文章 iPhone和Wii浏览器易使用户遭到钓鱼攻击
    热门文章
    普通文章Vista SP1正版验证机制再遭破解
    普通文章网页成病毒传播途径 三成用户上网染毒
    普通文章无处不在的安全风险 谁来买单
    普通文章网银大盗被捕 团伙骗取上亿资金
    普通文章“键盘终结者”与“小不点”
    普通文章SOCKCAP代理的设置方法
    普通文章Spring中事件处理技巧
    普通文章Windows 内核漏洞 ms08025 分析
    普通文章程序从DOS/bios驻留内存到WINNT下监视读入内存数据
    普通文章同时感染Win/Lin 跨平台病毒成趋势
    精彩专题