安全测试之XSS攻击原理

上一篇 / 下一篇  2012-06-14 14:08:40 / 个人分类:安全测试

XSS的定义
从Wikipedia搜索跨站脚本,解释到跨区脚本(Cross-zone Scripting或者Cross Site Scripting)是指浏览器利用浏览器一些有漏洞的安全解决方案,这种攻击使没有权限跨站脚本在未经授权的情况下以较高的权限去执行,脚本的执行权限被客户端(Web浏览器)扩大升级了。 
这些XSS跨站脚本漏洞可能是: 
*网页浏览器设计缺陷使得在一定的条件下,一个站点完全信任另外一个高权限的站点(或者连个高低权限区域)并去执行高权限站点的脚本。 
*网页浏览器配置错误,把不安全的网站放在浏览器高信任列表。 
*信任站点(特权区域)存在跨站脚本漏洞 
一般的跨站脚本攻击包含两个步骤。首先是利用跨站脚本漏洞以一个特权模式去执行攻击者构造的脚本,然后利用不安全的ActiveX控件执行恶意的行为。通常在安静模式让计算机浏览攻击者指定的网页悄悄下载安装各种恶意代码,如间谍软件、木马软件、蠕虫等。
第二章、XSS漏洞代码
打开记事本,复制下面的代码到几时本中: 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta. http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
<style. type="text/css"> 
<!-- 
body,td,th { 
     color: #FFFFFF; 
} 
body { 
     background-color: #000000; 
} 
--> 
</style><title>Simple XSS vulnerability by Xylitol</title> 
<body> 
<form. action="XSS.php" method="post"> 
<p align="center"><strong>Simple XSS vulnerability by Xylitol </strong></p> 
<div align="center"> 
  <table width="270" border="0"> 
    <tr> 
      <td width="106"><strong>Search:</strong></td> 
        <td width="154"><input name="Vulnerability" type="text" id="Vulnerability" /></td> 
      </tr> 
  </table> 
  <table width="268" border="0"> 
    <tr> 
      <td width="262"><div align="center"> 
        <input name="submit" type="submit" value="     Search it !     " /> 
      </div></td> 
      </tr> 
  </table> 
  </div> 
</form> 
</body> 
</html>
然后,保存这个页面为index.html。并去复制下面的代码到记事本: 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta. http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
<title>Search result:</title> 
<style. type="text/css"> 
<!-- 
body,td,th { 
         color: #FFFFFF; 
} 
body { 
         background-color: #000000; 
} 
--> 
</style></head> 
<body> 
<span class="alerte">Search result  :</span> <strong><?php echo $_POST['Vulnerability']; ?></strong> 
</body> 
</html>
保存为Xss.php,关闭记事本。用firefox打开index.html,在搜索框里面输入一串字符串正常搜索,回车。然后重新在搜索框里输入<script>alert('XSS')</script>,单击发送。这时候页面会弹出一个提示窗口。这就是跨站脚本漏洞。 


TAG: XSS 安全测试

 

评分:0

我来说两句

Open Toolbar