找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2372|回复: 0
打印 上一主题 下一主题

Treetextbox编辑器遍历目录+上传漏洞

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-18 18:22:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  漏洞文件:ftb.imagegallery.aspx
1 Y8 f, y: N7 M1 a" E( \: C% U+ P* h5 o! J' k; P3 k) R0 x
漏洞一:目录遍历
; n+ D: N4 y4 a; o% j9 `ftb.imagegallery.aspx?frame=1&rif=images&cif=../# C' B4 r2 p8 k& P! n
不可以,过滤了/+ t4 X! h- p( F
ftb.imagegallery.aspx?frame=1&rif=images&cif=..\
  q; ~% l5 t0 l5 B, c* i/ u4 W可以!!过滤\符号 嘿嘿,能干什么自己知道了呗。, R& e6 `& r# y0 P5 ~
ftb.imagegallery.aspx?frame=1&rif=images&cif=..\..8 H9 w6 f  T% d
漏洞二:上传漏洞7 w' \9 D" g; F% R% }3 t
没做登陆验证可以直接访问上传木马 FTBv3-3-1 可以直接上传任意格式的文件 Freetextbox 1.6.3 及其他版本可以上传 格式为 1.asp;.jpg 文件 上传后木马地址为http://网站地址/images/1.asp;.jpg* P9 u0 L% D  L* @

/ T1 k# C" p4 @4 S$ R! V' L6 J
  ~# [) Q1 Q# {% s# Y: i. u漏洞修补方案:
% \! S4 k) [! A& d* ~  g
2 i8 G* j. [# q添加代码加登陆验证
+ s; H6 `9 L" W- m2 rprivate void Page_Load(object sender, System.EventArgs e) {    string isframe = “” + Request["frame"];   Freetextbox上传图片是直接保留原文件名的,这个地方做个修改,上传文件使用时间串做文件名。
( x2 d# ~& C5 m1 ^5 |( k* V, k8 N' G7 n" n( n+ ~
修改方式如下:
1 G8 t/ W1 E* {" ?6 {
- T, {; q5 z+ N9 `+ i找到 程序代码
% n) q' j+ C5 f( O. mUploadFileNameUploadFileName = UploadFileName.Substring(UploadFileName.LastIndexOf(“\\”)+1);    在其下面添加以下代码
( p6 C. C, b# ~; a9 P3 d9 `//********************* UploadFileName = DateTime.Now.ToString() + UploadFileName.Remove(0, UploadFileName.LastIndexOf(“.”)); UploadFileName = UploadFileName.Replace(“:”, “”).Replace(“-”, “”).Replace(” “, “”); //by Yation.Team 2009/7/17 上传文件用时间重命名& E# t5 x; ~9 x: g, P; v
以前已经有人公布过fb暴路径的方法 http*****.cn/helps/ftb.imagegallery.aspx?frame=1”在地址后面加上&rif=..&cif=..在访问 整个网站的目录就呈现在眼前了,下面还有上传删除等按钮… 修正方式如下: 找到 程序代码 if (cif != “” && rif != “”) {$ `! `0 U- C3 t+ T7 n
把RootImagesFolder.Value = rif;
; p+ f9 ^# j  l: u! A4 U
! _7 c9 p8 G6 ~) g- m9 _' l9 J替换成& v' H* h4 y& ]. O1 Z- _' o# ?5 H
程序代码 //***************************** RootImagesFolder.Value = DefaultImageFolder; Array srtArray = cif.Split(‘\\’); string str = srtArray.GetValue(0).ToString(); if (str != DefaultImageFolder) { cif = DefaultImageFolder; } cif = cif.Replace(“..\\”, “”).Replace(“../”,”");8 ~4 _8 I0 n4 R2 R6 i
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表