漏洞文件:ftb.imagegallery.aspx
* v, k- i. ? q5 b; q" t0 O" p) }/ u3 f: R
漏洞一:目录遍历
% h9 }9 N( R3 `' kftb.imagegallery.aspx?frame=1&rif=images&cif=../
; a: S5 I* ?4 {5 w& c/ T& H* a不可以,过滤了/
& c: @& w: T5 V/ Y" nftb.imagegallery.aspx?frame=1&rif=images&cif=..\
" g! z0 s" l/ [& ]6 k1 P, H可以!!过滤\符号 嘿嘿,能干什么自己知道了呗。
' f- x5 G% t! H" Tftb.imagegallery.aspx?frame=1&rif=images&cif=..\..4 k& `& u1 c. n* M d3 g( O
漏洞二:上传漏洞
. ?3 j: J% W H0 q% d% h( W没做登陆验证可以直接访问上传木马 FTBv3-3-1 可以直接上传任意格式的文件 Freetextbox 1.6.3 及其他版本可以上传 格式为 1.asp;.jpg 文件 上传后木马地址为http://网站地址/images/1.asp;.jpg( N3 q O+ j6 D* { h
$ U6 D- U% g) v& X! B
6 y% x. X' H" p/ W! F/ ^漏洞修补方案:
! K4 t6 {' c- X% g; |
# ^7 S& H3 q7 M2 h3 w/ c添加代码加登陆验证- H- _" i0 x1 L9 @& B, A
private void Page_Load(object sender, System.EventArgs e) { string isframe = “” + Request["frame"]; Freetextbox上传图片是直接保留原文件名的,这个地方做个修改,上传文件使用时间串做文件名。5 {4 k0 S% P/ B# s2 M/ d& E
. u3 b# U7 G V1 c2 q修改方式如下:
: k! l) m9 f l) v8 l; }0 v( h2 ^1 j9 v# b1 y. u4 ?
找到 程序代码
) m/ b9 s# t d/ o( bUploadFileNameUploadFileName = UploadFileName.Substring(UploadFileName.LastIndexOf(“\\”)+1); 在其下面添加以下代码/ Q/ E/ C3 @3 a
//********************* UploadFileName = DateTime.Now.ToString() + UploadFileName.Remove(0, UploadFileName.LastIndexOf(“.”)); UploadFileName = UploadFileName.Replace(“:”, “”).Replace(“-”, “”).Replace(” “, “”); //by Yation.Team 2009/7/17 上传文件用时间重命名" j$ J: j. [' w- y; ?
以前已经有人公布过fb暴路径的方法 http*****.cn/helps/ftb.imagegallery.aspx?frame=1”在地址后面加上&rif=..&cif=..在访问 整个网站的目录就呈现在眼前了,下面还有上传删除等按钮… 修正方式如下: 找到 程序代码 if (cif != “” && rif != “”) {
& [8 t+ d0 P/ c( X3 o+ `, F, [' ~把RootImagesFolder.Value = rif;
+ N1 x* U. M0 b' C% b7 U/ s- F
( z- \8 B& r) r替换成
) c- s( O7 k* H8 g程序代码 //***************************** RootImagesFolder.Value = DefaultImageFolder; Array srtArray = cif.Split(‘\\’); string str = srtArray.GetValue(0).ToString(); if (str != DefaultImageFolder) { cif = DefaultImageFolder; } cif = cif.Replace(“..\\”, “”).Replace(“../”,”");
! x% g+ Y/ A; l9 R |