漏洞版本:百度空间 漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS. 1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存. 2.在http://hi.baidu.com/ui/scripts/pet/pet.js中& @7 ~, q* l1 J2 C
, E% P _- P& J& v9 L
u& j c" {& F4 M
-
% q% H! U& r( f# { {. y. S& R7 ~1 h' U( G# m% t$ m
& y; Y/ S8 t8 |8 G9 f漏洞版本:百度空间
! D2 B- T7 c) l+ z漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS.
: G. @& M7 w" k; Q6 F% a* |; T# A# F: M* v, N% R
1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存.
9 w- S) i: y7 Y5 h7 p" \& B+ s2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
( X0 D8 \4 w% i& G
' D- m. Y9 u/ O4 Y" ~将输出一段HTML:<p style="margin-top:5px"><strong>'+F[2]+"说:</strong>"+BdUtil.insertWBR(F[0], 4)+'</p>
3 u* ]( T- u+ H9 P8 l其中BdUtil.insertWBR为* r v+ d( C7 \7 ? Y
function(text, step) {
# I& l0 B/ K2 I3 b; u2 M5 ~ var textarea = textAreaCache || getContainer();7 E- g( N& a& w: x
if (!textarea) {
" ?$ z @( V* x) |5 {% W return text;
8 V5 b" Q+ J6 \6 I1 M% o }
: w y# H& L2 a! c' N) S textarea.innerHTML = text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");& C2 x( Z5 D" x5 i0 F
var string = textarea.value;9 ^2 y. t/ n1 ]
var step = step || 5, reg = new RegExp("(\\S{" + step + "})", "gi");
* b) y9 R( k/ I/ C+ k 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;");
$ R' V$ G( G+ e. m* N return result;
) N" p7 [# J& Y# F. U G}- E# n( G/ t# @% s+ P
在首页中,textAreaCache 和 getContainer()均不存在,故!textarea为true,未经过滤直接return text.造成XSS.<* 参考
/ B1 k) w6 V0 g* t& s, Uhttp://80vul.com/sobb/sobb-04.txt
u& y/ u. e) e8 ^) ^- {' N' t*>
2 w4 u* n1 R1 c4 e3 m, G测试方法 Sebug.net dis3 ?4 t& C8 h% B
本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
) D9 p. c& `) R9 }1.宠物留言管理处输入:<img src=# onerror=alert(/sobb04/)>安全建议:等待官方补丁
$ X2 N% D) [2 y8 D+ n) Z$ e' g
, D% Y2 V* {5 g: n/ y* Y1 l |