漏洞文件:ftb.imagegallery.aspx
4 \) E; P7 v( \, R+ M. `
) x5 ^, K# Q }& r9 j% R漏洞一:目录遍历
& `3 y, ~5 S! t+ g" ]- Yftb.imagegallery.aspx?frame=1&rif=images&cif=../
) T& e6 W8 k9 F# Y2 x' ~" J不可以,过滤了/
0 u9 b% ?% S; l' ^: M1 \ftb.imagegallery.aspx?frame=1&rif=images&cif=..\
# ~4 V, k7 O+ B+ P9 Z6 c可以!!过滤\符号 嘿嘿,能干什么自己知道了呗。+ ^- \7 r7 E8 Y' [) g0 w( K. l7 ~
ftb.imagegallery.aspx?frame=1&rif=images&cif=..\..& i' @8 |! c( F# P/ Y, F
漏洞二:上传漏洞
' ?) r: `) R2 l1 T没做登陆验证可以直接访问上传木马 FTBv3-3-1 可以直接上传任意格式的文件 Freetextbox 1.6.3 及其他版本可以上传 格式为 1.asp;.jpg 文件 上传后木马地址为http://网站地址/images/1.asp;.jpg6 ]! ^8 V7 X% Z, R0 x% {
3 r" M1 f1 P% k+ ], ]
' F9 K! W" o: Q; K& o( t8 l漏洞修补方案:
" d7 w# n; L* V
7 O$ @ E% J9 s& y5 ?; G添加代码加登陆验证3 a+ v) U. K, Y
private void Page_Load(object sender, System.EventArgs e) { string isframe = “” + Request["frame"]; Freetextbox上传图片是直接保留原文件名的,这个地方做个修改,上传文件使用时间串做文件名。
* [: p1 ?# J& \/ A! r( O# k: Y* z4 y% I y3 W
修改方式如下:! I8 I' I: d8 Z
0 @) b* @ d/ I
找到 程序代码
2 R# \) k* E7 b5 E& |) ^UploadFileNameUploadFileName = UploadFileName.Substring(UploadFileName.LastIndexOf(“\\”)+1); 在其下面添加以下代码
8 Z C4 S. u/ x9 _2 P//********************* UploadFileName = DateTime.Now.ToString() + UploadFileName.Remove(0, UploadFileName.LastIndexOf(“.”)); UploadFileName = UploadFileName.Replace(“:”, “”).Replace(“-”, “”).Replace(” “, “”); //by Yation.Team 2009/7/17 上传文件用时间重命名( N3 Z6 g. b6 ]6 t
以前已经有人公布过fb暴路径的方法 http*****.cn/helps/ftb.imagegallery.aspx?frame=1”在地址后面加上&rif=..&cif=..在访问 整个网站的目录就呈现在眼前了,下面还有上传删除等按钮… 修正方式如下: 找到 程序代码 if (cif != “” && rif != “”) {' O1 j+ V( }# q8 Y, z, C8 @
把RootImagesFolder.Value = rif;) ^: Y( P+ p' U: k _+ t% U1 I) }
- O1 g- [/ P) a/ q/ P8 \3 i
替换成4 O4 v1 }/ N+ V! ^# S( @5 e
程序代码 //***************************** RootImagesFolder.Value = DefaultImageFolder; Array srtArray = cif.Split(‘\\’); string str = srtArray.GetValue(0).ToString(); if (str != DefaultImageFolder) { cif = DefaultImageFolder; } cif = cif.Replace(“..\\”, “”).Replace(“../”,”");
% ~ G/ }- |+ k' }& i% s8 r& p |