漏洞版本:百度空间 漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS. 1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存. 2.在http://hi.baidu.com/ui/scripts/pet/pet.js中9 v( M3 Z, O) I
, ?% w, a: Y1 ]0 a
( b* n5 h+ H3 O% z4 k" c7 `-, n6 t) u: ?; w; O
. c! Y4 Q/ Z% s
2 r `' N3 S: k- o) j5 W: L7 `9 \漏洞版本:百度空间. ^! {! X4 N. @
漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS.
& _# L, J# ]: J" w! \5 U5 M
1 j) q6 g4 I* `/ \: f+ }4 q1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存.
- x5 k e/ F* h; o2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
* R4 U9 B. g$ K. b7 c5 w
& M3 M7 x: B* g$ X, e/ ~将输出一段HTML:<p style="margin-top:5px"><strong>'+F[2]+"说:</strong>"+BdUtil.insertWBR(F[0], 4)+'</p>! I& E$ l! M# J/ V2 e3 X3 g
其中BdUtil.insertWBR为
% H7 z2 c3 P7 ffunction(text, step) {
' R0 C, j; c! j: U# W var textarea = textAreaCache || getContainer();5 ]; k* t8 t! y [' O; W
if (!textarea) {& ~: U9 U/ D4 j* C
return text;0 `; M1 _% _$ U9 _
}
5 R+ `) v, k' w+ u, b textarea.innerHTML = text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");
& W1 f( P: J& R0 ] I, C var string = textarea.value;
- r }6 G9 u& Q7 V/ b6 T; S8 z var step = step || 5, reg = new RegExp("(\\S{" + step + "})", "gi");0 w6 ^' n. U: C' V
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;");/ c. W9 b+ g1 c* A8 T
return result;; ` Z' q' y- Q: c% _2 I
}
" H& P h! m" h1 r# p" H8 }6 O在首页中,textAreaCache 和 getContainer()均不存在,故!textarea为true,未经过滤直接return text.造成XSS.<* 参考4 ]. D L' `, u" U
http://80vul.com/sobb/sobb-04.txt5 x# S% \9 G1 F3 O/ R
*>" X, Z( Y7 I. [3 u/ U- f* L& y
测试方法 Sebug.net dis
( T" a1 h) p# i* }' e9 h5 n本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
6 g% A @- x8 u! I9 H) `1.宠物留言管理处输入:<img src=# onerror=alert(/sobb04/)>安全建议:等待官方补丁
9 p9 J X% A6 z
; F. K# J' e2 D9 r4 H, G8 { |