漏洞文件:ftb.imagegallery.aspx
# u' o; v8 d; c+ [7 ~+ |- f9 ?8 g& P0 x" G5 n5 K2 t
漏洞一:目录遍历9 K5 c' W: x. @ F7 u, b7 q, z; k
ftb.imagegallery.aspx?frame=1&rif=images&cif=../& V, d- l0 {7 p0 I
不可以,过滤了/2 a5 J( L% @8 U
ftb.imagegallery.aspx?frame=1&rif=images&cif=..\6 V. n) j/ V7 w$ q% J" U
可以!!过滤\符号 嘿嘿,能干什么自己知道了呗。7 c" M2 R9 g5 H3 X* J5 _* m, {% D
ftb.imagegallery.aspx?frame=1&rif=images&cif=..\..4 F- A: ~, z- i3 ^0 O8 @
漏洞二:上传漏洞
7 n& N/ Y6 ]5 f6 ]7 f/ Y0 R! L- [6 V1 C没做登陆验证可以直接访问上传木马 FTBv3-3-1 可以直接上传任意格式的文件 Freetextbox 1.6.3 及其他版本可以上传 格式为 1.asp;.jpg 文件 上传后木马地址为http://网站地址/images/1.asp;.jpg M8 @6 r3 D5 z4 V* N2 B% F
% ^+ O/ c Y/ J2 `
- \% y, G! ^& Y9 a漏洞修补方案:) y' h( O6 [! _7 J! U9 M
: Y/ k2 ]1 _ j T
添加代码加登陆验证
" A- O- J. D( X0 h4 y0 {0 U6 V! pprivate void Page_Load(object sender, System.EventArgs e) { string isframe = “” + Request["frame"]; Freetextbox上传图片是直接保留原文件名的,这个地方做个修改,上传文件使用时间串做文件名。9 f( |5 v. f, K" U/ }+ k
! @: u8 Z4 m9 |% |修改方式如下:; R" C; f$ p* ~5 B, }
+ [5 }+ {+ Y1 k
找到 程序代码
& }6 ]1 s8 u/ y5 j8 c6 uUploadFileNameUploadFileName = UploadFileName.Substring(UploadFileName.LastIndexOf(“\\”)+1); 在其下面添加以下代码& E- v/ J$ O- [0 e, G
//********************* UploadFileName = DateTime.Now.ToString() + UploadFileName.Remove(0, UploadFileName.LastIndexOf(“.”)); UploadFileName = UploadFileName.Replace(“:”, “”).Replace(“-”, “”).Replace(” “, “”); //by Yation.Team 2009/7/17 上传文件用时间重命名
: q) Z7 C: Q0 _$ p6 x' }& D以前已经有人公布过fb暴路径的方法 http*****.cn/helps/ftb.imagegallery.aspx?frame=1”在地址后面加上&rif=..&cif=..在访问 整个网站的目录就呈现在眼前了,下面还有上传删除等按钮… 修正方式如下: 找到 程序代码 if (cif != “” && rif != “”) {
) h( p3 |; x( h- n: E把RootImagesFolder.Value = rif;+ b1 b8 c2 S1 g5 a0 m2 ], Y
% P) S6 w9 s- W( D3 `9 j替换成# B" k- r5 w& n6 G' J
程序代码 //***************************** RootImagesFolder.Value = DefaultImageFolder; Array srtArray = cif.Split(‘\\’); string str = srtArray.GetValue(0).ToString(); if (str != DefaultImageFolder) { cif = DefaultImageFolder; } cif = cif.Replace(“..\\”, “”).Replace(“../”,”");
' p2 N9 s+ y0 q6 f' ~: B0 ~ |