漏洞版本:百度空间 漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS. 1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存. 2.在http://hi.baidu.com/ui/scripts/pet/pet.js中1 Y" d" s9 h3 y8 B+ H: d$ Y
1 d8 g( ]$ V4 {- U7 U6 d
7 n8 \! A8 D! V9 H' ~-8 T% G% U% D: ~+ B6 a! r
, D/ Q0 p8 a: o# u
0 q& B O( m" u+ K- E( L- w* X漏洞版本:百度空间
+ p6 r: \: ^6 P3 @2 \ A1 o漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS.9 j( b( g4 S9 C3 }
4 ]9 _6 r! `& k
1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存.
% I/ ]1 J6 L9 E2.在http://hi.baidu.com/ui/scripts/pet/pet.js中% w; k) }% K5 T0 y" u! x7 H2 u
! _( f z$ D3 X
将输出一段HTML:<p style="margin-top:5px"><strong>'+F[2]+"说:</strong>"+BdUtil.insertWBR(F[0], 4)+'</p>4 z# J* d( p+ E& m1 x
其中BdUtil.insertWBR为0 R. b1 H; ]# V% j0 l. I
function(text, step) {
3 y& C4 p3 Z& L* R/ e5 r/ X var textarea = textAreaCache || getContainer();
, _4 h {3 \+ U) P! Z5 L% k9 Q if (!textarea) {7 O9 `) a q$ K4 }3 L. B
return text;- O" g" l8 j+ S/ ]! `
}# O6 C+ W8 I* r+ h$ d
textarea.innerHTML = text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");
8 t% f5 G9 X- E4 O% Y3 H( B, v var string = textarea.value;
4 _! d% m8 A9 ~2 Q var step = step || 5, reg = new RegExp("(\\S{" + step + "})", "gi");
0 M% w3 R/ |2 m+ U' o% m% X4 H+ K3 {7 A; q var result = string.replace(/(<[^>]+>)/gi, "$1<wbr/>").replace(/(>|^)([^<]+)(<|$)/gi, function (a, b, c, d) {if (c.length < step) {return a;}return b + c.replace(reg, "$1<wbr/>") + d;}).replace(/&([^;]*)(<wbr\/?>)([^;]*);/g, "&$1$3;");+ `; y1 S8 n! Z& H# V! P( _9 d; f
return result;
+ _( [ @& I3 ]# B}/ H. G2 r7 l: t; A8 u$ @* x2 P
在首页中,textAreaCache 和 getContainer()均不存在,故!textarea为true,未经过滤直接return text.造成XSS.<* 参考. G. ~+ u/ N) d6 |
http://80vul.com/sobb/sobb-04.txt1 R: E# L3 u& [* d9 s5 `* Y' l
*>
: c/ r% T* `7 [# ~0 F测试方法 Sebug.net dis
$ L2 i( v" w" }本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负! `( b5 U. e7 U( Z
1.宠物留言管理处输入:<img src=# onerror=alert(/sobb04/)>安全建议:等待官方补丁
, B9 m7 L8 s: b# @8 U
4 a+ F$ R* C. C" [8 o |