漏洞版本:百度空间 漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS. 1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存. 2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
" n+ ~2 I8 J; S1 V) [( r0 a% c7 I& W% z" m0 _* W+ e) p
, J8 b! } b- N-
0 Y3 M) k* r- x- e/ ~3 ^0 f2 _! m, d$ `, H
: i! d4 Z8 D0 p2 m* N漏洞版本:百度空间
$ `! A7 M m; o) E L3 M+ Y* B漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS.3 r" n7 z5 R- F( |) b
+ e! y4 T5 w; @! Y0 {, ?2 j, H" r1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存., [0 L" {5 O1 s& J
2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
* C' M0 U6 [; r2 t/ l
& y7 g0 F4 y3 Z; o3 `( R+ k将输出一段HTML:<p style="margin-top:5px"><strong>'+F[2]+"说:</strong>"+BdUtil.insertWBR(F[0], 4)+'</p>
( w0 {; {6 ^1 @( R+ }其中BdUtil.insertWBR为7 B) W* r. y& ]
function(text, step) {) b+ B" A: `/ ]' z
var textarea = textAreaCache || getContainer();
; i( D, }& n( U) l& d if (!textarea) {
+ Z( _1 w$ |0 ?, G return text;
# |4 j% ^9 G& ]/ d) D4 A) ^. ` }8 H2 y- _ I1 w, M: s
textarea.innerHTML = text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");+ e `7 m0 e# n3 I/ P
var string = textarea.value;
% i Y6 a3 i. w Q var step = step || 5, reg = new RegExp("(\\S{" + step + "})", "gi");
" X' X0 A/ |5 I3 U0 Z) z1 u 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;");: X2 v( a# n4 Q7 P
return result;
4 Z. V( W" O* @* x}
* M. u& J6 K b) R2 {2 V在首页中,textAreaCache 和 getContainer()均不存在,故!textarea为true,未经过滤直接return text.造成XSS.<* 参考4 Z( p, E- O# M+ a
http://80vul.com/sobb/sobb-04.txt
! k* I3 k. v# E3 q' ?) _# L*>
[5 \ y( T$ Z& t测试方法Sebug.net dis
, y; z j8 H$ M; c& J本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
4 s, G. K9 A$ n1.宠物留言管理处输入:<img src=# onerror=alert(/sobb04/)>安全建议:等待官方补丁: P. k& v0 c5 u, f+ v4 a, @
/ R$ t$ F+ t; U8 i
|