漏洞版本:百度空间 漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS. 1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存. 2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
' O) l7 Z, r; i/ s4 Z# D
; k1 z( D/ L& b U& v9 z+ \
& L+ ^! r- r' J6 \8 o. w. L-
5 l( x8 D( @9 d3 L( N& p8 S! n9 K: h! D; j1 x
& D; H' M- _2 B/ X: ?3 b
漏洞版本:百度空间
+ `6 O( s, G& \) f9 W \$ v5 v漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS.6 _3 h; _! z! I D' j6 Z
+ k, x* M) d1 ~5 w0 s- J7 a
1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存.
7 {4 }- f& }* h: a7 B6 f$ y6 l8 O2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
4 ?+ @8 J$ o7 v3 u: E( d% k
: O. }0 H4 g D( D& g8 A% d将输出一段HTML:<p style="margin-top:5px"><strong>'+F[2]+"说:</strong>"+BdUtil.insertWBR(F[0], 4)+'</p>
n0 l5 M6 E4 {) ~5 T( N% X' e其中BdUtil.insertWBR为5 l; l4 `! i: i$ [* u
function(text, step) {
6 |0 x! f$ v6 a% B K+ V, _' T9 Z var textarea = textAreaCache || getContainer();6 G ?# o2 z7 h5 ~0 P8 @, i
if (!textarea) {
: ?, L3 j9 S8 @: B% T) D: y return text;
* z7 q( H; l# n/ c7 Q: d }/ z; A% W. F, l9 u2 D; g" r
textarea.innerHTML = text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");) \; _/ _$ ?& x. ?
var string = textarea.value;, _: q2 ~8 P; h7 q
var step = step || 5, reg = new RegExp("(\\S{" + step + "})", "gi");
) J/ ]+ E3 ^( E7 p- D' u& b 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;");
! |" L( Y( m" q0 g+ J return result;
: V/ Y3 F7 L3 x( O8 k}
T5 z! m) X7 F5 Q# h在首页中,textAreaCache 和 getContainer()均不存在,故!textarea为true,未经过滤直接return text.造成XSS.<* 参考
, {, N! L) e- c4 u3 S" {http://80vul.com/sobb/sobb-04.txt& i& E ~$ v) e) Q) G/ R, X1 O
*>: h, j2 ~# U$ ]/ u2 C
测试方法 Sebug.net dis0 i! _9 H5 W/ Z, [5 s5 ^
本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
# J+ C# t5 F9 o, w. b5 w1.宠物留言管理处输入:<img src=# onerror=alert(/sobb04/)>安全建议:等待官方补丁
2 \3 G& p1 V0 z5 ^( N2 U- Z M
2 w2 |* ^- M7 p9 V' `# n4 G |