漏洞版本:百度空间 漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS. 1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存. 2.在http://hi.baidu.com/ui/scripts/pet/pet.js中8 v2 N |7 W2 g8 m% Y' ~
3 e& W! a1 b4 ?7 S I& n0 A% i) h; \" v
-
8 m5 K& E' S$ }& |. }) k
+ j( B0 G- ]6 R. j( G0 @* W . T3 q) n2 W4 v! d) ]7 @: s$ ?
漏洞版本:百度空间) _! t0 e0 y' ]% T& y+ _
漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS.
' C& C' F2 X4 N9 x* n9 {2 v
) |4 M* H) f7 q& O3 O) p" N1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存.' B7 k# a. |% g2 B" o) C& b' Z2 p9 }
2.在http://hi.baidu.com/ui/scripts/pet/pet.js中
" a7 B* x/ m, \( f8 ?+ b
; W; X( J5 ?0 a- ]1 J将输出一段HTML:<p style="margin-top:5px"><strong>'+F[2]+"说:</strong>"+BdUtil.insertWBR(F[0], 4)+'</p>
0 ] R( L0 j$ g0 V. S其中BdUtil.insertWBR为* I( e* D- A8 |8 K" f1 v3 F- D! L: k7 \
function(text, step) {
, m8 U. g1 Z k- x2 d var textarea = textAreaCache || getContainer();* E9 t' c1 s% [8 Q* o
if (!textarea) {
0 |" X! U4 f( f return text;
8 H8 {! C+ S; w; W }& l+ W+ p7 {7 U0 [- m8 X
textarea.innerHTML = text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");9 \& E0 p/ L; p. ]$ h3 o+ D
var string = textarea.value;
, x# S \* U: G* y var step = step || 5, reg = new RegExp("(\\S{" + step + "})", "gi");1 W' a8 S1 E0 R: x; n& C# a. @
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;");
2 v! e5 D% p8 ^" g, U return result;
/ J. d" ~2 ?; ?) Y1 F0 a! H}4 b# r+ U7 J- F+ y- s. _7 F2 a; t
在首页中,textAreaCache 和 getContainer()均不存在,故!textarea为true,未经过滤直接return text.造成XSS.<* 参考
3 r. L8 B+ G" thttp://80vul.com/sobb/sobb-04.txt
% U9 z/ O+ A8 _+ c*>
3 N: G w2 @6 O$ w0 J/ v9 P测试方法 Sebug.net dis
5 J' o+ l4 Z- B3 s本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
4 g0 ^+ Y1 F" ~ I/ O+ T) w' ~1 B1.宠物留言管理处输入:<img src=# onerror=alert(/sobb04/)>安全建议:等待官方补丁
4 A- M" M+ c5 O, u
$ ]+ g, Q) A. j% B b% T |