漏洞版本:百度空间 漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS. 1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存. 2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
) t+ V3 r$ k* c2 c' N/ x* u' j
8 U. x- I8 b3 D* I$ r. a4 q6 i6 R; N" \8 A. X2 F! @2 J7 t- U1 `1 i
-
P/ P# y. o7 ~3 ?" x" O( K% ^0 P _! ]6 s2 i
5 p1 u6 _# x+ u( n3 w漏洞版本:百度空间
/ t9 J% h h" M$ y漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS.
/ n4 D) f# Z' d, B' B
7 a5 W5 J2 Z0 e$ l' T1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存.# b8 O/ F( H$ H2 y' o# a0 g# p Q. J
2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
" \: ~4 X- ^3 x" V) G" j1 T/ w6 D/ {9 X% L: V" k$ q- t
将输出一段HTML:<p style="margin-top:5px"><strong>'+F[2]+"说:</strong>"+BdUtil.insertWBR(F[0], 4)+'</p>
8 U# R, H2 @: B7 D% S其中BdUtil.insertWBR为
! Z+ S7 A8 b9 H: nfunction(text, step) {$ M! ^, ~' f4 \5 u5 I
var textarea = textAreaCache || getContainer();1 y+ U& x3 U8 l4 X! U1 X
if (!textarea) {
$ L. l1 w3 y. \ return text;
( C n) D4 L. V, P }
. i9 @, U' R* v4 }6 m6 j1 r# _ textarea.innerHTML = text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");
( o7 c/ u1 E1 e* M var string = textarea.value;
7 M7 Z- n4 K# A- x* h# k var step = step || 5, reg = new RegExp("(\\S{" + step + "})", "gi");2 t; x; ?6 E* \ q
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;"); A/ T8 P0 @( X# }6 c
return result;$ x3 A* G( [* y0 E: t
}! ]" J( ~6 ?) {' Z( R( U5 \2 B
在首页中,textAreaCache 和 getContainer()均不存在,故!textarea为true,未经过滤直接return text.造成XSS.<* 参考, ?! L5 [" @8 Z y/ e
http://80vul.com/sobb/sobb-04.txt
( N- b! N- m) P; H, B! N* l*>
5 z5 `( } a' B5 l( v测试方法 Sebug.net dis
; h% {$ S) ]2 J1 K; q$ S, q本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!" q+ w- _1 I# o( |' e# h' k
1.宠物留言管理处输入:<img src=# onerror=alert(/sobb04/)>安全建议:等待官方补丁
% A8 ^+ S+ @+ r; r# a
! |: E H+ T8 v |