漏洞版本:百度空间 漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS. 1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存. 2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
8 S1 J6 c, ]7 l) {" V Z0 z0 M4 o7 d- Z3 L' ~
- p$ D7 ~! i' K8 K-
% E0 G4 B2 K2 [3 @& ^' R; I
5 J$ N2 T! F7 \9 U; R$ F, ]4 N 1 q$ D+ x9 g3 \% t# `$ T
漏洞版本:百度空间
! D3 N' ]( A) H' V0 f$ x漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS.2 W' Y. S9 R' ~/ ^: z
9 |) d7 r3 s4 ^& ^. @* v1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存.4 |: Y, \, F1 a8 N5 s5 f( s. L6 ^
2.在http://hi.baidu.com/ui/scripts/pet/pet.js中: x% u( k+ F( V
, K8 d N( e' A/ [: p/ ]将输出一段HTML:<p style="margin-top:5px"><strong>'+F[2]+"说:</strong>"+BdUtil.insertWBR(F[0], 4)+'</p>
. J5 }' ]% @- ~. v其中BdUtil.insertWBR为! z; K; |! c p' Y9 h
function(text, step) {5 P4 H5 [) D$ n& i$ s0 l
var textarea = textAreaCache || getContainer();2 {4 X& m+ D# C: x
if (!textarea) {$ M* O& n& U5 X: V: m
return text;
: {) q1 c, l' ^ }
/ r1 \' [; `/ F" b! C textarea.innerHTML = text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");( \8 Y' D( U; M! H% Y
var string = textarea.value;
- ~2 g/ B; j8 I# V2 N) i var step = step || 5, reg = new RegExp("(\\S{" + step + "})", "gi");
0 ^+ s+ e) [* [% _, M/ 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;");; a5 j( G' }# q- O& t9 t
return result;
; z% S* L- Q$ k, P. C}! i, Y+ u2 z& M
在首页中,textAreaCache 和 getContainer()均不存在,故!textarea为true,未经过滤直接return text.造成XSS.<* 参考4 a# {; i9 N$ Q- }
http://80vul.com/sobb/sobb-04.txt! I& U# {2 r+ W6 [; ^# L `
*>
) l5 _7 k' B+ p) P6 O& A4 X x测试方法 Sebug.net dis
5 W% C+ Y4 v8 s8 Q. w本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
K9 Z; O4 C; z( m# ? T1.宠物留言管理处输入:<img src=# onerror=alert(/sobb04/)>安全建议:等待官方补丁
+ H3 F1 p7 z( I/ {8 n1 M$ @$ F5 n, z2 N" p2 z2 r5 O# ~
|