漏洞版本:百度空间 漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS. 1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存. 2.在http://hi.baidu.com/ui/scripts/pet/pet.js中. U5 c1 }" n1 G) V4 N/ A3 }
" S$ }+ f, Y; Y+ z/ D7 r
1 ?0 ^2 f/ [2 i: B! u
-
: k$ z5 C, E8 j6 M' t5 p! \
6 ]3 S1 B- q* x1 T( d0 f4 i
3 w# n3 F; ^. s4 R3 J/ t& q漏洞版本:百度空间
- `: [$ C" r% @% O漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS.' w7 A1 g) N; d* }
8 V; ]7 {# c4 |2 o) \' l5 U1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存.. t+ Y7 y) H) ~' X7 ]! C: |& b: v
2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
: J- ~- @" N, L" ]4 w6 M
1 ^3 b& ]! J/ [' {将输出一段HTML:<p style="margin-top:5px"><strong>'+F[2]+"说:</strong>"+BdUtil.insertWBR(F[0], 4)+'</p>
$ z& G* A/ O, M( _# Y2 I其中BdUtil.insertWBR为
. F- J' m) @4 y, x& Yfunction(text, step) {
4 d* ?9 W2 ~+ T1 n var textarea = textAreaCache || getContainer();
+ |% D9 }& N$ N h7 r if (!textarea) {
; D3 o8 `7 O( S0 M return text;
6 H) k5 l4 l; A6 q5 @1 X }3 P5 c' M3 I- C1 N: B( }
textarea.innerHTML = text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");% l$ t9 W, x) X: Q8 Q
var string = textarea.value;3 m! W! Q* o7 m. i3 B! i9 L+ X
var step = step || 5, reg = new RegExp("(\\S{" + step + "})", "gi");$ o; K" i4 l4 k5 c8 J
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;");6 H. P7 h+ t. A; S: ?9 K' Z
return result;
2 P' h2 L2 e; m1 l/ R}6 a8 I5 v' \ J0 Z
在首页中,textAreaCache 和 getContainer()均不存在,故!textarea为true,未经过滤直接return text.造成XSS.<* 参考
) v6 Z9 s, {" \& `8 |& \+ uhttp://80vul.com/sobb/sobb-04.txt- C* O; d( A# L
*>$ q8 e* F" R1 M. v' Z
测试方法 Sebug.net dis" m0 P; o" ~5 v# Z4 G+ W
本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
) G, H9 {7 I l! n1.宠物留言管理处输入:<img src=# onerror=alert(/sobb04/)>安全建议:等待官方补丁( T6 m. A& }+ G) N
; ]/ o0 v" N3 k$ z
|