漏洞版本:百度空间 漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS. 1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存. 2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
8 O& o; [& e9 d0 u7 A( B M
/ M5 w7 Z' ], b c
9 y5 e& Y+ j1 }-
7 _# |- N; |5 U. j, b0 I& F E7 ?- p5 E0 D
- \/ U1 D0 {8 a1 t漏洞版本:百度空间. Y( T2 Q+ L, p/ J& p
漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS.
! L1 b+ o. \ O$ ` B K5 a3 d# d' @$ Q9 m5 y- g
1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存.
: F ^7 v! Z- T5 }. D2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
/ O* U9 w1 U, l
( Y5 S* \1 _& x& z将输出一段HTML:<p style="margin-top:5px"><strong>'+F[2]+"说:</strong>"+BdUtil.insertWBR(F[0], 4)+'</p>
5 W2 J4 c8 f6 Y7 h* i$ p其中BdUtil.insertWBR为
' m, _+ q9 @$ I1 g' F Yfunction(text, step) {' Y+ W8 @4 r4 q* I* @" X. V$ @; Z6 W
var textarea = textAreaCache || getContainer();2 X. j) }/ D; ~, C/ k% W* B
if (!textarea) {1 y5 _! S. ?0 o; {2 {* |! L* ]
return text;( U: v0 k9 l$ G8 r- R5 v3 x
}
3 {* L: T. {( u! C textarea.innerHTML = text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");
5 @$ n( y$ _. k1 X* ]2 Q var string = textarea.value;! I( j" ^- S8 Q7 W/ c4 {3 _7 B* L% ^
var step = step || 5, reg = new RegExp("(\\S{" + step + "})", "gi");' E* K5 ~1 p' t; f1 |1 s
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;");/ l7 z9 }1 X: m3 f- ^
return result;1 K/ ^' g) R: x8 y$ z
}
7 ~- p. }8 H$ n) t在首页中,textAreaCache 和 getContainer()均不存在,故!textarea为true,未经过滤直接return text.造成XSS.<* 参考
' M1 |; E. V) Shttp://80vul.com/sobb/sobb-04.txt
0 ]. `7 V) _6 Y; j' H: q7 L*>9 g( U @/ ?& ^4 A7 T$ E
测试方法 Sebug.net dis
# z7 C. r2 ?/ n# W8 f7 O) N本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
4 V/ ], k0 v5 p0 V' C. U3 D2 b: O1.宠物留言管理处输入:<img src=# onerror=alert(/sobb04/)>安全建议:等待官方补丁
( X; {5 a$ d: f( q
' M* h h+ P! t; R6 a |