漏洞版本:百度空间 漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS. 1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存. 2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
3 i$ K5 |/ e% [& `( C5 N: u. U4 m+ p
$ H( P: H1 [# D
: G& m2 b8 q# W+ l-* h% P( f% ]; m" p u) u
0 H! h* A- Z2 N
, L Y6 d# G1 ]" H3 @- N! G" N漏洞版本:百度空间
! J$ Q2 J5 z9 x漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS.7 z: V0 C9 q5 A. |! M: Q+ ~
$ A9 r1 ], V& {+ h1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存.) V3 `( U" H; U' d1 Z- |
2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
/ n5 o0 Q9 y( I/ t) {& \& u
/ B7 `: j: c6 F+ @+ r将输出一段HTML:<p style="margin-top:5px"><strong>'+F[2]+"说:</strong>"+BdUtil.insertWBR(F[0], 4)+'</p>
* p5 \6 s4 H' A( J, [其中BdUtil.insertWBR为
( F2 k* {. {7 n( S& |function(text, step) {. n- ^, M7 ^9 [. d$ d9 O# X* A* `
var textarea = textAreaCache || getContainer();4 w4 }7 u* W: r6 F
if (!textarea) {$ k8 d0 @( V% J
return text;
" E# \% Q. G6 @- k$ S! F. w }
! k( B, G1 w" k; n- ]% j textarea.innerHTML = text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");% C: B. \/ o" ?; i! ?+ ]
var string = textarea.value;
7 V( n9 c4 u2 b. z; Q var step = step || 5, reg = new RegExp("(\\S{" + step + "})", "gi");
2 A6 o4 w$ t! {2 I8 p 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;");
( e, q2 p7 r! y( j, w4 t return result;) E2 W% A' s0 _1 n: m- G
}
8 b- \( U3 a( x在首页中,textAreaCache 和 getContainer()均不存在,故!textarea为true,未经过滤直接return text.造成XSS.<* 参考
8 S5 G+ o! j5 s7 Chttp://80vul.com/sobb/sobb-04.txt; o O2 }; @' S. I" Y
*>5 {$ B5 k9 D* P, u% D
测试方法 Sebug.net dis
# x2 `$ }. k. G5 t6 w4 [4 R0 h% V本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
7 ]. J, C3 `4 J; u2 x2 x. @. j1.宠物留言管理处输入:<img src=# onerror=alert(/sobb04/)>安全建议:等待官方补丁6 p7 @ D8 M5 H1 L
# d+ B2 g4 Z: l; P ~
|