漏洞版本:百度空间 漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS. 1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存. 2.在http://hi.baidu.com/ui/scripts/pet/pet.js中4 {1 m) }" Z# B# d& N* o: Q0 w
! c2 @2 ]- z5 x7 m3 Z: B% J8 X
" S1 F" Y+ ]- ^$ L0 B-
# L% ]$ d# h( h' |. G S% |. q
\ t2 S7 d( a: ]5 V7 D/ ? # C/ E9 E. E7 e3 V0 e
漏洞版本:百度空间; f y. y- S! u! x x
漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS.
( j' b0 l% r8 L* I3 C+ K- r6 F% o& p3 S, L3 B) t) W5 p
1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存.9 J5 M4 `( Z5 R' d2 m. I- s
2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
8 z$ ]* |8 e% _) D3 z2 r7 ~) N0 g$ h; n' b* C8 M. E' E3 T3 j
将输出一段HTML:<p style="margin-top:5px"><strong>'+F[2]+"说:</strong>"+BdUtil.insertWBR(F[0], 4)+'</p>3 ]1 y& p9 C6 t( p
其中BdUtil.insertWBR为
5 k$ Q* T9 f6 jfunction(text, step) {! {0 a7 L) G1 o, M
var textarea = textAreaCache || getContainer();
( i0 f* {! O3 @9 F7 \) \. n if (!textarea) {
9 @: _2 u+ ], S8 ]. K) b& O return text;; U6 ]% s- u+ T S6 y, _9 S1 ~4 n
}# {# A: K6 H; `+ R+ j" L; m
textarea.innerHTML = text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");
8 K' o" P+ w: R% S$ k var string = textarea.value;6 I5 r$ o( K9 H& i
var step = step || 5, reg = new RegExp("(\\S{" + step + "})", "gi");
& b# N; Y- e7 E( o- | 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;");; \, t6 g9 m% C2 K2 z7 } {9 s
return result;/ ^: a7 M8 m. s/ `
}; [9 J( X" T" _! \. x7 m5 u
在首页中,textAreaCache 和 getContainer()均不存在,故!textarea为true,未经过滤直接return text.造成XSS.<* 参考8 g+ y! \- Y4 \
http://80vul.com/sobb/sobb-04.txt
8 e1 J# t+ C, A4 N+ ?*>/ Q8 _ ]4 A& r8 B) F
测试方法Sebug.net dis6 X! O' M2 S$ r/ E! C
本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!- g' |9 F A% }4 @
1.宠物留言管理处输入:<img src=# onerror=alert(/sobb04/)>安全建议:等待官方补丁
- f- q9 B) ^9 J, u. s+ P" E: `5 ]. _8 {
|