漏洞版本:百度空间 漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS. 1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存. 2.在http://hi.baidu.com/ui/scripts/pet/pet.js中# d8 `0 ?. ^/ P2 A
: W6 E4 Y% e1 _9 s$ d5 G( H
3 m7 X) D5 I2 N( d-
- b8 r+ {9 k9 h4 L
4 l) d& J6 w2 `! S( h2 i
# |( b) m* b) o( _, S# B3 v漏洞版本:百度空间" K' @% _/ R6 ~9 t! R8 {6 A6 `! f2 m a2 o
漏洞描述:百度空间的宠物插件对用户输入变量未经任何过滤便存储,并不经过滤输出,造成XSS.
8 Z0 J% y6 }6 | B0 f0 S' K1 H ]3 l7 E" h7 e& M; a
1.在http://hi.baidu.com/p__z/modify/sppet中,用户可以输入留言管理,提交后,未过滤直接储存.! a3 P8 Q4 p" B, r+ r
2.在http://hi.baidu.com/ui/scripts/pet/pet.js中8 w: G( M, K* y/ D+ X: q) r
/ H* H) ^9 p% k, V
将输出一段HTML:<p style="margin-top:5px"><strong>'+F[2]+"说:</strong>"+BdUtil.insertWBR(F[0], 4)+'</p>
# O% j- K9 }6 |' O其中BdUtil.insertWBR为0 l* A) v/ @( _ ^# w. {
function(text, step) {2 f/ F0 w4 [$ s X: j. U
var textarea = textAreaCache || getContainer();" z8 ~- ^, i+ e5 R0 P: \6 J
if (!textarea) {
3 m- ]3 B+ Y8 G9 a' `+ [. m return text;6 W& }7 q7 D7 w. o! f: M$ I
}
! u# a3 L% n6 A3 ?6 r: T; _ textarea.innerHTML = text.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");
9 F$ `. X$ \7 V6 V$ G var string = textarea.value;$ S5 W. v+ T/ \3 \+ _2 A
var step = step || 5, reg = new RegExp("(\\S{" + step + "})", "gi");8 g! A1 Y( `( U; E1 s% ~9 c' s* ?
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+ t8 X0 c! n3 e' n$ Z: e return result;
; x8 j. K& q4 f) e}
H Q" X. O8 Q$ J0 q在首页中,textAreaCache 和 getContainer()均不存在,故!textarea为true,未经过滤直接return text.造成XSS.<* 参考" S- L; p" i/ |- C9 R4 z2 O' u8 A
http://80vul.com/sobb/sobb-04.txt
) v5 @ W% ~9 y# T V9 P; {*>
, @0 c1 |) e% }: }5 W测试方法Sebug.net dis. i0 b- A: ^2 w O9 f
本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
h; b/ `& \3 i$ \* `% c1.宠物留言管理处输入:<img src=# onerror=alert(/sobb04/)>安全建议:等待官方补丁( z% O1 \8 c( [# w5 E6 f- C# k
( d5 u, G3 A, n |