漏洞版本:百度空间 漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS. 1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存. 2.在http://hi.baidu.com/ui/scripts/pet/pet.js中" P4 x7 m! O0 V
" e ~6 f3 n' U; `0 R8 X0 _, o
-( c, l/ b7 K+ y) L' s
- X C' Z9 w' _# B; S& E& ?
! I4 v, I7 q' E g# l* {9 u+ J R" F
漏洞版本:百度空间) Y# g* H: e6 m
漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS.& K6 _ r; \1 L1 c
: z. B" _3 @7 V R$ G1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存.
( a0 |. F! F% O- w2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
1 x2 O1 L" d2 P3 w/ D
0 |# p# s9 o+ U5 `4 y将输出一段HTML:<p style="margin-top:5px"><strong>'+F[2]+"说:</strong>"+BdUtil.insertWBR(F[0], 4)+'</p>) j) Y$ T/ y$ D
其中BdUtil.insertWBR为+ `3 R" _, a. q$ J
function(text, step) {
* {" |" ~6 k l1 m5 c" i% k var textarea = textAreaCache || getContainer();6 r8 Y9 H- E5 A H/ x
if (!textarea) {
' i* \! G% P+ k) I) n return text;
4 d) X. e( \3 @+ U1 l; z }5 N& g& Y! ?* M: l1 S
textarea.innerHTML = text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");
4 ?) M( w+ m* q) |$ Q: o var string = textarea.value;
" ~& L7 i0 I# y3 J" u var step = step || 5, reg = new RegExp("(\\S{" + step + "})", "gi");
( E2 m: E" S5 b% R; w5 w$ g 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;");9 A- ^, f# P7 e: I" D& v$ s
return result;- e8 A$ F: ^; Z
}) q% ^, |) [9 A+ b3 Z0 `# E
在首页中,textAreaCache 和 getContainer()均不存在,故!textarea为true,未经过滤直接return text.造成XSS.<* 参考 P% V; W5 v6 _$ _
http://80vul.com/sobb/sobb-04.txt
* _: [1 Y0 A1 d* G6 ~7 j2 d*>
. q3 {+ U. Z$ }" D5 c- M: n/ [测试方法 Sebug.net dis
1 E6 f8 W1 G) e1 Y7 u本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!9 e+ i" W9 z" [4 I& x1 S, N1 e. e
1.宠物留言管理处输入:<img src=# onerror=alert(/sobb04/)>安全建议:等待官方补丁
3 |' o6 v& J) `6 } t/ v1 ^/ r7 @; `, S" P
|